src/DiffEq/Beta/MixNumberFractionBeta.hpp file

System of mix number-fraction beta SDEs.


This file implements the time integration of a system of stochastic differential equations (SDEs) with linear drift and quadratic diagonal diffusion, whose invariant is the joint beta distribution. There are two differences compared to the plain beta SDE (see DiffEq/Beta.h):

  • First, the parameters, b, and kappa are specified via functions that constrain the beta SDE to be consistent with the turbulent mixing process. In particular, the SDE is made consistent with the no-mix and fully mixed limits. See, e.g., MixNumberFractionBetaCoeffConst::update().
  • Second, there two additional random variables computed, the same as also computed by the number-fraction beta equation, see also DiffEq/NumberFractionBeta.h.

In a nutshell, the equation integrated governs a set of scalars, $0\!\le\!X_\alpha$ , $\alpha\!=\!1,\dots,N$ , as

\[ \mathrm{d}X_\alpha(t) = \frac{b_\alpha}{2}\left(S_\alpha - X_\alpha\right) \mathrm{d}t + \sqrt{\kappa_\alpha X_\alpha(1-X_\alpha)} \mathrm{d}W_\alpha(t), \qquad \alpha=1,\dots,N \]
\[ \begin{split} \mathrm{d}X_\alpha(t) = \frac{b_\alpha}{2}\left(S_\alpha - X_\alpha\right) \mathrm{d}t + \sqrt{\kappa_\alpha X_\alpha(1-X_\alpha)} \mathrm{d}W_\alpha(t), \\ \alpha=1,\dots,N \end{split} \]

with parameter vectors $b_\alpha = \Theta b'_\alpha > 0$ , $ \newcommand{\irv}[1]{\langle{#1^2}\rangle} \kappa_\alpha = \kappa' \irv{x} > 0$ , and $0 < S_\alpha < 1$ . This is similar to DiffEq/Beta.h, but the parameters, $b$ and $\kappa$ constrained. Here $ \newcommand{\irv}[1]{\langle{#1^2}\rangle} \newcommand{\irmean}[1]{{\langle{#1}\rangle}} \Theta = 1 - \irv{x} / [ \irmean{X} (1-\irmean{X}) ]$ . The fluctuation about the mean, $ \newcommand{\irmean}[1]{{\langle{#1}\rangle}} \irmean{X} $ , is defined as usual: $ \newcommand{\irmean}[1]{{\langle{#1}\rangle}} x = X - \irmean{X} $ , and $b'$ and $ \kappa'$ are user-specified constants. Also, $\mathrm{d}W_\alpha(t)$ is an isotropic vector-valued Wiener process with independent increments. The invariant distribution is the joint beta distribution. This system of SDEs consists of N independent equations. For more on the beta SDE, see

Similar to the number-fraction beta SDE (DiffEq/NumberFractionBeta.h), in addition to integrating the above SDE, there are two additional functions of $ X_\alpha $ are computed as

\[ \begin{aligned} \rho(X_\alpha) & = \rho_{2\alpha} ( 1 - r'_\alpha X_\alpha ) \\ V(X_\alpha) & = \frac{1}{ \rho_{2\alpha} ( 1 - r'_\alpha X_\alpha ) } \end{aligned} \]

These equations compute the instantaneous mixture density, $ \rho $ , and instantaneous specific volume, $ V_\alpha $ , for equation $ \alpha $ in the system. These quantities are used in binary mixing of variable-density turbulence between two fluids with constant densities, $ \rho_1, $ and $ \rho_2 $ . The additional parameters, $ \rho_2 $ and $ r' $ are user input parameters and kept constant during integration. Since we compute the above variables, $\rho,$ and $V$ , and call them mixture density and specific volume, respectively, $X$ , governed by the beta SDE is a number (or mole) fraction.

All of this is unpublished, but will be linked in here once published.


namespace walker
Walker declarations and definitions.


template<class Init, class Coefficients>
class walker::MixNumberFractionBeta
MixNumberFractionBeta SDE used polymorphically with DiffEq.