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

General class for thermal viscosity for the velocity-equilibrium system of equations. More...

#include <APUEqViscosity.h>

Inherits APUEq.

Public Member Functions

 APUEqViscosity (int &numberQPA, Eos **eos, const int &numbPhases)
 
virtual ~APUEqViscosity ()
 
virtual void addQuantityAddPhys (Cell *cell)
 Add the quantities for the additional physic.
 
virtual void solveFluxAddPhys (CellInterface *cellInterface)
 Solve the additional physic flux between two cells.
 
virtual void solveFluxAddPhysBoundary (CellInterface *cellInterface)
 Solve the additional physic 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 &muMixLeft, const double &muMixRight) const
 Solve the viscosity flux between two cells.
 
void solveFluxViscosityNonReflecting (const Coord &velocityLeft, const Coord &gradULeft, const Coord &gradVLeft, const Coord &gradWLeft, const double &muMixLeft) const
 Solve the viscosity flux at a boundary with a non-reflecting type.
 
void solveFluxViscosityWall (const Coord &velocityLeft, const double &muMixLeft, const double &distLeft) const
 Solve the viscosity flux at a boundary with a wall type.
 
void solveFluxViscositySymmetry (const Coord &gradULeft, const Coord &gradVLeft, const Coord &gradWLeft, const double &muMixLeft) 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.
 
virtual void addNonCons (Cell *cell)
 Add the non-conservative terms of the corresponding additional physic in a cell.
 
virtual void addSymmetricTermsRadialAxisOnX (Cell *cell)
 Add the symmetrical terms of the corresponding additional physic in a cell (when radial axis is on X)
 
virtual void addSymmetricTermsRadialAxisOnY (Cell *cell)
 Add the symmetrical terms of the corresponding additional physic in a cell (when radial axis is on Y)
 
virtual void communicationsAddPhys (const int &dim, const int &lvl)
 Communication of the additional physics quantities for parallel purposes with Adaptive Mesh Refinement.
 
- Public Member Functions inherited from APUEq
 APUEq ()
 
virtual ~APUEq ()
 
- 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 physic (0 if no linked energy)
 
void computeFluxAddPhys (CellInterface *cellInterface)
 Compute the additional physic flux between two cells.
 
void computeFluxAddPhysBoundary (CellInterface *cellInterface)
 Compute the additional physic flux at a domain boundary.
 
void addNonConsAddPhys (Cell *cell)
 Add the non-conservative terms of the additional physic in a cell.
 
virtual void addFluxAddPhys (CellInterface *cellInterface, const double &coefAMR)
 Add the additional physic flux between two cells at the corresponding cell.
 
virtual void subtractFluxAddPhys (CellInterface *cellInterface, const double &coefAMR)
 Subtract the additional physic 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_muk
 Dynamic viscosity (kg/m/s or Pa.s) of each phase (taken from the EOS classes) (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)
 

Detailed Description

General class for thermal viscosity for the velocity-equilibrium system of equations.

Constructor & Destructor Documentation

◆ APUEqViscosity()

APUEqViscosity::APUEqViscosity ( int &  numberQPA,
Eos **  eos,
const int &  numbPhases 
)

◆ ~APUEqViscosity()

APUEqViscosity::~APUEqViscosity ( )
virtual

Member Function Documentation

◆ addNonCons()

void APUEqViscosity::addNonCons ( Cell )
virtual

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

Parameters
cellcell

Reimplemented from AddPhys.

◆ addQuantityAddPhys()

void APUEqViscosity::addQuantityAddPhys ( Cell )
virtual

Add the quantities for the additional physic.

Parameters
cellcorresponding cell

Reimplemented from AddPhys.

◆ addSymmetricTermsRadialAxisOnX()

void APUEqViscosity::addSymmetricTermsRadialAxisOnX ( Cell )
virtual

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

Parameters
cellcell

Reimplemented from AddPhys.

◆ addSymmetricTermsRadialAxisOnY()

