SFS Scheme

FLOWVPM.SubFilterScaleType
Implementation of calculations associated with subfilter-scale turbulence

model.

NOTE: Any implementation is expected to evaluate UJ and SFS terms of the particles which will be used by the time integration routine so make sure they are stored in the memory (see implementation of ConstantSFS as an example).

NOTE2: Any control strategy is implemented as a function that returns true whenever the SFS model needs to be clipped. Subsequently, the model coefficient of the targeted particle will be turned to zero.

source
Missing docstring.

Missing docstring for FLOWUnsteady.vpm.NoSFS. Check Documenter's build log for details.

Missing docstring.

Missing docstring for FLOWUnsteady.vpm.ConstantSFS. Check Documenter's build log for details.

FLOWVPM.DynamicSFSType
Subfilter-scale scheme with an associated dynamic procedure for calculating

the model coefficient.

source
FLOWVPM.clipping_backscatterFunction
Backscatter control strategy of SFS enstrophy production by clipping of the

SFS model. See 20210901 notebook for derivation.

source
FLOWVPM.control_directionalFunction
Directional control strategy of SFS enstrophy production forcing the model

to affect only the vortex strength magnitude and not the vortex orientation. See 20210901 notebook for derivation.

source
FLOWVPM.control_magnitudeFunction
Magnitude control strategy of SFS enstrophy production limiting the

magnitude of the forward scattering (diffussion) of the model. See 20210901 notebook for derivation.

source
FLOWVPM.dynamicprocedure_pseudo3levelFunction
Dynamic procedure for SFS model coefficient based on enstrophy and

derivative balance between resolved and unresolved domain, numerically implemented through pseudo-three filtering levels. See 20210901 notebook for derivation.

NOTES

  • rlxf = Δ𝑡/𝑇 ≤ 1 is the relaxation factor of the Lagrangian average, where Δ𝑡

is the time step of the simulation, and 𝑇 is the time length of the ensemble average.

  • The scaling constant becomes 1 for $\alpha_\tau = 1$ (but notice that the

derivative approximation becomes zero at that point). Hence, the pseudo-three-level procedure converges to the two-level procedure for $\alpha_\tau \rightarrow 1$**.

  • The scaling constant tends to zero when $\alpha_\tau \rightarrow 2/3$. Hence,

it can be used to arbitrarely attenuate the SFS contributions with $\alpha_\tau \rightarrow 2/3$, or let it trully be a self-regulated dynamic procedure with $\alpha_\tau \rightarrow 1$.

  • \[\alpha_\tau\]

    should not be made smaller than $2/3$ as the constant becomes

negative beyond that point. This strains the assumption that $\sigma_\tau$ is small enough to approximate the singular velocity field as $\mathbf{u} \approx \mathbf{\tilde{u}}$, which now is only true if $\sigma$ is small enough.

𝛼𝜏=0.999 ⇒ 3𝛼𝜏−2=0.997 𝛼𝜏=0.990 ⇒ 3𝛼𝜏−2=0.970 𝛼𝜏=0.900 ⇒ 3𝛼𝜏−2=0.700 𝛼𝜏=0.833 ⇒ 3𝛼𝜏−2=0.499 𝛼𝜏=0.750 ⇒ 3𝛼𝜏−2=0.250 𝛼𝜏=0.700 ⇒ 3𝛼𝜏−2=0.100 𝛼𝜏=0.675 ⇒ 3𝛼𝜏−2=0.025 𝛼𝜏=0.670 ⇒ 3𝛼𝜏−2=0.010 𝛼𝜏=0.667 ⇒ 3𝛼𝜏−2=0.001 𝛼𝜏=0.6667⇒ 3𝛼𝜏−2=0.0001

source
FLOWVPM.dynamicprocedure_sensorfunctionFunction
Dynamic procedure for SFS model coefficient based on sensor function of

enstrophy between resolved and unresolved domain, numerically implemented through a test filter. See 20210901 notebook for derivation.

source
FLOWVPM.Estr_directFunction
Model of vortex-stretching SFS contributions evaluated with direct

particle-to-particle interactions. See 20210901 notebook for derivation.

source
FLOWVPM.Estr_fmmFunction
Model of vortex-stretching SFS contributions evaluated with fast multipole

method. See 20210901 notebook for derivation.

source
Missing docstring.

Missing docstring for FLOWUnsteady.vpm.Estr_direct. Check Documenter's build log for details.

Missing docstring.

Missing docstring for FLOWUnsteady.vpm.Estr_direct. Check Documenter's build log for details.