== Synthetic Turbulence Generator Parameters == [[TracNav(doc/app/partoc|nocollapse)]] Since revision r2259, a synthetic turbulence generation method is available in PALM. The synthetic turbulence generator (STG) follows the method proposed by [wiki:/doc/tec/bc#xie2008 Xie and Castro (2008)] with a modification by [wiki:/doc/tec/bc#kim2013 Kim et al. (2013)]. Please see the [/wiki/doc/tec/bc#SyntheticTurbulenceGenerator documentation] for a detailed description of the STG. The STG requires information about the Reynolds stresses as well as turbulent length and time scales. These can be either provided in an ASCII file (please see [/wiki/doc/tec/bc#SyntheticTurbulenceGenerator documentation]), or if not available as e.g. in case of mesoscale offline nesting these information will be parametrized (please see [/wiki/doc/tec/bc#SyntheticTurbulenceGenerator documentation]). For a detailed description of the parametrized synthetic turbulence we refer to ''< replace with doi when available > ''. All parts of the STG are modularized in module [/browser/palm/trunk/SOURCE/synthetic_turbulence_generator_mod.f90 synthetic_turbulence_generator_mod]. In this context, a new Fortran NAMELIST {{{stg_par}}} was added, containing all related steering parameters. To use the STG, simply add the {{{stg_par}}} namelist to the parameter file of the run. The STG requires [../initialization_parameters#initializing_actions initializing_actions] = 'inifor', 'set_constant_profiles', or 'read_restart_data'. In case of [../initialization_parameters#initializing_actions initializing_actions] = 'set_constant_profiles' or 'read_restart_data', non-cyclic boundary conditions along x-direction ([../initialization_parameters#bc_lr bc_lr]='dirichlet/radiation') and cyclic boundary conditions along y-direction ([../initialization_parameters#bc_ns bc_ns]='cyclic') have to be used. \\ '''NAMELIST group name: {{{stg_par}}}''' \\\\ ||='''Parameter Name''' =||='''[../fortrantypes FORTRAN Type]''' =||='''Default Value''' =||='''Explanation''' =|| |---------------- {{{#!td style="vertical-align:top" [=#compute_velocity_seeds_local '''compute_velocity_seeds_local'''] }}} {{{#!td style="vertical-align:top" L }}} {{{#!td style="vertical-align:top" .F. }}} {{{#!td Flag to control the computation of velocity seeds that are the basis of the imposed disturbances. If .FALSE., the computation of the seeds at the boundary is distributed to all processes along the respective 1D communicator. Subsequently, seeds are gathered on the respective boundary process. This option is especially useful for large length scales where the computational effort can become quite huge (it scales with the turbulent length scales), so that gain by parallelization exceeds the costs by the subsequent communication. If .TRUE., velocity seeds are computed only locally and no communication is necessary. This performs better when the turbulent length scales are small and thus the loops are smaller. }}} |---------------- {{{#!td style="vertical-align:top" [=#dt_stg_adjust '''dt_stg_adjust'''] }}} {{{#!td style="vertical-align:top" R }}} {{{#!td style="vertical-align:top" 1800.0 }}} {{{#!td Time interval (in seconds) to adjust the turbulence statistics, i.e. the Reynolds-stress tensor, which define the amplitude and correlation of imposed correlation. Please note, this parameter becomes only effective if turbulence statistics are parametrized, i.e. if they are not read from the ASCII input file. Further, dt_stg_adjust is only relevant in case of a daily cycle, where the strength of turbulence and boundary-layer depth changes in time. }}} |---------------- {{{#!td style="vertical-align:top" [=#dt_stg_call '''dt_stg_call'''] }}} {{{#!td style="vertical-align:top" R }}} {{{#!td style="vertical-align:top" 0.0 }}} {{{#!td Time interval to call the synthetic turbulence generator. With this parameter it is possible to skip calling the turbulence generator, in order to save computational resources. In the default the turbulence generator is called every timestep. }}}