ECOGEN 6.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.

Collaboration diagram for FluxPUEq:
[legend]

Public Member Functions

 FluxPUEq (const int &numbPhases)
 ~FluxPUEq () override
void addNonCons (double coefA, const Cell *cell, const Coord &, const Coord &, const Coord &) override
 Add non conservative term to the flux.
void subtractNonCons (double coefA, const Cell *cell, const Coord &, const Coord &, const Coord &) override
 Subtract non conservative term to the flux.
void schemeCorrection (Cell &) const override
void correctionEnergy (Cell *cell, Prim type=vecPhases) const override
 Method to correct energy in non conservative models using total energy conservation.
Public Member Functions inherited from FluxUEq
 FluxUEq (const int &numbPhases)
 ~FluxUEq () override
void printFlux () const override
void addFlux (double coefA) override
 Add flux to the corresponding model flux.
void addFlux (Flux *flux) override
 Add flux passed in parameter to the correspond model flux.
void subtractFlux (double coefA) override
 Subtract flux to the corresponding model buffer flux.
void addFluxRotatingRegion (double coefA) override
 Add flux to the rotating region in MRF context.
void subtractFluxRotatingRegion (double coefA) override
 Subtract flux to the rotating region in MRF context.
void multiply (double scalar) override
 multiply the flux of the corresponding model by a constant
void setBufferFlux (Cell &cell) override
 Temporary store the conservative variables of a given cell.
void buildCons (Phase **phases, Mixture *mixture) override
 Build the conservative variables for a given cell from primitive one.
void buildPrim (Phase **phases, Mixture *mixture) override
 Build the primitive variables for a given cell from conservative one.
void setToZero () override
 set each attribute of the flux to zero
void addNonCons (double coefA, const Cell *cell, const Coord &, const Coord &, const Coord &) override
 Add non conservative term to the flux.
void subtractNonCons (double coefA, const Cell *cell, const Coord &, const Coord &, const Coord &) override
 Subtract non conservative term to the flux.
void schemeCorrection (Cell &cell) const override
void addFluxSmooth1D (double coefA, const Coord &normal, Cell *cell) override
 Compute additionnal flux for 1D geometry with smooth varying cross sectionFlux).
void substractFluxSmooth1D (double coefA, const Coord &normal, Cell *cell) override
 Compute additionnal flux for 1D geometry with smooth varying cross section.
void addSymmetricTerms (Phase **phases, Mixture *mixture, const double &r, const double &v) override
 Add symetric terms.
void prepSourceTermsGravity (const Coord &g) override
 Gravity source term.
void prepSourceTermsHeating (const double &q) override
 Heating source term.
void prepSourceTermsMRF (Cell *cell, const Coord &omega) override
 MRF source term.
void prepSourceTermsPlaneWave (const Cell *cell, const double &sourceMomentum, const Coord &pulseDirection) override
 This prepares Plane-Gaussian-pulse and Plane-Sinusoidal-pulse source terms.
void addNonConsMrfFlux (Phase **phases) override
const double & getAlpha (const int &numPhase) const override
const double & getMass (const int &numPhase) const override
const double & getEnergy (const int &numPhase) const override
const Coord & getMomentum () const override
const double & getEnergyMix () const override
void setCons (const Flux *cons) override
Public Member Functions inherited from Flux
 Flux ()
virtual ~Flux ()
virtual const double & getMassMix () const
virtual const double & getEqOmega () const
virtual const double & getEqDensitySurEta () const
virtual const double & getTotEnergy (const int &) const
virtual const double & getLambda (const int &) const
virtual const Tensor & getCobase (const int &) const
virtual const Coord & getMomentum (const int &) const
virtual const Coord & getEqVectorP () 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
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)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ~FluxPUEq()

FluxPUEq::~FluxPUEq ( )
override

Member Function Documentation

◆ addNonCons()

void FluxPUEq::addNonCons ( double ,
const Cell * ,
const Coord & ,
const Coord & ,
const Coord &  )
overridevirtual

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.

Here is the call graph for this function:

◆ correctionEnergy()

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

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.

Here is the call graph for this function:

◆ schemeCorrection()

void FluxPUEq::schemeCorrection ( Cell & ) const
inlineoverridevirtual

Reimplemented from Flux.

◆ subtractNonCons()

void FluxPUEq::subtractNonCons ( double ,
const Cell * ,
const Coord & ,
const Coord & ,
const Coord &  )
overridevirtual

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.

Here is the call graph for this function:

◆ ModPUEq

friend class ModPUEq
friend

The documentation for this class was generated from the following files:
  • /home/runner/work/ECOGEN/ECOGEN/doc_sources/src/Models/PUEq/FluxPUEq.h
  • /home/runner/work/ECOGEN/ECOGEN/doc_sources/src/Models/PUEq/FluxPUEq.cpp