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

Flux class for the non-equilibrium system of equations. More...

#include <FluxNEq.h>

Inherits Flux.

Inherited by FluxNEqDEM, FluxNEqHLL, FluxNEqHLLAC, FluxNEqHLLBN, and FluxNEqHLLC4Waves.

Collaboration diagram for FluxNEq:
[legend]

Public Member Functions

 FluxNEq (const int &numbPhases)
 ~FluxNEq () 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 *) 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.
virtual void setToZero () override
 set each attribute of the flux to zero
virtual void addNonCons (double, const Cell *, const Coord &, const Coord &, const Coord &) override
 Add non conservative term to the flux.
virtual void subtractNonCons (double, const Cell *, const Coord &, const Coord &, const Coord &) override
 Subtract non conservative term to the flux.
virtual void addSymmetricTerms (Phase **phases, Mixture *mixture, const double &r, const double &v) override
 Adds a geometric source term to simulate symmetry along one axis (cylindrical axisymmetry) or two axes (spherical axisymmetry).
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 int &numPhase) const override
void setCons (const Flux *cons) override
Public Member Functions inherited from Flux
 Flux ()
virtual ~Flux ()
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 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 prepSourceTermsPlaneWave (const Cell *, const double &, const Coord &)
 This prepares Plane-Gaussian-pulse and Plane-Sinusoidal-pulse source terms.
virtual void addFluxSmooth1D (double, const Coord &, Cell *)
 Compute additionnal flux for 1D geometry with smooth varying cross sectionFlux).
virtual void substractFluxSmooth1D (double, const Coord &, Cell *)
 Compute additionnal flux for 1D geometry with smooth varying cross section.
virtual void addNonConsMrfFlux (Phase **)
virtual const double & getEnergyMix () const
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
virtual const Coord & getEqVectorP () const

Protected Attributes

double * m_alpha
 volume fraction array
double * m_mass
 mass array
double * m_energ
 specific total energy array
Coord * m_momentum
 momentum array
double m_uI
 interfacial velocity
double m_pI
 interfacial pressure
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 ModNEq
class APUEqSurfaceTension
class APUEqViscosity
class APUEqConductivity
class RiemannSolverHLLC
 RiemannSolverHLLC need to access to flux variables to solve discontinuity problem.
class RiemannSolverExact
 RiemannSolverExact need to access to flux variables to solve discontinuity problem.
class ModNEqHLL
class ModNEqHLLAC
class ModNEqHLLC4Waves

Detailed Description

Flux class for the non-equilibrium system of equations.

Constructor & Destructor Documentation

◆ FluxNEq()

FluxNEq::FluxNEq ( const int & numbPhases)
Here is the caller graph for this function:

◆ ~FluxNEq()

FluxNEq::~FluxNEq ( )
override

Member Function Documentation

◆ addFlux() [1/2]

void FluxNEq::addFlux ( double )
overridevirtual

Add flux to the corresponding model flux.

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

Reimplemented from Flux.

Here is the call graph for this function:

◆ addFlux() [2/2]

void FluxNEq::addFlux ( Flux * )
overridevirtual

Add flux passed in parameter to the correspond model flux.

Parameters
fluxflux to add to the current one

Reimplemented from Flux.

Here is the call graph for this function:

◆ addFluxRotatingRegion()

void FluxNEq::addFluxRotatingRegion ( double )
overridevirtual

Add flux to the rotating region in MRF context.

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

Reimplemented from Flux.

Here is the call graph for this function:

◆ addNonCons()

virtual void FluxNEq::addNonCons ( double ,
const Cell * ,
const Coord & ,
const Coord & ,
const Coord &  )
inlineoverridevirtual

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.

Reimplemented in FluxNEqDEM, FluxNEqHLL, FluxNEqHLLAC, FluxNEqHLLBN, and FluxNEqHLLC4Waves.

Here is the call graph for this function:

◆ addSymmetricTerms()

void FluxNEq::addSymmetricTerms ( Phase ** phases,
Mixture * mixture,
const double & r,
const double & v )
overridevirtual

Adds a geometric source term to simulate symmetry along one axis (cylindrical axisymmetry) or two axes (spherical axisymmetry).

