Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
kL< BasicTurbulenceModel > Class Template Reference

A one-equation (turbulent kinetic energy k) turbulence closure model for incompressible and compressible geophysical applications. More...

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

Public Types

typedef BasicTurbulenceModel::alphaField alphaField
 
typedef BasicTurbulenceModel::rhoField rhoField
 
typedef BasicTurbulenceModel::transportModel transportModel
 
- Public Types inherited from eddyViscosity< RASModel< BasicTurbulenceModel > >
typedef RASModel< BasicTurbulenceModel > ::alphaField alphaField
 
typedef RASModel< BasicTurbulenceModel > ::rhoField rhoField
 
typedef RASModel< BasicTurbulenceModel > ::transportModel transportModel
 
- Public Types inherited from linearViscousStress< RASModel< BasicTurbulenceModel > >
typedef RASModel< BasicTurbulenceModel > ::alphaField alphaField
 
typedef RASModel< BasicTurbulenceModel > ::rhoField rhoField
 
typedef RASModel< BasicTurbulenceModel > ::transportModel transportModel
 
- Public Types inherited from RASModel< BasicTurbulenceModel >
typedef BasicTurbulenceModel::alphaField alphaField
 
typedef BasicTurbulenceModel::rhoField rhoField
 
typedef BasicTurbulenceModel::transportModel transportModel
 

Public Member Functions

 TypeName ("kL")
 
 kL (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)
 
virtual ~kL ()=default
 
virtual bool read ()
 
tmp< volScalarFieldDkEff () const
 
virtual tmp< volScalarFieldk () const
 
virtual void correct ()
 
- Public Member Functions inherited from eddyViscosity< RASModel< 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)
 
virtual ~eddyViscosity ()=default
 
virtual tmp< volScalarFieldnut () const
 
virtual tmp< scalarFieldnut (const label patchi) const
 
virtual tmp< volScalarFieldk () const=0
 
virtual tmp< volSymmTensorFieldR () const
 
virtual void validate ()
 
- Public Member Functions inherited from linearViscousStress< RASModel< 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)
 
virtual ~linearViscousStress ()=default
 
virtual tmp< volSymmTensorFielddevRhoReff () const
 
virtual tmp< volSymmTensorFielddevRhoReff (const volVectorField &U) const
 
virtual tmp< fvVectorMatrixdivDevRhoReff (volVectorField &U) const
 
virtual tmp< fvVectorMatrixdivDevRhoReff (const volScalarField &rho, volVectorField &U) const
 
- Public Member Functions inherited from RASModel< BasicTurbulenceModel >
 TypeName ("RAS")
 
 declareRunTimeSelectionTable (autoPtr, RASModel, 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))
 
 RASModel (const word &type, const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName)
 
virtual ~RASModel ()=default
 
const dimensionedScalarkMin () const
 
const dimensionedScalarepsilonMin () const
 
const dimensionedScalaromegaMin () const
 
dimensionedScalarkMin ()
 
dimensionedScalarepsilonMin ()
 
dimensionedScalaromegaMin ()
 
virtual const dictionarycoeffDict () const
 
virtual tmp< volScalarFieldnuEff () const
 
virtual tmp< scalarFieldnuEff (const label patchi) const
 
virtual tmp< volScalarFieldomega () const
 

Protected Member Functions

virtual void correctNut ()
 
virtual tmp< fvScalarMatrixkSource () const
 
- Protected Member Functions inherited from RASModel< BasicTurbulenceModel >
virtual void printCoeffs (const word &type)
 
 RASModel (const RASModel &)=delete
 
void operator= (const RASModel &)=delete
 

Protected Attributes

dimensionedScalar kappa_
 
dimensionedScalar sigmak_
 
dimensionedScalar beta_
 
dimensionedScalar Cmu0_
 
dimensionedScalar Lmax_
 
dimensionedScalar CbStable_
 
dimensionedScalar CbUnstable_
 
volScalarField k_
 
volScalarField L_
 
volScalarField Rt_
 
const uniformDimensionedVectorFieldg_
 
const volScalarFieldy_
 
- Protected Attributes inherited from eddyViscosity< RASModel< BasicTurbulenceModel > >
volScalarField nut_
 
- Protected Attributes inherited from RASModel< BasicTurbulenceModel >
dictionary RASDict_
 
Switch turbulence_
 
Switch printCoeffs_
 
dictionary coeffDict_
 
dimensionedScalar kMin_
 
dimensionedScalar epsilonMin_
 
dimensionedScalar omegaMin_
 

Additional Inherited Members

- Static Public Member Functions inherited from RASModel< BasicTurbulenceModel >
static autoPtr< RASModelNew (const alphaField &alpha, const rhoField &rho, const volVectorField &U, const surfaceScalarField &alphaRhoPhi, const surfaceScalarField &phi, const transportModel &transport, const word &propertiesName=turbulenceModel::propertiesName)
 

Detailed Description

template<class BasicTurbulenceModel>
class Foam::RASModels::kL< BasicTurbulenceModel >

A one-equation (turbulent kinetic energy k) turbulence closure model for incompressible and compressible geophysical applications.

Turbulent kinetic energy (k) is computed with a transport equation and the turbulent length scale (L) is computed with an algebraic expression which depends on the local stratification.

