ECOGEN 6.0
Evolutive, Compressible, Open, Genuine, Easy, N-phase
Loading...
Searching...
No Matches
APETurbulenceSmagorinsky Class Reference

#include <APETurbulenceSmagorinsky.h>

Inherits APEuler.

Collaboration diagram for APETurbulenceSmagorinsky:
[legend]

Public Member Functions

 APETurbulenceSmagorinsky ()
 APETurbulenceSmagorinsky (int &numberQPA, Eos **eos, tinyxml2::XMLElement *elementSmagorinsky, std::string fileName)
 APETurbulenceSmagorinsky constructor.
 ~APETurbulenceSmagorinsky () override
void addQuantityAddPhys (Cell *cell) override
 Add the quantities for the additional physics.
void solveFluxAddPhys (CellInterface *cellInterface) override
 Solve the additional physics flux between two cells.
void solveFluxAddPhysBoundary (CellInterface *cellInterface) override
 Solve the additional physics flux at a domain boundary.
void solveFluxTurbulenceInner (CellInterface *cellInterface, const Coord &velocityLeft, const Coord &velocityRight, const Coord &gradULeft, const Coord &gradURight, const Coord &gradVLeft, const Coord &gradVRight, const Coord &gradWLeft, const Coord &gradWRight, const Coord &gradTLeft, const Coord &gradTRight, const double &gamma, const double &cv, const double &mu, const double &lambda, const double &rhoLeft, const double &rhoRight, const double &cellVolumeLeft, const Tensor &strainRateLeft, const Tensor &strainRateRight) const
 Solve the turbulence flux between two cells.
void solveFluxTurbulenceNonReflecting (CellInterface *cellInterface, const Coord &velocityLeft, const Coord &gradULeft, const Coord &gradVLeft, const Coord &gradWLeft, const Coord &gradTLeft, const double &rhoLeft, const double &cellVolumeLeft, const Tensor &strainRateLeft) const
 Solve the turbulence flux at a boundary with a non-reflecting type.
void solveFluxTurbulenceSymmetry (CellInterface *cellInterface, const Coord &gradULeft, const Coord &gradVLeft, const Coord &gradWLeft, const double &rhoLeft, const double &cellVolumeLeft, const Tensor &strainRateLeft, const double &mu) const
 Solve the turbulence flux at a boundary with a wall type in MRF case.
void solveFluxTurbulenceOther () const
 Solve the turbulence flux at a boundary with non-defined type yet.
void addNonCons (Cell *) override
 Add the non-conservative terms of the corresponding additional physics in a cell.
void addSymmetricTermsRadialAxisOnX (Cell *) override
 Add the symmetrical terms of the corresponding additional physics in a cell (when radial axis is on X).
void addSymmetricTermsRadialAxisOnY (Cell *) override
 Add the symmetrical terms of the corresponding additional physics in a cell (when radial axis is on Y).
void communicationsAddPhys (const int &dim, const int &lvl) override
 Communication of the additional physics quantities for parallel purposes with Adaptive Mesh Refinement.
virtual void computeTurbulenceParameters () const override
 Print the diagnostics for turbulence decay cases.
Public Member Functions inherited from APEuler
 APEuler ()
 ~APEuler () override
Public Member Functions inherited from AddPhys
 AddPhys ()
virtual ~AddPhys ()
virtual std::string whoAmI () const
virtual double computeEnergyAddPhys (QuantitiesAddPhys *)
 Compute and send back mass energy linked to the physics (0 if no linked energy).
void computeFluxAddPhys (CellInterface *cellInterface)
 Compute the additional physics flux between two cells.
void computeFluxAddPhysBoundary (CellInterface *cellInterface)
 Compute the additional physics flux at a domain boundary.
void addNonConsAddPhys (Cell *cell)
 Add the non-conservative terms of the additional physics in a cell.
virtual void addFluxAddPhys (CellInterface *cellInterface, const double &coefAMR)
 Add the additional physics flux between two cells at the corresponding cell.
virtual void subtractFluxAddPhys (CellInterface *cellInterface, const double &coefAMR)
 Subtract the additional physics flux between two cells at the corresponding cell.
virtual void reinitializeColorFunction (std::vector< Cell * > *, const int &)
 Reinitialize the color function for the surface-tension terms with the volume fraction equation.
virtual bool reinitializationActivated ()
 Send back true if the reinitialization of the color function is activated.
virtual const int & getNumTransportAssociated () const
 Return the associated number of the transport equation (only used for surface tension).

