DeardorffDiffStress< BasicTurbulenceModel > Class Template Reference

Differential SGS Stress Equation Model for incompressible and compressible flows. More...

Inheritance diagram for DeardorffDiffStress< BasicTurbulenceModel >:
[legend]
Collaboration diagram for DeardorffDiffStress< BasicTurbulenceModel >:
[legend]

Public Types

typedef BasicTurbulenceModel::alphaField alphaField
 
typedef BasicTurbulenceModel::rhoField rhoField
 
typedef BasicTurbulenceModel::transportModel transportModel
 
- Public Types inherited from ReynoldsStress< LESModel< BasicTurbulenceModel > >
typedef BasicTurbulenceModel::alphaField alphaField
 
typedef BasicTurbulenceModel::rhoField rhoField
 
typedef BasicTurbulenceModel::transportModel transportModel
 
- Public Types inherited from LESModel< BasicTurbulenceModel >
typedef BasicTurbulenceModel::alphaField alphaField
 
typedef BasicTurbulenceModel::rhoField rhoField
 
typedef BasicTurbulenceModel::transportModel transportModel
 

Public Member Functions

 TypeName ("DeardorffDiffStress")
 Runtime type information. More...
 
 DeardorffDiffStress (const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName=turbulenceModel::propertiesName, const word &type=typeName)
 Constructor from components. More...
 
virtual ~DeardorffDiffStress ()=default
 Destructor. More...
 
virtual bool read ()
 Read model coefficients if they have changed. More...
 
virtual void correct ()
 Correct sub-grid stress, eddy-Viscosity and related properties. More...
 
- Public Member Functions inherited from ReynoldsStress< LESModel< BasicTurbulenceModel > >
Foam::tmp< Foam::fvVectorMatrixDivDevRhoReff (const RhoFieldType &rho, volVectorField &U) const
 
 ReynoldsStress (const word &modelName, const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName)
 Construct from components. More...
 
virtual ~ReynoldsStress ()=default
 Destructor. More...
 
virtual bool read ()=0
 Re-read model coefficients if they have changed. More...
 
virtual tmp< volScalarFieldnut () const
 Return the turbulence viscosity. More...
 
virtual tmp< scalarFieldnut (const label patchi) const
 Return the turbulence viscosity on patch. More...
 
virtual tmp< volScalarFieldk () const
 Return the turbulence kinetic energy. More...
 
virtual tmp< volSymmTensorFieldR () const
 Return the Reynolds stress tensor. More...
 
virtual tmp< volSymmTensorFielddevRhoReff () const
 Return the effective stress tensor. More...
 
virtual tmp< volSymmTensorFielddevRhoReff (const volVectorField &U) const
 Return the effective stress tensor based on a given velocity field. More...
 
virtual tmp< fvVectorMatrixdivDevRhoReff (volVectorField &U) const
 Return the source term for the momentum equation. More...
 
virtual tmp< fvVectorMatrixdivDevRhoReff (const volScalarField &rho, volVectorField &U) const
 Return the source term for the momentum equation. More...
 
virtual void validate ()
 Validate the turbulence fields after construction. More...
 
virtual void correct ()=0
 Solve the turbulence equations and correct the turbulence viscosity. More...
 
- Public Member Functions inherited from LESModel< BasicTurbulenceModel >
 TypeName ("LES")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, LESModel, dictionary,(const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName),(alpha, rho, U, alphaRhoPhi, phi, transport, propertiesName))
 
 LESModel (const word &type, const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName)
 Construct from components. More...
 
virtual ~LESModel ()=default
 Destructor. More...
 
virtual bool read ()
 Read model coefficients if they have changed. More...
 
virtual const dictionarycoeffDict () const
 Const access to the coefficients dictionary. More...
 
const dimensionedScalarCe () const noexcept
 
const dimensionedScalarkMin () const
 Return the lower allowable limit for k (default: SMALL) More...
 
dimensionedScalarkMin ()
 Allow kMin to be changed. More...
 
const volScalarFielddelta () const
 Access function to filter width. More...
 
virtual tmp< volScalarFieldnuEff () const
 Return the effective viscosity. More...
 
virtual tmp< scalarFieldnuEff (const label patchi) const
 Return the effective viscosity on patch. More...
 
virtual tmp< volScalarFieldepsilon () const
 Return the turbulence kinetic energy dissipation rate. More...
 
virtual tmp< volScalarFieldomega () const
 Return the specific dissipation rate. More...
 
virtual void correct ()
 Solve the turbulence equations and correct the turbulence viscosity. More...
 

Protected Member Functions

virtual void correctNut ()
 Update the eddy-viscosity. More...
 
- Protected Member Functions inherited from ReynoldsStress< LESModel< BasicTurbulenceModel > >
void boundNormalStress (volSymmTensorField &R) const
 
void correctWallShearStress (volSymmTensorField &R) const
 
void checkRealizabilityConditions (const volSymmTensorField &R) const
 
virtual void correctNut ()=0
 Update the eddy-viscosity. More...
 
tmp< fvVectorMatrixDivDevRhoReff (const RhoFieldType &rho, volVectorField &U) const
 Return the source term for the momentum equation. More...
 
- Protected Member Functions inherited from LESModel< BasicTurbulenceModel >
virtual void printCoeffs (const word &type)
 Print model coefficients. More...
 
 LESModel (const LESModel &)=delete
 No copy construct. More...
 
void operator= (const LESModel &)=delete
 No copy assignment. More...
 

Protected Attributes

dimensionedScalar Ck_
 
dimensionedScalar Cm_
 
