3.5-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Public Member Functions | Public Attributes | List of all members
Dumux::RANSProblemImpl< TypeTag, TurbulenceModel::zeroeq > Class Template Reference

Zero-equation turbulence problem base class. More...

#include <dumux/freeflow/rans/zeroeq/problem.hh>

Inheritance diagram for Dumux::RANSProblemImpl< TypeTag, TurbulenceModel::zeroeq >:

Description

template<class TypeTag>
class Dumux::RANSProblemImpl< TypeTag, TurbulenceModel::zeroeq >

Zero-equation turbulence problem base class.

This implements some base functionality for zero-equation models and a routine for the determining the eddy viscosity of the Baldwin-Lomax model.

Public Member Functions

 RANSProblemImpl (std::shared_ptr< const GridGeometry > gridGeometry, const std::string &paramGroup="")
 The constructor. More...
 
void updateStaticWallProperties ()
 Correct size of the static (solution independent) wall variables. More...
 
void updateDynamicWallProperties (const SolutionVector &curSol)
 Update the dynamic (solution dependent) relations to the walls. More...
 
void updateBaldwinLomaxProperties ()
 Update the relations and coefficients for the Baldwin-Lomax turbulence model. More...
 
std::string eddyViscosityModel () const
 
int additionalRoughnessLength (const int elementIdx) const
 
Scalar kinematicEddyViscosity (const int elementIdx) const
 
bool useWallFunction (const Element &element, const SubControlVolumeFace &scvf, const int &eqIdx) const
 Returns whether a wall function should be used at a given face. More...
 
template<class ElementVolumeVariables , class ElementFaceVariables >
FacePrimaryVariables wallFunction (const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const ElementFaceVariables &elemFaceVars, const SubControlVolumeFace &scvf, const SubControlVolumeFace &lateralBoundaryFace) const
 Returns an additional wall function momentum flux. More...
 
template<class ElementVolumeVariables , class ElementFaceVariables >
CellCenterPrimaryVariables wallFunction (const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const ElementFaceVariables &elemFaceVars, const SubControlVolumeFace &scvf) const
 Returns an additional wall function flux for cell-centered quantities. More...
 
bool isOnWall (const SubControlVolumeFace &scvf) const
 Returns whether a given sub control volume face is on a wall. More...
 
bool isFlatWallBounded () const
 
const Scalar karmanConstant () const
 Returns the Karman constant. More...
 
const Scalar betaOmega () const
 Returns the \( \beta_{\omega} \) constant. More...
 
Scalar turbulentPrandtlNumber () const
 Return the turbulent Prandtl number \( [-] \) which is used to convert the eddy viscosity to an eddy thermal conductivity. More...
 
Scalar turbulentSchmidtNumber () const
 Return the turbulent Schmidt number \( [-] \) which is used to convert the eddy viscosity to an eddy diffusivity. More...
 
int wallNormalAxis (const int elementIdx) const
 
int flowDirectionAxis (const int elementIdx) const
 
unsigned int wallElementIndex (const int elementIdx) const
 
Scalar wallDistance (const int elementIdx) const
 
GlobalPosition cellCenter (const int elementIdx) const
 
unsigned int neighborIndex (const int elementIdx, const int axisIdx, const int sideIdx) const
 
DimVector ccVelocityVector (const int elementIdx) const
 
Scalar ccVelocity (const int elementIdx, const int axisIdx) const
 
DimVector velocityMaximum (const int elementIdx) const
 
DimVector velocityMinimum (const int elementIdx) const
 
DimMatrix velocityGradientTensor (const int elementIdx) const
 
Scalar velocityGradient (const int elementIdx, const int i, const int j) const
 
Scalar stressTensorScalarProduct (const int elementIdx) const
 
Scalar vorticityTensorScalarProduct (const int elementIdx) const
 
Scalar storedViscosity (const int elementIdx) const
 
Scalar storedDensity (const int elementIdx) const
 
Scalar kinematicViscosity (const int elementIdx) const
 

Public Attributes

bool calledUpdateStaticWallProperties = false
 

Constructor & Destructor Documentation

◆ RANSProblemImpl()

