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

General class for surface tension for the velocity-equilibrium system of equations. More...

#include <APUEqSurfaceTension.h>

Inherits APUEq.

Collaboration diagram for APUEqSurfaceTension:
[legend]

Public Member Functions

 APUEqSurfaceTension (tinyxml2::XMLElement *element, int &numberQPA, std::vector< std::string > nameTransports, std::vector< std::string > namePhases, std::string nameFichier="Unknown file")
 ~APUEqSurfaceTension () override
void addQuantityAddPhys (Cell *cell) override
 Add the quantities for the additional physics.
double computeEnergyAddPhys (QuantitiesAddPhys *QPA) override
 Compute and send back mass energy linked to the physics (0 if no linked energy).
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 solveFluxSurfaceTensionInner (const Coord &velocityLeft, const Coord &velocityRight, const Coord &gradCLeft, const Coord &gradCRight) const
 Solve the surface-tension flux between two cells.
void solveFluxSurfaceTensionNonReflecting (const Coord &velocityLeft, const Coord &gradCLeft) const
 Solve the surface-tension flux at a boundary with an non-reflecting type.
void solveFluxSurfaceTensionWall (const Coord &gradCLeft) const
 Solve the surface-tension flux at a boundary with a wall type.
void solveFluxSurfaceTensionInletInjStagState () const
 Solve the surface-tension flux at a boundary with an inlet injection using stagnation state type.
void solveFluxSurfaceTensionOutletPressure () const
 Solve the surface-tension flux at a boundary with an outlet at imposed pressure type.
void solveFluxSurfaceTensionOther () const
 Solve the surface-tension 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 *cell) override
 Add the symmetrical terms of the corresponding additional physics in a cell (when radial axis is on X).
void addSymmetricTermsRadialAxisOnY (Cell *cell) override
 Add the symmetrical terms of the corresponding additional physics in a cell (when radial axis is on Y).
void reinitializeColorFunction (std::vector< Cell * > *cellsLvl, const int &lvl) override
 Reinitialize the color function for the surface-tension terms with the volume fraction equation.
bool reinitializationActivated () override
 Send back true if the reinitialization of the color function is activated.
void communicationsAddPhys (const int &dim, const int &lvl) override
 Communication of the additional physics quantities for parallel purposes with Adaptive Mesh Refinement.
const int & getNumTransportAssociated () const override
 Return the associated number of the transport equation (only used for surface tension).
Public Member Functions inherited from APUEq
 APUEq ()
 ~APUEq () override
Public Member Functions inherited from AddPhys
 AddPhys ()
virtual ~AddPhys ()
virtual std::string whoAmI () const
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 computeTurbulenceParameters () const
 Print the diagnostics for turbulence decay cases.

Private Attributes

std::string m_nameTransportAssociated
 Name of the associated variable for each cell (m_vecTransports).
int m_numTransportAssociated
 Number of the associated variable for each cell (m_vecTransports).
int m_numQPAGradC
 Number of the associated variable for each cell (m_vecGrandeursAddPhys).
double m_sigma
 Surface tension coefficient.
bool m_reinitializationActivated
 Reinitialization of the transported variable with the volume fraction of a phase.
std::string m_namePhaseAssociated
 Name of the associated variable for each cell (m_vecPhases).
int m_numPhaseAssociated
 Number of the associated variable for each cell (m_vecPhases).
Coord m_velocityLeft
 Left velocity vector for the flux computation (buffer).
Coord m_gradCLeft
 Left gradient of the color function for the flux computation (buffer).
Coord m_velocityRight
 Right velocity vector for the flux computation (buffer).