Private Attributes

bool m_Ducros
 Bool to turn on/off the Ducros flow sensor.
double m_Cs
 Coefficient modelling the off-diagonal terms of the SGS stress tensor (nondimensional) (buffer).
double m_Ci
 Coefficient modelling the trace of the SGS stress tensor (nondimensional) (buffer).
double m_PrT
 Turbulent Prandtl number (nondimensional) (buffer).
double m_cv
 Volume calorific energy (J/kg/K) (taken from the EOS class) (buffer).
double m_gamma
 Polytropic constant (nondimensional) (taken from the EOS class) (buffer).
double m_mu
 Dynamic viscosity (Pa.s) (molecular: taken from the EOS class) (buffer).
double m_lambda
 Thermal conductivity (W/(m.K)) of phase (taken from the EOS class) (buffer).
int m_numQPA
 Number of the associated variable for each cell (m_vecGrandeursAddPhys).
Coord m_velocityLeft
 Left velocity vector for the flux computation (buffer).
Coord m_gradULeft
 Left gradient of the velocity in the x-direction for the flux computation (buffer).
Coord m_gradVLeft
 Left gradient of the velocity in the y-direction for the flux computation (buffer).
Coord m_gradWLeft
 Left gradient of the velocity in the z-direction for the flux computation (buffer).
Tensor m_tensorLeft
 Left tensor of the velocity gradients (buffer).
Coord m_gradTLeft
 Left vector of the temperature gradients (buffer).
Coord m_velocityRight
 Right velocity vector for the flux computation (buffer).
Coord m_gradURight
 Right gradient of the velocity in the x-direction for the flux computation (buffer).
Coord m_gradVRight
 Right gradient of the velocity in the y-direction for the flux computation (buffer).
Coord m_gradWRight
 Right gradient of the velocity in the z-direction for the flux computation (buffer).
Tensor m_tensorRight
 Right tensor of the velocity gradients (buffer).
Coord m_gradTRight
 Right vector of the temperature gradients (buffer).
Coord m_normal
 Normal vector of the corresponding face for the flux computation (buffer).
Coord m_tangent
 Tangent vector of the corresponding face for the flux computation (buffer).
Coord m_binormal
 Binormal vector of the corresponding face for the flux computation (buffer).

Constructor & Destructor Documentation

◆ APETurbulenceSmagorinsky() [1/2]

APETurbulenceSmagorinsky::APETurbulenceSmagorinsky ( )

◆ APETurbulenceSmagorinsky() [2/2]

APETurbulenceSmagorinsky::APETurbulenceSmagorinsky ( int & numberQPA,
Eos ** eos,
tinyxml2::XMLElement * elementSmagorinsky,
std::string fileName )

APETurbulenceSmagorinsky constructor.

Parameters
numberQPAcorresponding additional physic quantities number
eosequation of state
elementSmagorinskyXML element
fileNamestring name of readed XML file
Here is the call graph for this function:

◆ ~APETurbulenceSmagorinsky()

APETurbulenceSmagorinsky::~APETurbulenceSmagorinsky ( )
override

Member Function Documentation

◆ addNonCons()

void APETurbulenceSmagorinsky::addNonCons ( Cell * )
inlineoverridevirtual

Add the non-conservative terms of the corresponding additional physics in a cell.

Parameters
cellcell

Reimplemented from AddPhys.

◆ addQuantityAddPhys()

void APETurbulenceSmagorinsky::addQuantityAddPhys ( Cell * )
overridevirtual

Add the quantities for the additional physics.

Parameters
cellcorresponding cell

Reimplemented from AddPhys.

Here is the call graph for this function:

◆ addSymmetricTermsRadialAxisOnX()

void APETurbulenceSmagorinsky::addSymmetricTermsRadialAxisOnX ( Cell * )
inlineoverridevirtual

Add the symmetrical terms of the corresponding additional physics in a cell (when radial axis is on X).

Parameters
cellcell

Reimplemented from AddPhys.

Here is the call graph for this function:

◆ addSymmetricTermsRadialAxisOnY()

void APETurbulenceSmagorinsky::addSymmetricTermsRadialAxisOnY ( Cell * )
inlineoverridevirtual

Add the symmetrical terms of the corresponding additional physics in a cell (when radial axis is on Y).

Parameters
cellcell

Reimplemented from AddPhys.

Here is the call graph for this function:

◆ communicationsAddPhys()

void APETurbulenceSmagorinsky::communicationsAddPhys ( const int & ,
const int &  )
overridevirtual

Communication of the additional physics quantities for parallel purposes with Adaptive Mesh Refinement.

Parameters
dimdimension
lvllevel

Reimplemented from AddPhys.

◆ computeTurbulenceParameters()

void APETurbulenceSmagorinsky::computeTurbulenceParameters ( ) const
overridevirtual

Print the diagnostics for turbulence decay cases.

Reimplemented from AddPhys.

◆ solveFluxAddPhys()

void APETurbulenceSmagorinsky::solveFluxAddPhys ( CellInterface * )
overridevirtual

Solve the additional physics flux between two cells.

Parameters
cellInterfacecell interface

Reimplemented from AddPhys.

Here is the call graph for this function:

◆ solveFluxAddPhysBoundary()

void APETurbulenceSmagorinsky::solveFluxAddPhysBoundary ( CellInterface * )
overridevirtual

Solve the additional physics flux at a domain boundary.

Parameters
cellInterfacecell interface

Reimplemented from AddPhys.

Here is the call graph for this function:

◆ solveFluxTurbulenceInner()

void APETurbulenceSmagorinsky::solveFluxTurbulenceInner ( CellInterface * cellInterface,
const Coord & velocityLeft,
const Coord & velocityRight,
const Coord & gradULeft,
const Coord & gradURight,
const Coord & gradVLeft,
const Coord & gradVRight,
const Coord & gradWLeft,
const Coord & gradWRight,
const Coord & gradTLeft,
const Coord & gradTRight,
const double & gamma,
const double & cv,
const double & mu,
const double & lambda,
const double & rhoLeft,
const double & rhoRight,
const double & cellVolumeLeft,
const Tensor & strainRateLeft,
const Tensor & strainRateRight ) const

Solve the turbulence flux between two cells.

Parameters
velocityLeftvelocity of the left cell
velocityRightvelocity of the right cell
gradULeftgradient of the velocity in the x-direction of the left cell
gradURightgradient of the velocity in the x-direction of the right cell
gradVLeftgradient of the velocity in the y-direction of the left cell
gradVRightgradient of the velocity in the y-direction of the right cell
gradWLeftgradient of the velocity in the z-direction of the left cell
gradWRightgradient of the velocity in the z-direction of the right cell
gradTLeftgradient of the temperature of the left cell
gradTRightgradient of the temperature of the right cell
gammapolytropic constant of the fluid
cvvolume calorific energy of the fluid
mudynamic molecular viscosity of the fluid
rhoLeftdensity of the left cell
rhoRightdensity of the right cell
cellVolumeLeftvolume of the left cell
strainRateLeftstrain rate tensor of the left cell
strainRateRightstrain rate tensor of the right cell
Here is the call graph for this function:
Here is the caller graph for this function:

◆ solveFluxTurbulenceNonReflecting()

void APETurbulenceSmagorinsky::solveFluxTurbulenceNonReflecting ( CellInterface * cellInterface,
const Coord & velocityLeft,
const Coord & gradULeft,
const Coord & gradVLeft,
const Coord & gradWLeft,
const Coord & gradTLeft,
const double & rhoLeft,
const double & cellVolumeLeft,
const Tensor & strainRateLeft ) const

Solve the turbulence flux at a boundary with a non-reflecting type.

Parameters
velocityLeftvelocity of the left cell
gradULeftgradient of the velocity in the x-direction of the left cell
gradVLeftgradient of the velocity in the y-direction of the left cell
gradWLeftgradient of the velocity in the z-direction of the left cell
gradTLeftgradient of the temperature of the left cell
rhoLeftdensity of the left cell
cellVolumeLeftvolume of the left cell
strainRateLeftstrain rate tensor of the left cell
Here is the call graph for this function:
Here is the caller graph for this function:

◆ solveFluxTurbulenceOther()

void APETurbulenceSmagorinsky::solveFluxTurbulenceOther ( ) const

Solve the turbulence flux at a boundary with non-defined type yet.

Here is the caller graph for this function:

◆ solveFluxTurbulenceSymmetry()

void APETurbulenceSmagorinsky::solveFluxTurbulenceSymmetry ( CellInterface * cellInterface,
const Coord & gradULeft,
const Coord & gradVLeft,
const Coord & gradWLeft,
const double & rhoLeft,
const double & cellVolumeLeft,
const Tensor & strainRateLeft,
const double & mu ) const

Solve the turbulence flux at a boundary with a wall type in MRF case.

Parameters
velocityLeftvelocity of the left cell
densityLeftdensity of the left cell
distLeftdistance between the center of the left cell and its corresponding edge
velocityWallvelocity of the wall in the Moving Reference Frame context (MRF)

Solve the turbulence flux at a boundary with a symmetry type

Parameters
gradULeftgradient of the velocity in the x-direction of the left cell
gradVLeftgradient of the velocity in the y-direction of the left cell
gradWLeftgradient of the velocity in the z-direction of the left cell
rhoLeftdensity of the left cell
cellVolumeLeftvolume of the left cell
strainRateLeftstrain rate tensor of the left cell
mudynamic molecular viscosity of the fluid
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ m_binormal

Coord APETurbulenceSmagorinsky::m_binormal
private

Binormal vector of the corresponding face for the flux computation (buffer).

◆ m_Ci

double APETurbulenceSmagorinsky::m_Ci
private

Coefficient modelling the trace of the SGS stress tensor (nondimensional) (buffer).

◆ m_Cs

double APETurbulenceSmagorinsky::m_Cs
private

Coefficient modelling the off-diagonal terms of the SGS stress tensor (nondimensional) (buffer).

◆ m_cv

double APETurbulenceSmagorinsky::m_cv
private

Volume calorific energy (J/kg/K) (taken from the EOS class) (buffer).

◆ m_Ducros

bool APETurbulenceSmagorinsky::m_Ducros
private

Bool to turn on/off the Ducros flow sensor.

◆ m_gamma

double APETurbulenceSmagorinsky::m_gamma
private

Polytropic constant (nondimensional) (taken from the EOS class) (buffer).

◆ m_gradTLeft

Coord APETurbulenceSmagorinsky::m_gradTLeft
private

Left vector of the temperature gradients (buffer).

◆ m_gradTRight

Coord APETurbulenceSmagorinsky::m_gradTRight
private

Right vector of the temperature gradients (buffer).

◆ m_gradULeft

Coord APETurbulenceSmagorinsky::m_gradULeft
private

Left gradient of the velocity in the x-direction for the flux computation (buffer).

◆ m_gradURight

Coord APETurbulenceSmagorinsky::m_gradURight
private

Right gradient of the velocity in the x-direction for the flux computation (buffer).

◆ m_gradVLeft

Coord APETurbulenceSmagorinsky::m_gradVLeft
private

Left gradient of the velocity in the y-direction for the flux computation (buffer).

◆ m_gradVRight

Coord APETurbulenceSmagorinsky::m_gradVRight
private

Right gradient of the velocity in the y-direction for the flux computation (buffer).

◆ m_gradWLeft

Coord APETurbulenceSmagorinsky::m_gradWLeft
private

Left gradient of the velocity in the z-direction for the flux computation (buffer).

◆ m_gradWRight

Coord APETurbulenceSmagorinsky::m_gradWRight
private

Right gradient of the velocity in the z-direction for the flux computation (buffer).

◆ m_lambda

double APETurbulenceSmagorinsky::m_lambda
private

Thermal conductivity (W/(m.K)) of phase (taken from the EOS class) (buffer).

◆ m_mu

double APETurbulenceSmagorinsky::m_mu
private

Dynamic viscosity (Pa.s) (molecular: taken from the EOS class) (buffer).

◆ m_normal

Coord APETurbulenceSmagorinsky::m_normal
private

Normal vector of the corresponding face for the flux computation (buffer).

◆ m_numQPA

int APETurbulenceSmagorinsky::m_numQPA
private

Number of the associated variable for each cell (m_vecGrandeursAddPhys).

◆ m_PrT

double APETurbulenceSmagorinsky::m_PrT
private

Turbulent Prandtl number (nondimensional) (buffer).

◆ m_tangent

Coord APETurbulenceSmagorinsky::m_tangent
private

Tangent vector of the corresponding face for the flux computation (buffer).

◆ m_tensorLeft

Tensor APETurbulenceSmagorinsky::m_tensorLeft
private

Left tensor of the velocity gradients (buffer).

◆ m_tensorRight

Tensor APETurbulenceSmagorinsky::m_tensorRight
private

Right tensor of the velocity gradients (buffer).

◆ m_velocityLeft

Coord APETurbulenceSmagorinsky::m_velocityLeft
private

Left velocity vector for the flux computation (buffer).

◆ m_velocityRight

Coord APETurbulenceSmagorinsky::m_velocityRight
private

Right velocity vector for the flux computation (buffer).


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