SFS Scheme

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

model.

The model is expected to be called in two stages surrounding the calculation of the induced velocity, as:

this_sfs_model(pfield::ParticleField, beforeUJ::BeforeUJ)

pfield.UJ(pfield; sfs=true, reset=true, reset_sfs=true)

this_sfs_model(pfield::ParticleField, afterUJ::AfterUJ)

(See implementation of ConstantSFS as an example.)

NOTE1: The UJ_fmm requires <:SubFilterScale objects to contain a sfs.model field, which is a function that computes the SFS contribution to the stretching term.

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
FLOWVPM.noSFSConstant
`noSFS = NoSFS{FLOAT_TYPE}()`

Alias for the no subfilter-scale model.

source
FLOWVPM.SFS_Cs_nobackscatterConstant
`SFS_Cs_nobackscatter = ConstantSFS(Estr_fmm; Cs=1.0, clippings=(clipping_backscatter,))`

Alias for the Constant SFS model with no backscatter.

source
FLOWVPM.SFS_Cd_twolevel_nobackscatterConstant
`SFS_Cd_twolevel_nobackscatter = DynamicSFS(Estr_fmm, pseudo3level_beforeUJ, pseudo3level_positive_afterUJ; alpha=0.999, clippings=(clipping_backscatter,))`

Alias for the Dynamic SFS model with two levels and no backscatter. This is the recommended SFS model for high fidelity modeling.

source
FLOWVPM.SFS_Cd_threelevel_nobackscatterConstant
`SFS_Cd_threelevel_nobackscatter = DynamicSFS(Estr_fmm, pseudo3level_beforeUJ, pseudo3level_positive_afterUJ; alpha=0.667, clippings=(clipping_backscatter,))`

Alias for the Dynamic SFS model with three levels and no backscatter. This is similar to the two level version but uses a lower value of alpha (0.667).

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_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