Skip to content

Turbulence Block

The Turbulence Block configures how turbulent fluctuations are initialized and generated in the simulation. The turbulence parameters provide flexible, targeted control over the turbulence characteristics introduced into the flow.

Warning

This block is optional.


Flags Overview

Note

All flags and their description are included in the table below. A detailed description of which values are possible for each input flag follows.

Flag Required Description
INIT_TURBU No boolean variable, determine whether to enforce synthetic turbulence at the initial step.
TURBU_METHOD No type of method for generating turbulence.
SPECTRUM_ANALY_TYPE No type of method for analytical initial spectrum.
TURBU_FORCING No boolean variable, which is .true. in case of forcing statically stationary turbulence, otherwise the turbulence is decaying with time.
FORCING_METHOD No type of method for turbulence forcing.
UPRIME No nonnegative real variable, define the fluctuation velocity [m/s].
EPS_KARMAN No real positive parameter, define dissipation rate of turbulence eddy (only work when SPECTRUM_ANALY_TYPE=1).
IFFT_LE No real positive parameter, define the most energetic length scale (order of domain length).
IFFT_LD No real positive parameter, define length of dissipation scales (order of Kolmogorov length scale).
FTI No boolean variable; .true. activates the option of generating a frozen turbulent injection field to prevent turbulence decaying.
FTI_PLANE No direction of the field injection.
FTI_DOMAIN No real positive variable, which represents the scale factor (fraction) of the main computational domain.
FTI_GENERATION No boolean variable; .true. means saving a frozen turbulence field to the disk in order to use it during the injection steps.
FTI_DIRECT No boolean variable; .true. means saving the frozen turbulence field to the memory without writing it to the disk. Note: the turbulence field is also saved to the disk when fti_plane=1.
FTI_FILE No string variable, represents the name of the saved file containing the frozen turbulence flow in case of FTI_GENERATION=.true..
FILT_FLUCT No boolean variable; .true. means filtering the turbulent velocity field at the boundaries.
FILT_WIDTH No real positive variable, represents the width of the boundary filter. It works only in case of FILT_FLUCT = .true., [meter].
DELTA_T No positive integer variable, represents the time step for the turbulence generationmethod of random noise diffusion, TURBU_METHOD=3, [second].
FOU_LIM_FLUCT No real positive variable, determines the Fourier number limits for TURBU_METHOD=3.
N_ITERATION No integer positive variable, determines the number of iteration step for TURBU_METHOD=3.
NMODE No integer positive variable, determines the number of the modes of Kraichnan technique, for TURBU_METHOD=4.
LE No real positive variable, determines the most energetic length scale (order of domain length) for Kraichnan technique, TURBU_METHOD=4, [meter]. In this case, the integral length scale L_INTEG is equal to 0.4LE.

Flags Details

TURBU_METHOD
  • Type: integer
  • Default: 1
  • Description: There are four turbulence generating methods implemented: 1 represents Inverse Fast Fourier Transform (IFFT); 2 represents digital filtering method1; 3 represents random noise diffusion2; 4 represents Kraichnan technique3. IFFT method is the most recommended one.

SPECTRUM_ANALY_TYPE
  • Type: integer
  • Default: 1
  • Description: It defines which analytical initial spectrum is used: 1 denotes to Von Karman spectrum with Pao correction (VKP); 2 is corresponding to Passot-Pouquet analytical spectrum.

FORCING_METHOD
  • Type: integer
  • Default: 1
  • Description: It defines which turbulence forcing is used: 1 denotes to control-based linear forcing approach in physical space proposed by Bassenne et al.4; 2 is a modified bandwidth-filtered forcing method based on 3D gaussian filter kernel5; 3 represents a modified bandwidth-filtered forcing method based on 3D box filter kernel. If the domain is square, FORCING_METHOD=1 is recommended; otherwise, FORCING_METHOD=2 is recommended for rectangular domains. Note: FORCING_METHOD=3 also works and is simple, but it does not appear to be as accurate as FORCING_METHOD=2.

FTI_PLANE
  • Type: integer
  • Default:
  • Description: It represents the direction of the field injection: 1 is for injection the fluctuation in yz direction, 2 is for injection in xz, and 3 is for injection in yz.

Example:

&NML_TURBULENCE
    INIT_TURBU=.false.,
    TURBU_METHOD=1,
    SPECTRUM_ANALY_TYPE=1,
    TURBU_FORCING=.FALSE.,
    FORCING_METHOD=2,                
    UPRIME=3.132d-1,
    EPS_KARMAN=1.d-2,
    IFFT_LE=4.25D-3,
    IFFT_LD=4.25D-4,
    FTI=.FALSE.,
    FTI_PLANE=2,
    FTI_DOMAIN=1,
    FTI_GENERATION=.FALSE.,
    FTI_DIRECT=.true.,
    FTI_FILE='0',
    FILT_FLUCT=.FALSE.,
    FILT_WIDTH=4.D-3,
    DELTA_T=1.D-8,
    FOU_LIM_FLUCT=0.0001,
    N_ITERATION=50,
    NMODE=1000,
    LE=2.6D-5
\

  1. M. Klein, A. Sadiki, and J. Janicka. A digital filter based generation of inflow data for spatially developing direct numerical or large eddy simulations. Journal of Computational Physics, 186(2):652–665, 2003. 

  2. Andreas Kempf, Markus Klein, and Johannes Janicka. Efficient Generation of Initial- and Inflow-Conditions for Transient Turbulent Flows in Arbitrary Geometries. Flow Turbulence Combust, 74(1):67–84, 2005. 

  3. Robert H. Kraichnan. Diffusion by a Random Velocity Field. Physics of Fluids, 13(1):22–31, 1970. 

  4. Markus Klein, Nilanjan Chakraborty, and Sebastian Ketterl. A Comparison of Strategies for Direct Numerical Simulation of Turbulence Chemistry Interaction in Generic Planar Turbulent Premixed Flames. Flow Turbulence Combust, 99(3-4):955–971, 2017. 

  5. Maxime Bassenne, Javier Urzay, George I. Park, and Parviz Moin. Constant-energetics physical-space forcing methods for improved convergence to homogeneous-isotropic turbulence with application to particle-laden flows. Physics of Fluids, 28(3):035114, 2016.