Coord m_gradCRight
 Right gradient of the color function vector for the flux computation (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 surface tension for the velocity-equilibrium system of equations.

Constructor & Destructor Documentation

◆ APUEqSurfaceTension()

APUEqSurfaceTension::APUEqSurfaceTension ( tinyxml2::XMLElement * element,
int & numberQPA,
std::vector< std::string > nameTransports,
std::vector< std::string > namePhases,
std::string nameFichier = "Unknown file" )

APUEqSurfaceTension constructor from a read in XML format ex : <dataSurfaceTension transport="color1" sigma="800.">

Here is the call graph for this function:

◆ ~APUEqSurfaceTension()

APUEqSurfaceTension::~APUEqSurfaceTension ( )
override

Member Function Documentation

◆ addNonCons()

void APUEqSurfaceTension::addNonCons ( Cell * )
inlineoverridevirtual

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

Parameters
cellcell

Reimplemented from AddPhys.

◆ addQuantityAddPhys()

void APUEqSurfaceTension::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 APUEqSurfaceTension::addSymmetricTermsRadialAxisOnX ( Cell * )
overridevirtual

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 APUEqSurfaceTension::addSymmetricTermsRadialAxisOnY ( Cell * )
overridevirtual

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 APUEqSurfaceTension::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.

◆ computeEnergyAddPhys()

double APUEqSurfaceTension::computeEnergyAddPhys ( QuantitiesAddPhys * )
overridevirtual

Compute and send back mass energy linked to the physics (0 if no linked energy).

Parameters
QPAcorresponding additional physics quantities

Reimplemented from AddPhys.

◆ getNumTransportAssociated()

const int & APUEqSurfaceTension::getNumTransportAssociated ( ) const
inlineoverridevirtual

Return the associated number of the transport equation (only used for surface tension).

Reimplemented from AddPhys.

◆ reinitializationActivated()

bool APUEqSurfaceTension::reinitializationActivated ( )
inlineoverridevirtual

Send back true if the reinitialization of the color function is activated.

Reimplemented from AddPhys.

◆ reinitializeColorFunction()

void APUEqSurfaceTension::reinitializeColorFunction ( std::vector< Cell * > * ,
const int &  )
overridevirtual

Reinitialize the color function for the surface-tension terms with the volume fraction equation.

Parameters
cellsLvlcells vector for every level
lvllevel

Reimplemented from AddPhys.

◆ solveFluxAddPhys()

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

◆ solveFluxSurfaceTensionInletInjStagState()

void APUEqSurfaceTension::solveFluxSurfaceTensionInletInjStagState ( ) const

Solve the surface-tension flux at a boundary with an inlet injection using stagnation state type.

Here is the caller graph for this function:

◆ solveFluxSurfaceTensionInner()

void APUEqSurfaceTension::solveFluxSurfaceTensionInner ( const Coord & velocityLeft,
const Coord & velocityRight,
const Coord & gradCLeft,
const Coord & gradCRight ) const

Solve the surface-tension flux between two cells.

Parameters
velocityLeftvelocity of the left cell
velocityRightvelocity of the right cell
gradCLeftcolor function gradient of the left cell
gradCRightcolor function gradient of the right cell
Here is the call graph for this function:
Here is the caller graph for this function:

◆ solveFluxSurfaceTensionNonReflecting()

void APUEqSurfaceTension::solveFluxSurfaceTensionNonReflecting ( const Coord & velocityLeft,
const Coord & gradCLeft ) const

Solve the surface-tension flux at a boundary with an non-reflecting type.

Parameters
velocityLeftvelocity of the left cell
gradCLeftcolor function gradient of the left cell
Here is the call graph for this function:
Here is the caller graph for this function:

◆ solveFluxSurfaceTensionOther()

void APUEqSurfaceTension::solveFluxSurfaceTensionOther ( ) const

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

Here is the caller graph for this function:

◆ solveFluxSurfaceTensionOutletPressure()

void APUEqSurfaceTension::solveFluxSurfaceTensionOutletPressure ( ) const

Solve the surface-tension flux at a boundary with an outlet at imposed pressure type.

Here is the caller graph for this function:

◆ solveFluxSurfaceTensionWall()

void APUEqSurfaceTension::solveFluxSurfaceTensionWall ( const Coord & gradCLeft) const

Solve the surface-tension flux at a boundary with a wall type.

Parameters
gradCLeftcolor function gradient of the left cell
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ m_binormal

Coord APUEqSurfaceTension::m_binormal
private

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

◆ m_gradCLeft

Coord APUEqSurfaceTension::m_gradCLeft
private

Left gradient of the color function for the flux computation (buffer).

◆ m_gradCRight

Coord APUEqSurfaceTension::m_gradCRight
private

Right gradient of the color function vector for the flux computation (buffer).

◆ m_namePhaseAssociated

std::string APUEqSurfaceTension::m_namePhaseAssociated
private

Name of the associated variable for each cell (m_vecPhases).

◆ m_nameTransportAssociated

std::string APUEqSurfaceTension::m_nameTransportAssociated
private

Name of the associated variable for each cell (m_vecTransports).

◆ m_normal

Coord APUEqSurfaceTension::m_normal
private

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

◆ m_numPhaseAssociated

int APUEqSurfaceTension::m_numPhaseAssociated
private

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

◆ m_numQPAGradC

int APUEqSurfaceTension::m_numQPAGradC
private

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

◆ m_numTransportAssociated

int APUEqSurfaceTension::m_numTransportAssociated
private

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

◆ m_reinitializationActivated

bool APUEqSurfaceTension::m_reinitializationActivated
private

Reinitialization of the transported variable with the volume fraction of a phase.

◆ m_sigma

double APUEqSurfaceTension::m_sigma
private

Surface tension coefficient.

◆ m_tangent

Coord APUEqSurfaceTension::m_tangent
private

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

◆ m_velocityLeft

Coord APUEqSurfaceTension::m_velocityLeft
private

Left velocity vector for the flux computation (buffer).

◆ m_velocityRight

Coord APUEqSurfaceTension::m_velocityRight
private

Right velocity vector for the flux computation (buffer).


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