Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
dynamicKEqn< BasicTurbulenceModel > Class Template Reference

Dynamic one equation eddy-viscosity model. More...

Inheritance diagram for dynamicKEqn< BasicTurbulenceModel >:
Inheritance graph
[legend]
Collaboration diagram for dynamicKEqn< BasicTurbulenceModel >:
Collaboration graph
[legend]

Public Types

typedef BasicTurbulenceModel::alphaField alphaField
 
typedef BasicTurbulenceModel::rhoField rhoField
 
typedef BasicTurbulenceModel::transportModel transportModel
 
- Public Types inherited from LESeddyViscosity< BasicTurbulenceModel >
typedef BasicTurbulenceModel::alphaField alphaField
 
typedef BasicTurbulenceModel::rhoField rhoField
 
typedef BasicTurbulenceModel::transportModel transportModel
 
- Public Types inherited from eddyViscosity< LESModel< BasicTurbulenceModel > >
typedef LESModel< BasicTurbulenceModel > ::alphaField alphaField
 
typedef LESModel< BasicTurbulenceModel > ::rhoField rhoField
 
typedef LESModel< BasicTurbulenceModel > ::transportModel transportModel
 
- Public Types inherited from linearViscousStress< LESModel< BasicTurbulenceModel > >
typedef LESModel< BasicTurbulenceModel > ::alphaField alphaField
 
typedef LESModel< BasicTurbulenceModel > ::rhoField rhoField
 
typedef LESModel< 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 ("dynamicKEqn")
 Runtime type information. More...
 
 dynamicKEqn (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)
 Construct from components. More...
 
virtual ~dynamicKEqn ()
 Destructor. More...
 
virtual bool read ()
 Read model coefficients if they have changed. More...
 
virtual tmp< volScalarFieldk () const
 Return SGS kinetic energy. More...
 
virtual tmp< volScalarFieldepsilon () const
 Return sub-grid disipation rate. More...
 
tmp< volScalarFieldDkEff () const
 Return the effective diffusivity for k. More...
 
virtual void correct ()
 Correct Eddy-Viscosity and related properties. More...
 
- Public Member Functions inherited from LESeddyViscosity< BasicTurbulenceModel >
 LESeddyViscosity (const word &type, const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName=turbulenceModel::propertiesName)
 Construct from components. More...
 
virtual ~LESeddyViscosity ()
 Destructor. More...
 