template<class TypeTag >
Dumux::RANSProblemImpl< TypeTag, TurbulenceModel::zeroeq >::RANSProblemImpl ( std::shared_ptr< const GridGeometry >  gridGeometry,
const std::string &  paramGroup = "" 
)
inline

The constructor.

Parameters
gridGeometryThe finite volume grid geometry
paramGroupThe parameter group in which to look for runtime parameters first (default is "")

Member Function Documentation

◆ additionalRoughnessLength()

template<class TypeTag >
int Dumux::RANSProblemImpl< TypeTag, TurbulenceModel::zeroeq >::additionalRoughnessLength ( const int  elementIdx) const
inline

◆ betaOmega()

template<class TypeTag >
const Scalar Dumux::RANSProblemBase< TypeTag >::betaOmega ( ) const
inlineinherited

Returns the \( \beta_{\omega} \) constant.

◆ ccVelocity()

template<class TypeTag >
Scalar Dumux::RANSProblemBase< TypeTag >::ccVelocity ( const int  elementIdx,
const int  axisIdx 
) const
inlineinherited

◆ ccVelocityVector()

template<class TypeTag >
DimVector Dumux::RANSProblemBase< TypeTag >::ccVelocityVector ( const int  elementIdx) const
inlineinherited

◆ cellCenter()

template<class TypeTag >
GlobalPosition Dumux::RANSProblemBase< TypeTag >::cellCenter ( const int  elementIdx) const
inlineinherited

◆ eddyViscosityModel()

template<class TypeTag >
std::string Dumux::RANSProblemImpl< TypeTag, TurbulenceModel::zeroeq >::eddyViscosityModel ( ) const
inline

◆ flowDirectionAxis()

template<class TypeTag >
int Dumux::RANSProblemBase< TypeTag >::flowDirectionAxis ( const int  elementIdx) const
inlineinherited

◆ isFlatWallBounded()

template<class TypeTag >
bool Dumux::RANSProblemBase< TypeTag >::isFlatWallBounded ( ) const
inlineinherited

◆ isOnWall()

template<class TypeTag >
bool Dumux::RANSProblemBase< TypeTag >::isOnWall ( const SubControlVolumeFace &  scvf) const
inlineinherited

Returns whether a given sub control volume face is on a wall.

Parameters
scvfThe sub control volume face.

◆ karmanConstant()

template<class TypeTag >
const Scalar Dumux::RANSProblemBase< TypeTag >::karmanConstant ( ) const
inlineinherited

Returns the Karman constant.

◆ kinematicEddyViscosity()

template<class TypeTag >
Scalar Dumux::RANSProblemImpl< TypeTag, TurbulenceModel::zeroeq >::kinematicEddyViscosity ( const int  elementIdx) const
inline

◆ kinematicViscosity()

template<class TypeTag >
Scalar Dumux::RANSProblemBase< TypeTag >::kinematicViscosity ( const int  elementIdx) const
inlineinherited

◆ neighborIndex()

template<class TypeTag >
unsigned int Dumux::RANSProblemBase< TypeTag >::neighborIndex ( const int  elementIdx,
const int  axisIdx,
const int  sideIdx 
) const
inlineinherited

◆ storedDensity()

template<class TypeTag >
Scalar Dumux::RANSProblemBase< TypeTag >::storedDensity ( const int  elementIdx) const
inlineinherited

◆ storedViscosity()

template<class TypeTag >
Scalar Dumux::RANSProblemBase< TypeTag >::storedViscosity ( const int  elementIdx) const
inlineinherited

◆ stressTensorScalarProduct()

template<class TypeTag >
Scalar Dumux::RANSProblemBase< TypeTag >::stressTensorScalarProduct ( const int  elementIdx) const
inlineinherited

◆ turbulentPrandtlNumber()

template<class TypeTag >
Scalar Dumux::RANSProblemBase< TypeTag >::turbulentPrandtlNumber ( ) const
inlineinherited

Return the turbulent Prandtl number \( [-] \) which is used to convert the eddy viscosity to an eddy thermal conductivity.

◆ turbulentSchmidtNumber()

template<class TypeTag >
Scalar Dumux::RANSProblemBase< TypeTag >::turbulentSchmidtNumber ( ) const
inlineinherited

Return the turbulent Schmidt number \( [-] \) which is used to convert the eddy viscosity to an eddy diffusivity.