void APUEqViscosity::addSymmetricTermsRadialAxisOnY ( Cell )
virtual

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

Parameters
cellcell

Reimplemented from AddPhys.

◆ communicationsAddPhys()

void APUEqViscosity::communicationsAddPhys ( const int &  ,
const int &   
)
virtual

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

Parameters
dimdimension
lvllevel

Reimplemented from AddPhys.

◆ solveFluxAddPhys()

void APUEqViscosity::solveFluxAddPhys ( CellInterface )
virtual

Solve the additional physic flux between two cells.

Parameters
cellInterfacecell interface

Reimplemented from AddPhys.

◆ solveFluxAddPhysBoundary()

void APUEqViscosity::solveFluxAddPhysBoundary ( CellInterface )
virtual

Solve the additional physic flux at a domain boundary.

Parameters
cellInterfacecell interface

Reimplemented from AddPhys.

◆ solveFluxViscosityInner()

void APUEqViscosity::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 &  muMixLeft,
const double &  muMixRight 
) 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
muMixLeftdynamic viscosity of the mixture of the left cell
muMixRightdynamic viscosity of the mixture of the right cell

◆ solveFluxViscosityNonReflecting()

void APUEqViscosity::solveFluxViscosityNonReflecting ( const Coord velocityLeft,
const Coord gradULeft,
const Coord gradVLeft,
const Coord gradWLeft,
const double &  muMixLeft 
) 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
muMixLeftdynamic viscosity of the mixture of the left cell

◆ solveFluxViscosityOther()

void APUEqViscosity::solveFluxViscosityOther ( ) const

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

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
muMixLeftdynamic viscosity of the mixture of the left cell

◆ solveFluxViscositySymmetry()

void APUEqViscosity::solveFluxViscositySymmetry ( const Coord gradULeft,
const Coord gradVLeft,
const Coord gradWLeft,
const double &  muMixLeft 
) 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
muMixLeftdynamic viscosity of the mixture of the left cell

◆ solveFluxViscosityWall()

void APUEqViscosity::solveFluxViscosityWall ( const Coord velocityLeft,
const double &  muMixLeft,
const double &  distLeft 
) const

Solve the viscosity flux at a boundary with a wall type.

Parameters
velocityLeftvelocity of the left cell
muMixLeftdynamic viscosity of the mixture of the left cell
distLeftdistance between the center of the left cell and its corresponding edge

Member Data Documentation

◆ m_binormal

Coord APUEqViscosity::m_binormal
private

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

◆ m_gradULeft

Coord APUEqViscosity::m_gradULeft
private

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

◆ m_gradURight

Coord APUEqViscosity::m_gradURight
private

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

◆ m_gradVLeft

Coord APUEqViscosity::m_gradVLeft
private

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

◆ m_gradVRight

Coord APUEqViscosity::m_gradVRight
private

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

◆ m_gradWLeft

Coord APUEqViscosity::m_gradWLeft
private

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

◆ m_gradWRight

Coord APUEqViscosity::m_gradWRight
private

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

◆ m_muk

double* APUEqViscosity::m_muk
private

Dynamic viscosity (kg/m/s or Pa.s) of each phase (taken from the EOS classes) (buffer)

◆ m_normal

Coord APUEqViscosity::m_normal
private

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

◆ m_numQPA

int APUEqViscosity::m_numQPA
private

Number of the associated variable for each cell (m_vecGrandeursAddPhys)

◆ m_tangent

Coord APUEqViscosity::m_tangent
private

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

◆ m_tensorLeft

Tensor APUEqViscosity::m_tensorLeft
private

Left tensor of the velocity gradients (buffer)

◆ m_tensorRight

Tensor APUEqViscosity::m_tensorRight
private

Right tensor of the velocity gradients (buffer)

◆ m_velocityLeft

Coord APUEqViscosity::m_velocityLeft
private

Left velocity vector for the flux computation (buffer)

◆ m_velocityRight

Coord APUEqViscosity::m_velocityRight
private

Right velocity vector for the flux computation (buffer)


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