- Public Member Functions inherited from eddyViscosity< LESModel< BasicTurbulenceModel > >
 eddyViscosity (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 ~eddyViscosity ()
 Destructor. More...
 
volScalarFieldevNut ()
 Return non-const access to the turbulence viscosity. 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=0
 Return the turbulence kinetic energy. More...
 
virtual tmp< volSymmTensorFieldR () const
 Return the Reynolds stress tensor. More...
 
virtual void validate ()
 Validate the turbulence fields after construction. More...
 
- Public Member Functions inherited from linearViscousStress< LESModel< BasicTurbulenceModel > >
 linearViscousStress (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 ~linearViscousStress ()
 Destructor. More...
 
virtual tmp< volSymmTensorFielddevRhoReff () const
 Return the effective stress tensor. 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...
 
- 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 ()
 Destructor. More...
 
virtual const dictionarycoeffDict () const
 Const access to the coefficients dictionary. More...
 
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...
 

Protected Member Functions

volScalarField Ck (const volSymmTensorField &D, const volScalarField &KK) const
 Calculate Ck by filtering the velocity field U. More...
 
volScalarField Ce (const volSymmTensorField &D, const volScalarField &KK) const
 Calculate Ce by filtering the velocity field U. More...
 
volScalarField Ce () const
 
void correctNut (const volSymmTensorField &D, const volScalarField &KK)
 Update sub-grid eddy-viscosity. More...
 
virtual void correctNut ()
 
virtual tmp< fvScalarMatrixkSource () const
 
- Protected Member Functions inherited from LESModel< BasicTurbulenceModel >
virtual void printCoeffs (const word &type)
 Print model coefficients. More...
 

Protected Attributes

volScalarField k_
 
simpleFilter simpleFilter_
 
autoPtr< LESfilterfilterPtr_
 
LESfilterfilter_
 
- Protected Attributes inherited from LESeddyViscosity< BasicTurbulenceModel >
dimensionedScalar Ce_
 
- Protected Attributes inherited from eddyViscosity< LESModel< BasicTurbulenceModel > >
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 kMin_
 Lower limit of k. More...
 
dimensionedScalar omegaMin_
 Lower limit of omega. More...
 
autoPtr< Foam::LESdeltadelta_
 Run-time selectable delta model. More...
 

Private Member Functions

 dynamicKEqn (const dynamicKEqn &)
 
dynamicKEqnoperator= (const dynamicKEqn &)
 

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::dynamicKEqn< BasicTurbulenceModel >

Dynamic one equation eddy-viscosity model.

Eddy viscosity SGS model using a modeled balance equation to simulate the behaviour of k in which a dynamic procedure is applied to evaluate the coefficients.

Reference:

    Kim, W and Menon, S. (1995).
    A new dynamic one-equation subgrid-scale model for
    large eddy simulation.
    In 33rd Aerospace Sciences Meeting and Exhibit, Reno, NV, 1995.

There are no default model coefficients but the filter used for KK must be supplied, e.g.

    dynamicKEqnCoeffs
    {
        filter simple;
    }
Source files

Definition at line 76 of file dynamicKEqn.H.

Member Typedef Documentation

◆ alphaField

typedef BasicTurbulenceModel::alphaField alphaField

Definition at line 135 of file dynamicKEqn.H.

◆ rhoField

typedef BasicTurbulenceModel::rhoField rhoField

Definition at line 136 of file dynamicKEqn.H.

◆ transportModel

typedef BasicTurbulenceModel::transportModel transportModel

Definition at line 137 of file dynamicKEqn.H.

Constructor & Destructor Documentation

◆ dynamicKEqn() [1/2]

dynamicKEqn ( const dynamicKEqn< BasicTurbulenceModel > &  )
private

◆ dynamicKEqn() [2/2]

dynamicKEqn ( 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 
)

Construct from components.

Definition at line 150 of file dynamicKEqn.C.

References Foam::bound(), and Foam::type().

Here is the call graph for this function:

◆ ~dynamicKEqn()

virtual ~dynamicKEqn ( )
inlinevirtual

Destructor.

Definition at line 161 of file dynamicKEqn.H.

Member Function Documentation

◆ operator=()

dynamicKEqn& operator= ( const dynamicKEqn< BasicTurbulenceModel > &  )
private

◆ Ck()

volScalarField Ck ( const volSymmTensorField D,
const volScalarField KK 
) const
protected

Calculate Ck by filtering the velocity field U.

Definition at line 39 of file dynamicKEqn.C.

References delta, Foam::dev(), Foam::mag(), Foam::magSqr(), Foam::max(), Foam::sqr(), and Foam::sqrt().

Here is the call graph for this function:

◆ Ce() [1/2]

volScalarField Ce ( const volSymmTensorField D,
const volScalarField KK 
) const
protected

Calculate Ce by filtering the velocity field U.

Definition at line 76 of file dynamicKEqn.C.

References delta, Foam::mag(), Foam::magSqr(), and Foam::pow().

Here is the call graph for this function:

◆ Ce() [2/2]

volScalarField Ce
protected

Definition at line 93 of file dynamicKEqn.C.

References Foam::dev(), Foam::fvc::grad(), Foam::magSqr(), GeometricField::max(), and Foam::symm().

Here is the call graph for this function:

◆ correctNut() [1/2]

void correctNut ( const volSymmTensorField D,
const volScalarField KK 
)
protected

Update sub-grid eddy-viscosity.

Definition at line 109 of file dynamicKEqn.C.

References delta, and Foam::sqrt().

Here is the call graph for this function:

◆ correctNut() [2/2]

void correctNut
protectedvirtual

Implements eddyViscosity< LESModel< BasicTurbulenceModel > >.

Definition at line 120 of file dynamicKEqn.C.

References Foam::fvc::grad(), Foam::magSqr(), and Foam::symm().

Here is the call graph for this function:

◆ kSource()

tmp< fvScalarMatrix > kSource
protectedvirtual

Definition at line 132 of file dynamicKEqn.C.

References Foam::dimTime, and Foam::dimVolume.

◆ TypeName()

TypeName ( "dynamicKEqn< BasicTurbulenceModel >"  )

Runtime type information.

◆ read()

bool read
virtual

Read model coefficients if they have changed.

Reimplemented from LESeddyViscosity< BasicTurbulenceModel >.

Definition at line 202 of file dynamicKEqn.C.

◆ k()

virtual tmp<volScalarField> k ( ) const
inlinevirtual

Return SGS kinetic energy.

Definition at line 171 of file dynamicKEqn.H.

References dynamicKEqn< BasicTurbulenceModel >::k_.

◆ epsilon()

tmp< volScalarField > epsilon
virtual

Return sub-grid disipation rate.

Reimplemented from LESeddyViscosity< BasicTurbulenceModel >.

Definition at line 218 of file dynamicKEqn.C.

References delta, IOobject::groupName(), k, IOobject::NO_READ, IOobject::NO_WRITE, and Foam::sqrt().

Here is the call graph for this function:

◆ DkEff()

tmp<volScalarField> DkEff ( ) const
inline

Return the effective diffusivity for k.

Definition at line 180 of file dynamicKEqn.H.

References nu, and eddyViscosity< LESModel< BasicTurbulenceModel > >::nut_.

◆ correct()

void correct
virtual

Field Documentation

◆ k_

volScalarField k_
protected

Definition at line 93 of file dynamicKEqn.H.

Referenced by dynamicKEqn< BasicTurbulenceModel >::k().

◆ simpleFilter_

simpleFilter simpleFilter_
protected

Definition at line 98 of file dynamicKEqn.H.

◆ filterPtr_

autoPtr<LESfilter> filterPtr_
protected

Definition at line 99 of file dynamicKEqn.H.

◆ filter_

LESfilter& filter_
protected

Definition at line 100 of file dynamicKEqn.H.


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