dimensionedScalar Ce_
 
dimensionedScalar Cs_
 
- Protected Attributes inherited from ReynoldsStress< LESModel< BasicTurbulenceModel > >
dimensionedScalar couplingFactor_
 
volSymmTensorField R_
 
volScalarField nut_
 
- Protected Attributes inherited from LESModel< BasicTurbulenceModel >
dictionary LESDict_
 LES coefficients dictionary. More...
 
Switch turbulence_
 Turbulence on/off flag. More...
 
Switch printCoeffs_
 Flag to print the model coeffs at run-time. More...
 
dictionary coeffDict_
 Model coefficients dictionary. More...
 
dimensionedScalar Ce_
 Empirical model constant. More...
 
dimensionedScalar kMin_
 Lower limit of k. More...
 
dimensionedScalar epsilonMin_
 Lower limit of epsilon. More...
 
dimensionedScalar omegaMin_
 Lower limit for omega. More...
 
autoPtr< Foam::LESdeltadelta_
 Run-time selectable delta model. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from LESModel< BasicTurbulenceModel >
static autoPtr< LESModelNew (const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName=turbulenceModel::propertiesName)
 Return a reference to the selected LES model. More...
 

Detailed Description

template<class BasicTurbulenceModel>
class Foam::LESModels::DeardorffDiffStress< BasicTurbulenceModel >

Differential SGS Stress Equation Model for incompressible and compressible flows.

Reference:

    Deardorff, J. W. (1973).
    The use of subgrid transport equations in a three-dimensional model
    of atmospheric turbulence.
    Journal of Fluids Engineering, 95(3), 429-438.

This SGS model uses a full balance equation for the SGS stress tensor to simulate the behaviour of B.

This implementation is as described in the above paper except that the triple correlation model of Donaldson is replaced with the generalized gradient diffusion model of Daly and Harlow:

    Daly, B. J., & Harlow, F. H. (1970).
    Transport equations in turbulence.
    Physics of Fluids (1958-1988), 13(11), 2634-2649.

with the default value for the coefficient Cs of 0.25 from

    Launder, B. E., Reece, G. J., & Rodi, W. (1975).
    Progress in the development of a Reynolds-stress turbulence closure.
    Journal of fluid mechanics, 68(03), 537-566.
Source files

Definition at line 85 of file DeardorffDiffStress.H.

Member Typedef Documentation

◆ alphaField

typedef BasicTurbulenceModel::alphaField alphaField

Definition at line 118 of file DeardorffDiffStress.H.

◆ rhoField

typedef BasicTurbulenceModel::rhoField rhoField

Definition at line 119 of file DeardorffDiffStress.H.

◆ transportModel

typedef BasicTurbulenceModel::transportModel transportModel

Definition at line 120 of file DeardorffDiffStress.H.

Constructor & Destructor Documentation

◆ DeardorffDiffStress()

DeardorffDiffStress ( const alphaField alpha,
const rhoField rho,
const volVectorField U,
const surfaceScalarField alphaRhoPhi,
const surfaceScalarField phi,
const transportModel transport,
const word propertiesName = turbulenceModel::propertiesName,
const word type = typeName 
)

Constructor from components.

Definition at line 56 of file DeardorffDiffStress.C.

References ReynoldsStress< LESModel< BasicTurbulenceModel > >::boundNormalStress(), LESModel< BasicTurbulenceModel >::printCoeffs(), ReynoldsStress< LESModel< BasicTurbulenceModel > >::R_, and Foam::type().

Here is the call graph for this function:

◆ ~DeardorffDiffStress()

virtual ~DeardorffDiffStress ( )
virtualdefault

Destructor.

Member Function Documentation

◆ correctNut()

void correctNut
protectedvirtual

Update the eddy-viscosity.

Implements ReynoldsStress< LESModel< BasicTurbulenceModel > >.

Definition at line 43 of file DeardorffDiffStress.C.

References delta, k, Time::New(), and Foam::sqrt().

Here is the call graph for this function:

◆ TypeName()

TypeName ( "DeardorffDiffStress< BasicTurbulenceModel >"  )

Runtime type information.

◆ read()

bool read
virtual

Read model coefficients if they have changed.

Implements ReynoldsStress< LESModel< BasicTurbulenceModel > >.

Definition at line 128 of file DeardorffDiffStress.C.

References Foam::read().

Here is the call graph for this function:

◆ correct()

void correct
virtual

Correct sub-grid stress, eddy-Viscosity and related properties.

Implements ReynoldsStress< LESModel< BasicTurbulenceModel > >.

Definition at line 145 of file DeardorffDiffStress.C.

References alpha, correct(), D, Foam::fvm::ddt(), delta, Foam::fvm::div(), epsilon, fvOptions, Foam::fvc::grad(), Foam::I, k, Foam::fvm::laplacian(), Time::New(), nu, R, tmp< T >::ref(), rho, Foam::fvm::Sp(), Foam::sqrt(), Foam::symm(), Foam::twoSymm(), and U.

Here is the call graph for this function:

Member Data Documentation

◆ Ck_

dimensionedScalar Ck_
protected

Definition at line 104 of file DeardorffDiffStress.H.

◆ Cm_

dimensionedScalar Cm_
protected

Definition at line 105 of file DeardorffDiffStress.H.

◆ Ce_

dimensionedScalar Ce_
protected

Definition at line 106 of file DeardorffDiffStress.H.

◆ Cs_

dimensionedScalar Cs_
protected

Definition at line 107 of file DeardorffDiffStress.H.


The documentation for this class was generated from the following files: