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

#include <APEViscosity.h>

Inherits APEuler.

Collaboration diagram for APEViscosity:
[legend]

Public Member Functions

 APEViscosity ()
 APEViscosity (int &numberQPA, Eos **eos)
 ~APEViscosity () 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 solveFluxViscosityInner (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 double &mu) const
 Solve the viscosity flux between two cells.
void solveFluxViscosityNonReflecting (const Coord &velocityLeft, const Coord &gradULeft, const Coord &gradVLeft, const Coord &gradWLeft, const double &muLeft) const
 Solve the viscosity flux at a boundary with a non-reflecting type.
void solveFluxViscosityWall (const Coord &velocityLeft, const double &muLeft, const double &distLeft, Coord &velocityWall=Coord::defaultCoordNonConst) const
 Solve the viscosity flux at a boundary with a wall type in MRF case.
void solveFluxViscositySymmetry (const Coord &gradULeft, const Coord &gradVLeft, const Coord &gradWLeft, const double &muLeft) const
 Solve the viscosity flux at a boundary with a symmetry type.
void solveFluxViscosityOther () const
 Solve the viscosity 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

double m_mu
 Dynamic viscosity (kg/m/s or Pa.s) (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_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_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

◆ APEViscosity() [1/2]

APEViscosity::APEViscosity ( )

◆ APEViscosity() [2/2]

APEViscosity::APEViscosity ( int & numberQPA,
Eos ** eos )
Here is the call graph for this function:

◆ ~APEViscosity()

APEViscosity::~APEViscosity ( )
override

Member Function Documentation

◆ addNonCons()

void APEViscosity::addNonCons ( Cell * )
inlineoverridevirtual

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

Parameters
cellcell

Reimplemented from AddPhys.

◆ addQuantityAddPhys()

void APEViscosity::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 APEViscosity::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 APEViscosity::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 APEViscosity::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 APEViscosity::computeTurbulenceParameters ( ) const
overridevirtual

Print the diagnostics for turbulence decay cases.

Reimplemented from AddPhys.

◆ solveFluxAddPhys()

void APEViscosity::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 APEViscosity::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:

◆ solveFluxViscosityInner()

void APEViscosity::solveFluxViscosityInner ( 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 double & mu ) const

Solve the viscosity 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
mudynamic viscosity
Here is the call graph for this function:
Here is the caller graph for this function:

◆ solveFluxViscosityNonReflecting()

void APEViscosity::solveFluxViscosityNonReflecting ( const Coord & velocityLeft,
const Coord & gradULeft,
const Coord & gradVLeft,
const Coord & gradWLeft,
const double & muLeft ) const

Solve the viscosity 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
muLeftdynamic viscosity of the left cell
Here is the call graph for this function:
Here is the caller graph for this function:

◆ solveFluxViscosityOther()

void APEViscosity::solveFluxViscosityOther ( ) const

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

Here is the caller graph for this function:

◆ solveFluxViscositySymmetry()

void APEViscosity::solveFluxViscositySymmetry ( const Coord & gradULeft,
const Coord & gradVLeft,
const Coord & gradWLeft,
const double & muLeft ) const

Solve the viscosity 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
mudynamic viscosity of the left cell
Here is the call graph for this function:
Here is the caller graph for this function:

◆ solveFluxViscosityWall()

void APEViscosity::solveFluxViscosityWall ( const Coord & velocityLeft,
const double & muLeft,
const double & distLeft,
Coord & velocityWall = Coord::defaultCoordNonConst ) const

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

Parameters
velocityLeftvelocity of the left cell
muLeftdynamic viscosity 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)
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ m_binormal

Coord APEViscosity::m_binormal
private

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

◆ m_gradULeft

Coord APEViscosity::m_gradULeft
private

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

◆ m_gradURight

Coord APEViscosity::m_gradURight
private

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

◆ m_gradVLeft

Coord APEViscosity::m_gradVLeft
private

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

◆ m_gradVRight

Coord APEViscosity::m_gradVRight
private

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

◆ m_gradWLeft

Coord APEViscosity::m_gradWLeft
private

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

◆ m_gradWRight

Coord APEViscosity::m_gradWRight
private

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

◆ m_mu

double APEViscosity::m_mu
private

Dynamic viscosity (kg/m/s or Pa.s) (taken from the EOS class) (buffer).

◆ m_normal

Coord APEViscosity::m_normal
private

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

◆ m_numQPA

int APEViscosity::m_numQPA
private

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

◆ m_tangent

Coord APEViscosity::m_tangent
private

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

◆ m_tensorLeft

Tensor APEViscosity::m_tensorLeft
private

Left tensor of the velocity gradients (buffer).

◆ m_tensorRight

Tensor APEViscosity::m_tensorRight
private

Right tensor of the velocity gradients (buffer).

◆ m_velocityLeft

Coord APEViscosity::m_velocityLeft
private

Left velocity vector for the flux computation (buffer).

◆ m_velocityRight

Coord APEViscosity::m_velocityRight
private

Right velocity vector for the flux computation (buffer).


The documentation for this class was generated from the following files:
  • /home/runner/work/ECOGEN/ECOGEN/doc_sources/src/AdditionalPhysics/Viscosity/APEViscosity.h
  • /home/runner/work/ECOGEN/ECOGEN/doc_sources/src/AdditionalPhysics/Viscosity/APEViscosity.cpp