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

Model class for Homogeneous Euler Flux (liquid-vapor in thermodynamical equilibrium) More...

#include <FluxEulerHomogeneous.h>

Inherits Flux.

Public Member Functions

 FluxEulerHomogeneous ()
 
virtual ~FluxEulerHomogeneous ()
 
virtual void printFlux () const
 
virtual void addFlux (double coefA)
 Add flux to the corresponding model flux.
 
virtual void addFlux (Flux *flux)
 Add flux passed in parameter to the correspond model flux.
 
virtual void subtractFlux (double coefA)
 Subtract flux to the corresponding model buffer flux.
 
virtual void multiply (double scalar)
 multiply the flux of the corresponding model by a constant
 
virtual void setBufferFlux (Cell &cell)
 Temporary store the conservative variables of a given cell.
 
virtual void buildCons (Phase **phase, Mixture *mixture)
 Build the conservative variables for a given cell from primitive one.
 
virtual void buildPrim (Phase **phase, Mixture *mixture)
 Build the primitive variables for a given cell from conservative one.
 
virtual void setToZero ()
 set each attribute of the flux to zero
 
virtual void addNonCons (double, const Cell *, const Coord &, const Coord &, const Coord &)
 Add non conservative term to the flux.
 
virtual void subtractNonCons (double, const Cell *, const Coord &, const Coord &, const Coord &)
 Subtract non conservative term to the flux.
 
virtual void addFluxSmooth1D (double coefA, const Coord &normal, Cell *cell)
 Compute additionnal flux for 1D geometry with smooth varying cross sectionFlux).
 
virtual void substractFluxSmooth1D (double coefA, const Coord &normal, Cell *cell)
 Compute additionnal flux for 1D geometry with smooth varying cross section.
 
virtual const CoordgetMomentum () const
 
virtual const double & getMassMix () const
 
virtual const double & getEnergyMix () const
 
virtual void setCons (const Flux *cons)
 
- Public Member Functions inherited from Flux
 Flux ()
 
virtual ~Flux ()
 
virtual void addFluxRotatingRegion (double)
 Add flux to the rotating region in MRF context.
 
virtual void subtractFluxRotatingRegion (double)
 Subtract flux to the rotating region in MRF context.
 
virtual void correctionEnergy (Cell *, Prim=vecPhases) const
 Method to correct energy in non conservative models using total energy conservation.
 
virtual void schemeCorrection (Cell &) const
 
virtual void addSymmetricTerms (Phase **, Mixture *, const double &, const double &)
 Add symetric terms.
 
virtual void prepSourceTermsGravity (const Coord &)
 Gravity source term.
 
virtual void prepSourceTermsHeating (const double &)
 Heating source term.
 
virtual void prepSourceTermsMRF (Cell *, const Coord &)
 MRF source term.
 
virtual void addNonConsMrfFlux (Phase **)
 
virtual const double & getAlpha (const int &) const
 
virtual const double & getMass (const int &) const
 
virtual const double & getEqOmega () const
 
virtual const double & getEqEta () const
 
virtual const double & getEnergy (const int &) const
 
virtual const double & getTotEnergy (const int &) const
 
virtual const double & getLambda (const int &) const
 
virtual const TensorgetCobase (const int &) const
 
virtual const CoordgetEqVectorP () const
 

Protected Attributes

double m_mass
 mass
 
Coord m_momentum
 momentum
 
double m_energ
 total energy
 
- Protected Attributes inherited from Flux
double m_sM
 Fluid velocity for intercell interfaces.
 
double m_uStar
 Velocity solution of the Riemann problem !VERY IMPORTANT! DO NOT ERASE!
 

Friends

class ModEulerHomogeneous
 

Detailed Description

Model class for Homogeneous Euler Flux (liquid-vapor in thermodynamical equilibrium)

Constructor & Destructor Documentation

◆ FluxEulerHomogeneous()

FluxEulerHomogeneous::FluxEulerHomogeneous ( )

◆ ~FluxEulerHomogeneous()

FluxEulerHomogeneous::~FluxEulerHomogeneous ( )
virtual

Member Function Documentation

◆ addFlux() [1/2]

void FluxEulerHomogeneous::addFlux ( double  )
virtual

Add flux to the corresponding model flux.

Parameters
coefApossibility to multiply the flux before adding (set 1.d0 if not needed)

Reimplemented from Flux.

◆ addFlux() [2/2]

