Stochastic Forcing

There is an option to apply a stochastic force field.

See Nyx/Exec/DrivenTurbulence for an example; note that

nyx.do_forcing = 1

must be set in the inputs file.

The external forcing term in the momentum equation ([eq:momt]) is then given by

\[{\bf S}_{\rho \Ub} = \rho_b \mathbf{f}\]

where the acceleration field \(\mathbf{f}(\mathbf{x},t)\) is computed as inverse Fourier transform of the forcing spectrum \(\widehat{\mathbf{f}}(\mathbf{k},t\)). The time evolution of each wave mode is given by an Ornstein-Uhlenbeck process (see :raw-latex:`\cite{SchmHille06,Schmidt14}` for details). Since the real space forcing acts on large scales \(L\), non-zero modes are confined to a narrow window of small wave numbers with a prescribed shape (the forcing profile). The resulting flow reaches a statistically stationary and isotropic state with a root-mean-square velocity of the order \(V=L/T\), where the integral time scale \(T\) (also known as large-eddy turn-over time) is usually set equal to the autocorrelation time of the forcing. It is possible to vary the force field from solenoidal (divergence-free) if the weight parameter \(\zeta=1\) to dilational (rotation-free) if \(\zeta=0\).

To maintain a nearly constant root-mean-square Mach number, a simple model for radiative heating and cooling around a given equilibrium temperature \(T_0\) is applied in the energy equation ([eq:energy]):

\[S_{\rho E} = S_{\rho e} + \Ub \cdot {\bf S}_{\rho \Ub} = -\frac{\alpha k_{\rm B}(T-T_0)}{\mu m_{\rm H}(\gamma-1)} + \rho_b\Ub\cdot\mathbf{f}\]

The parameters \(T_0\) and \(\alpha\) correspond to temp0 and alpha, respectively, in the probin file (along with rho0 for the mean density, which is unity by default). While the gas is adiabatic for \(\alpha=0\), it becomes nearly isothermal if the cooling time scale given by \(1/\alpha\) is chosen sufficiently short compared to \(T\). For performance reasons, a constant composition (corresponding to constant molecular weight \(\mu\)) is assumed.

List of Parameters

Parameter Definition Acceptable Values Default
forcing.seed seed of the random number generator Integer \(>0\) 27011974
forcing.profile shape of forcing spectrum 1 (plane), 2 (band), 3 (parabolic) 3
forcing.alpha ratio of domain size \(X\) to integral length \(L=X/\alpha\) Integer \(>0\) 2 2 2
forcing.band_width band width of the forcing spectrum relative to alpha Real \(\ge 0\) and \(\le 1\) 1.0 1.0 1.0
forcing.intgr_vel characteristic velocity \(V\) Real \(> 0\) must be set
forcing.auto_corrl autocorrelation time in units of \(T=L/V\) Real \(> 0\) 1.0 1.0 1.0
forcing.soln_weight weight \(\zeta\) of solenoidal relative to dilatational modes Real \(\ge 0\) and \(\le 1\) 1.0

Triples for forcing.alpha, forcing.band_width, forcing.intgr_vel, and forcing.auto_corrl correspond to the three spatial dimensions.