forked from chfeder/turbulence_generator
-
Notifications
You must be signed in to change notification settings - Fork 0
/
TurbGen.par
33 lines (33 loc) · 3.63 KB
/
TurbGen.par
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# ********************************************************************************
# *** Input parameter file for controlling turbulence driving ***
# *** Please see Federrath et al. (2010, A&A 512, A81) for details and cite :) ***
# ********************************************************************************
ndim = 3 # N-dimensional turbulence driving (1 or 2 or 3).
# Note that ndim = 1.5 or 2.5 will create 2 or 3 vector field components, respectively.
L = 1.0 # Length of simulation domain (box) in [x[y[z]] (can be comma-separated list to set each component).
velocity = 1.0 # Target turbulent velocity dispersion.
# The following parameters (ampl_factor) is used to adjust the driving amplitude in [x[y[z]],
# to approach the desired target velocity dispersion. Note that it scales as velocity/velocity_measured,
# e.g., given a target velocity dispersion of 'velocity' and a measured velocity dispersion of 'velocity_measured',
# scale the current value of ampl_factor by velocity/velocity_measured, such that
# ampl_factor(new) = ampl_factor(previous) * velocity / velocity_measured. This will need adjustment, because
# different codes and numerical resolutions/schemes will result in somewhat different dissipation.
# Further, if the driving range and/or solenoidal weight (see below) are changed, these parameters will also need
# to be adjusted, so the target turbulent velocity dispersion is reached in x[y[z]].
ampl_factor = 1.0 # Adjust [x[y[z]] amplitude (can be comma-separated list to set each component).
ampl_auto_adjust = 0 # Automatic amplitude adjustment switch (0: off, 1: on).
k_driv = 2.0 # Characteristic driving scale in units of 2pi / L[x].
# L[x], k_driv, and velocity are used to set the Ornstein-Uhlenbeck auto-correlation time.
k_min = 1.0 # Minimum driving wavenumber in units of 2pi / L[x].
k_max = 3.0 # Maximum driving wavenumber in units of 2pi / L[x].
# Note that while this is set based on L[x] only, the driving is still going to be isotropic,
# even if L[x] != L[y] != L[z], because the actual modes are set based on L[x], L[y], L[z] during initialisation.
sol_weight = 0.5 # 1.0: solenoidal driving, 0.0: compressive driving, 0.5: natural mixture.
spect_form = 1 # Spectral form of the driving amplitude. 0: band/rectangle/constant, 1: paraboloid, 2: power law.
power_law_exp = -2.0 # If spect_form = 2, this sets the spectral power-law exponent (e.g., -5/3: Kolmogorov; -2: Burgers)
angles_exp = 1.0 # If spect_form = 2, this sets the number of modes (angles) in k-shell surface,
# such that it increases as k^angles_exp.
# For full sampling, angles_exp = 2.0; for healpix-type sampling, angles_exp = 0.0.
random_seed = 140281 # Random number seed for driving sequence.
nsteps_per_t_turb = 10 # Number of turbulence driving pattern updates per turnover time.
# ***************************************************************************************************