References:

    Standard model (tag:A):
        Axell, L. B., & Liungman, O. (2001).
        A one-equation turbulence model for geophysical applications:
        comparison with data and the k−ε model.
        Environmental Fluid Mechanics, 1(1), 71-106.
        DOI:10.1023/A:1011560202388

    Canopy-related models (tag:W):
        Wilson, J. D., & Flesch, T. K. (1999).
        Wind and remnant tree sway in forest cutblocks.
        III. A windflow model to diagnose spatial variation.
        Agricultural and Forest Meteorology, 93(4), 259-282.
        DOI:10.1016/S0168-1923(98)00121-X
Usage
Example by using constant/turbulenceProperties:
RAS
{
    // Mandatory entries
    RASModel        kL;

    // Optional entries
    kLCoeffs
    {
        kappa       <scalar>;
        sigmak      <scalar>;
        beta        <scalar>;
        Cmu0        <scalar>;
        Lmax        <scalar>;
        CbStable    <scalar>;
        CbUnstable  <scalar>;
    }

    // Inherited entries
    ...
}

where the entries mean:

Property Description Type Reqd Deflt
RASModel Type name: kL word yes -
kappa von Karman constant scalar no 0.41
sigmak Empirical model coefficient scalar no 1.0
beta Thermal expansion coefficient [1/K] scalar no 3.3e-3
Cmu0 Empirical model coefficient scalar no 0.556
Lmax Maximum mixing-length scale [m] scalar no GREAT
CbStable Stable stratification constant scalar no 0.25
CbUnstable Unstable stratification constant scalar no 0.35

The inherited entries are elaborated in:


Input fields (mandatory)

k : Turbulent kinetic energy [m2/s2]
T : Potential temperature [K]


Input fields (optional)

canopyHeight : Canopy height [m]
plantCd : Plant canopy drag coefficient [-]
leafAreaDensity : Leaf area density [1/m]
Rt : Turbulent Richardson number [-]
L : Characteristic length scale [m]
Note
  • Optional input fields can/should be input by using readFields function object.
Source files

Definition at line 218 of file kL.H.

Member Typedef Documentation

◆ alphaField

typedef BasicTurbulenceModel::alphaField alphaField

Definition at line 320 of file kL.H.

◆ rhoField

typedef BasicTurbulenceModel::rhoField rhoField

Definition at line 321 of file kL.H.

◆ transportModel

typedef BasicTurbulenceModel::transportModel transportModel

Definition at line 322 of file kL.H.

Constructor & Destructor Documentation

◆ kL()

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

Definition at line 243 of file kL.C.

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

Here is the call graph for this function:

◆ ~kL()

virtual ~kL ( )
virtualdefault

Member Function Documentation

◆ correctNut()

void correctNut
protectedvirtual

Implements eddyViscosity< RASModel< BasicTurbulenceModel > >.

Definition at line 218 of file kL.C.

References optionList::correct(), options::New(), and Foam::sqrt().

Here is the call graph for this function:

◆ kSource()

tmp< fvScalarMatrix > kSource
protectedvirtual

Definition at line 229 of file kL.C.

References Foam::dimTime, Foam::dimVolume, and tmp::New().

Here is the call graph for this function:

◆ TypeName()

TypeName ( "kL< BasicTurbulenceModel >"  )

◆ read()

bool read
virtual

Implements eddyViscosity< RASModel< BasicTurbulenceModel > >.

Definition at line 385 of file kL.C.

References Foam::read().

Here is the call graph for this function:

◆ DkEff()

tmp<volScalarField> DkEff ( ) const
inline

Definition at line 355 of file kL.H.

References tmp::New(), nu, and eddyViscosity< RASModel< BasicTurbulenceModel > >::nut_.

Here is the call graph for this function:

◆ k()

virtual tmp<volScalarField> k ( ) const
inlinevirtual

Definition at line 365 of file kL.H.

References kL< BasicTurbulenceModel >::k_.

◆ correct()

void correct
virtual

Member Data Documentation

◆ kappa_

dimensionedScalar kappa_
protected

Definition at line 268 of file kL.H.

◆ sigmak_

dimensionedScalar sigmak_
protected

Definition at line 271 of file kL.H.

◆ beta_

dimensionedScalar beta_
protected

Definition at line 274 of file kL.H.

◆ Cmu0_

dimensionedScalar Cmu0_
protected

Definition at line 277 of file kL.H.

◆ Lmax_

dimensionedScalar Lmax_
protected

Definition at line 280 of file kL.H.

◆ CbStable_

dimensionedScalar CbStable_
protected

Definition at line 283 of file kL.H.

◆ CbUnstable_

dimensionedScalar CbUnstable_
protected

Definition at line 286 of file kL.H.

◆ k_

volScalarField k_
protected

Definition at line 292 of file kL.H.

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

◆ L_

volScalarField L_
protected

Definition at line 295 of file kL.H.

◆ Rt_

volScalarField Rt_
protected

Definition at line 298 of file kL.H.

◆ g_

const uniformDimensionedVectorField& g_
protected

Definition at line 301 of file kL.H.

◆ y_

const volScalarField& y_
protected

Definition at line 306 of file kL.H.


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