Parameters
phasesPhases of the cell.
mixtureMixture variables of the cell.
rRadial distance from the symmetry axis.
vCoefficient determining the type of symmetry.

Reimplemented from Flux.

Here is the call graph for this function:

◆ buildCons()

void FluxNEq::buildCons ( Phase ** ,
Mixture *  )
overridevirtual

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.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ buildPrim()

void FluxNEq::buildPrim ( Phase ** ,
Mixture *  )
overridevirtual

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

Parameters
phasesPhases array to fill
mixtureMixture to fill

Reimplemented from Flux.

Here is the call graph for this function:

◆ getAlpha()

const double & FluxNEq::getAlpha ( const int & numPhase) const
inlineoverridevirtual

Reimplemented from Flux.

Here is the caller graph for this function:

◆ getEnergy()

const double & FluxNEq::getEnergy ( const int & numPhase) const
inlineoverridevirtual

Reimplemented from Flux.

Here is the caller graph for this function:

◆ getMass()

const double & FluxNEq::getMass ( const int & numPhase) const
inlineoverridevirtual

Reimplemented from Flux.

◆ getMomentum()

const Coord & FluxNEq::getMomentum ( const int & numPhase) const
inlineoverridevirtual

Reimplemented from Flux.

◆ multiply()

void FluxNEq::multiply ( double )
overridevirtual

multiply the flux of the corresponding model by a constant

Parameters
scalarconstant

Reimplemented from Flux.

◆ printFlux()

void FluxNEq::printFlux ( ) const
overridevirtual

Reimplemented from Flux.

◆ setBufferFlux()

void FluxNEq::setBufferFlux ( Cell & )
overridevirtual

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.

Here is the call graph for this function:

◆ setCons()

void FluxNEq::setCons ( const Flux * cons)
overridevirtual

Reimplemented from Flux.

Here is the call graph for this function:

◆ setToZero()

void FluxNEq::setToZero ( )
overridevirtual

set each attribute of the flux to zero

Reimplemented from Flux.

Reimplemented in FluxNEqDEM, FluxNEqHLL, FluxNEqHLLAC, FluxNEqHLLBN, and FluxNEqHLLC4Waves.

◆ subtractFlux()

void FluxNEq::subtractFlux ( double )
overridevirtual

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.

Here is the call graph for this function:

◆ subtractFluxRotatingRegion()

void FluxNEq::subtractFluxRotatingRegion ( double )
overridevirtual

Subtract flux to the rotating region in MRF context.

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

Reimplemented from Flux.

Here is the call graph for this function:

◆ subtractNonCons()

virtual void FluxNEq::subtractNonCons ( double ,
const Cell * ,
const Coord & ,
const Coord & ,
const Coord &  )
inlineoverridevirtual

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.

Reimplemented in FluxNEqDEM, FluxNEqHLL, FluxNEqHLLAC, FluxNEqHLLBN, and FluxNEqHLLC4Waves.

Here is the call graph for this function:

◆ APUEqConductivity

friend class APUEqConductivity
friend

◆ APUEqSurfaceTension

friend class APUEqSurfaceTension
friend

◆ APUEqViscosity

friend class APUEqViscosity
friend

◆ ModNEq

friend class ModNEq
friend

◆ ModNEqHLL

friend class ModNEqHLL
friend

◆ ModNEqHLLAC

friend class ModNEqHLLAC
friend

◆ ModNEqHLLC4Waves

friend class ModNEqHLLC4Waves
friend

◆ RiemannSolverExact

friend class RiemannSolverExact
friend

RiemannSolverExact need to access to flux variables to solve discontinuity problem.

◆ RiemannSolverHLLC

friend class RiemannSolverHLLC
friend

RiemannSolverHLLC need to access to flux variables to solve discontinuity problem.

Member Data Documentation

◆ m_alpha

double* FluxNEq::m_alpha
protected

volume fraction array

◆ m_energ

double* FluxNEq::m_energ
protected

specific total energy array

◆ m_mass

double* FluxNEq::m_mass
protected

mass array

◆ m_momentum

Coord* FluxNEq::m_momentum
protected

momentum array

◆ m_pI

double FluxNEq::m_pI
protected

interfacial pressure

◆ m_uI

double FluxNEq::m_uI
protected

interfacial velocity


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