void FluxEulerHomogeneous::addFlux ( Flux )
virtual

Add flux passed in parameter to the correspond model flux.

Parameters
fluxflux to add to the current one

Reimplemented from Flux.

◆ addFluxSmooth1D()

void FluxEulerHomogeneous::addFluxSmooth1D ( double  ,
const Coord ,
Cell  
)
virtual

Compute additionnal flux for 1D geometry with smooth varying cross sectionFlux).

Reimplemented from Flux.

◆ addNonCons()

virtual void FluxEulerHomogeneous::addNonCons ( double  ,
const Cell ,
const Coord ,
const Coord ,
const Coord  
)
inlinevirtual

Add non conservative term to the flux.

Parameters
coefApossibility to multiply the non conservative term before adding (set 1.d0 if not needed)
cellreference cell used to approximate the non conservative term
normalnormal vector of the treated face
tangenttangent vector of the treated face
binormalbinormal vector of the treated face

Reimplemented from Flux.

◆ buildCons()

void FluxEulerHomogeneous::buildCons ( Phase **  ,
Mixture  
)
virtual

Build the conservative variables for a given cell from primitive one.

Parameters
phasesPhases array used for conservative variables calculus
mixtureMixture used for conservative variables calculus

Reimplemented from Flux.

◆ buildPrim()

void FluxEulerHomogeneous::buildPrim ( Phase **  ,
Mixture  
)
virtual

Build the primitive variables for a given cell from conservative one.

Parameters
phasesPhases array to fill
mixtureMixture to fill

Reimplemented from Flux.

◆ getEnergyMix()

virtual const double & FluxEulerHomogeneous::getEnergyMix ( ) const
inlinevirtual

Reimplemented from Flux.

◆ getMassMix()

virtual const double & FluxEulerHomogeneous::getMassMix ( ) const
inlinevirtual

Reimplemented from Flux.

◆ getMomentum()

virtual const Coord & FluxEulerHomogeneous::getMomentum ( ) const
inlinevirtual

Reimplemented from Flux.

◆ multiply()

void FluxEulerHomogeneous::multiply ( double  )
virtual

multiply the flux of the corresponding model by a constant

Parameters
scalarconstant

Reimplemented from Flux.

◆ printFlux()

void FluxEulerHomogeneous::printFlux ( ) const
virtual

Reimplemented from Flux.

◆ setBufferFlux()

void FluxEulerHomogeneous::setBufferFlux ( Cell )
virtual

Temporary store the conservative variables of a given cell.

The conservatvie variables are temporary stored in the corresponding model buffer flux

Parameters
cellcell used for conservative variables calculus

Reimplemented from Flux.

◆ setCons()

void FluxEulerHomogeneous::setCons ( const Flux cons)
virtual

Reimplemented from Flux.

◆ setToZero()

void FluxEulerHomogeneous::setToZero ( )
virtual

set each attribute of the flux to zero

Reimplemented from Flux.

◆ substractFluxSmooth1D()

void FluxEulerHomogeneous::substractFluxSmooth1D ( double  ,
const Coord ,
Cell  
)
virtual

Compute additionnal flux for 1D geometry with smooth varying cross section.

Reimplemented from Flux.

◆ subtractFlux()

void FluxEulerHomogeneous::subtractFlux ( double  )
virtual

Subtract flux to the corresponding model buffer flux.

Parameters
coefApossibility to multiply the flux before subtraction (set 1.d0 if not needed)

Reimplemented from Flux.

◆ subtractNonCons()

virtual void FluxEulerHomogeneous::subtractNonCons ( double  ,
const Cell ,
const Coord ,
const Coord ,
const Coord  
)
inlinevirtual

Subtract non conservative term to the flux.

Parameters
coefApossibility to multiply the non conservative term before subtraction (set 1.d0 if not needed)
cellreference cell used to approximate the non conservative term
normalnormal vector of the treated face
tangenttangent vector of the treated face
binormalbinormal vector of the treated face

Reimplemented from Flux.

Friends And Related Symbol Documentation

◆ ModEulerHomogeneous

friend class ModEulerHomogeneous
friend

Member Data Documentation

◆ m_energ

double FluxEulerHomogeneous::m_energ
protected

total energy

◆ m_mass

double FluxEulerHomogeneous::m_mass
protected

mass

◆ m_momentum

Coord FluxEulerHomogeneous::m_momentum
protected

momentum


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