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

Flux class for the pressure-velocity-equilibrium (mechanical equilibrium) system of equations (Kapila) More...

#include <FluxPUEq.h>

Inherits FluxUEq.

Public Member Functions

 FluxPUEq (const int &numbPhases)
 
virtual ~FluxPUEq ()
 
virtual void addNonCons (double coefA, const Cell *cell, const Coord &, const Coord &, const Coord &)
 Add non conservative term to the flux.
 
virtual void subtractNonCons (double coefA, const Cell *cell, const Coord &, const Coord &, const Coord &)
 Subtract non conservative term to the flux.
 
virtual void schemeCorrection (Cell &) const
 
virtual void correctionEnergy (Cell *cell, Prim type=vecPhases) const
 Method to correct energy in non conservative models using total energy conservation.
 
- Public Member Functions inherited from FluxUEq
 FluxUEq (const int &numbPhases)
 
virtual ~FluxUEq ()
 
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 addFluxRotatingRegion (double coefA)
 Add flux to the rotating region in MRF context.
 
virtual void subtractFluxRotatingRegion (double coefA)
 Subtract flux to the rotating region in MRF context.
 
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 **phases, Mixture *mixture)
 Build the conservative variables for a given cell from primitive one.
 
virtual void buildPrim (Phase **phases, 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 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 void addSymmetricTerms (Phase **phases, Mixture *mixture, const double &r, const double &v)
 Add symetric terms.
 
virtual void prepSourceTermsGravity (const Coord &g)
 Gravity source term.
 
virtual void prepSourceTermsHeating (const double &q)
 Heating source term.
 
virtual void prepSourceTermsMRF (Cell *cell, const Coord &omega)
 MRF source term.
 
virtual void addNonConsMrfFlux (Phase **phases)
 
virtual const double & getAlpha (const int &numPhase) const
 
virtual const double & getMass (const int &numPhase) const
 
virtual const double & getEnergy (const int &numPhase) const
 
virtual const CoordgetMomentum () const
 
virtual const double & getEnergyMix () const
 
virtual void setCons (const Flux *cons)
 
- Public Member Functions inherited from Flux
 Flux ()
 
virtual ~Flux ()
 
virtual const double & getMassMix () const
 
virtual const double & getEqOmega () const
 
virtual const double & getEqEta () 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
 

Friends

class ModPUEq
 

Additional Inherited Members

- Protected Attributes inherited from FluxUEq
double * m_alpha
 volume fraction array
 
double * m_mass
 mass array
 
double * m_energ
 specific internal energy array (may contain compaction energy for UEqSolid model)
 
Coord m_momentum
 momentum array
 
double m_energMixture
 mixture 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!
 

Detailed Description

Flux class for the pressure-velocity-equilibrium (mechanical equilibrium) system of equations (Kapila)

Constructor & Destructor Documentation

◆ FluxPUEq()

FluxPUEq::FluxPUEq ( const int &  numbPhases)

◆ ~FluxPUEq()

FluxPUEq::~FluxPUEq ( )
virtual

Member Function Documentation

◆ addNonCons()

void FluxPUEq::addNonCons ( double  ,
const Cell ,
const Coord ,
const Coord ,
const Coord  
)
virtual

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 FluxUEq.

◆ correctionEnergy()

void FluxPUEq::correctionEnergy ( Cell ,
Prim  = vecPhases 
) const
virtual

Method to correct energy in non conservative models using total energy conservation.

Parameters
cellcell to correct
typeenumeration allowing to correct either state in the cell or second order half time step state

Reimplemented from Flux.

◆ schemeCorrection()

virtual void FluxPUEq::schemeCorrection ( Cell ) const
inlinevirtual

Reimplemented from FluxUEq.

◆ subtractNonCons()

void FluxPUEq::subtractNonCons ( double  ,
const Cell ,
const Coord ,
const Coord ,
const Coord  
)
virtual

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 FluxUEq.

Friends And Related Symbol Documentation

◆ ModPUEq

friend class ModPUEq
friend

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