◆ updateBaldwinLomaxProperties()

template<class TypeTag >
void Dumux::RANSProblemImpl< TypeTag, TurbulenceModel::zeroeq >::updateBaldwinLomaxProperties ( )
inline

Update the relations and coefficients for the Baldwin-Lomax turbulence model.

◆ updateDynamicWallProperties()

template<class TypeTag >
void Dumux::RANSProblemImpl< TypeTag, TurbulenceModel::zeroeq >::updateDynamicWallProperties ( const SolutionVector &  curSol)
inline

Update the dynamic (solution dependent) relations to the walls.

This calculates the roughness related properties

Parameters
curSolThe solution vector.

◆ updateStaticWallProperties()

template<class TypeTag >
void Dumux::RANSProblemImpl< TypeTag, TurbulenceModel::zeroeq >::updateStaticWallProperties ( )
inline

Correct size of the static (solution independent) wall variables.

◆ useWallFunction()

template<class TypeTag >
bool Dumux::RANSProblemBase< TypeTag >::useWallFunction ( const Element &  element,
const SubControlVolumeFace &  scvf,
const int &  eqIdx 
) const
inlineinherited

Returns whether a wall function should be used at a given face.

Parameters
elementThe element.
scvfThe sub control volume face.
eqIdxThe equation index.

◆ velocityGradient()

template<class TypeTag >
Scalar Dumux::RANSProblemBase< TypeTag >::velocityGradient ( const int  elementIdx,
const int  i,
const int  j 
) const
inlineinherited

◆ velocityGradientTensor()

template<class TypeTag >
DimMatrix Dumux::RANSProblemBase< TypeTag >::velocityGradientTensor ( const int  elementIdx) const
inlineinherited

◆ velocityMaximum()

template<class TypeTag >
DimVector Dumux::RANSProblemBase< TypeTag >::velocityMaximum ( const int  elementIdx) const
inlineinherited

◆ velocityMinimum()

template<class TypeTag >
DimVector Dumux::RANSProblemBase< TypeTag >::velocityMinimum ( const int  elementIdx) const
inlineinherited

◆ vorticityTensorScalarProduct()

template<class TypeTag >
Scalar Dumux::RANSProblemBase< TypeTag >::vorticityTensorScalarProduct ( const int  elementIdx) const
inlineinherited

◆ wallDistance()

template<class TypeTag >
Scalar Dumux::RANSProblemBase< TypeTag >::wallDistance ( const int  elementIdx) const
inlineinherited

◆ wallElementIndex()

template<class TypeTag >
unsigned int Dumux::RANSProblemBase< TypeTag >::wallElementIndex ( const int  elementIdx) const
inlineinherited

◆ wallFunction() [1/2]

template<class TypeTag >
template<class ElementVolumeVariables , class ElementFaceVariables >
CellCenterPrimaryVariables Dumux::RANSProblemBase< TypeTag >::wallFunction ( const Element &  element,
const FVElementGeometry &  fvGeometry,
const ElementVolumeVariables &  elemVolVars,
const ElementFaceVariables &  elemFaceVars,
const SubControlVolumeFace &  scvf 
) const
inlineinherited

Returns an additional wall function flux for cell-centered quantities.

◆ wallFunction() [2/2]

template<class TypeTag >
template<class ElementVolumeVariables , class ElementFaceVariables >
FacePrimaryVariables Dumux::RANSProblemBase< TypeTag >::wallFunction ( const Element &  element,
const FVElementGeometry &  fvGeometry,
const ElementVolumeVariables &  elemVolVars,
const ElementFaceVariables &  elemFaceVars,
const SubControlVolumeFace &  scvf,
const SubControlVolumeFace &  lateralBoundaryFace 
) const
inlineinherited

Returns an additional wall function momentum flux.

◆ wallNormalAxis()

template<class TypeTag >
int Dumux::RANSProblemBase< TypeTag >::wallNormalAxis ( const int  elementIdx) const
inlineinherited

Member Data Documentation

◆ calledUpdateStaticWallProperties

template<class TypeTag >
bool Dumux::RANSProblemBase< TypeTag >::calledUpdateStaticWallProperties = false
inherited

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