31#ifndef CELLINTERFACE_H
32#define CELLINTERFACE_H
37#include "../Models/Model.h"
38#include "../Models/Flux.h"
39#include "../Maths/Coord.h"
40#include "../Meshes/Face.h"
41#include "../Meshes/FaceCartesian.h"
42#include "../AdditionalPhysics/AddPhys.h"
45#include "../Sources/Source.h"
47enum BO2 {
BG1M,
BG2M,
BG3M,
BG1P,
BG2P,
BG3P,
BD1M,
BD2M,
BD3M,
BD1P,
BD2P,
BD3P };
48enum betaO2 {
betaG1M,
betaG2M,
betaG3M,
betaG1P,
betaG2P,
betaG3P,
betaD1M,
betaD2M,
betaD3M,
betaD1P,
betaD2P,
betaD3P };
68 virtual void addFlux(
const double& coefAMR);
74 virtual int whoAmI()
const {
return 0; };
106 virtual void computeXi(
const double& criteriaVar,
const bool& varRho,
const bool& varP,
const bool& varU,
const bool& varAlpha);
112 virtual void raffineCellInterfaceExterne(
const int& nbCellsY,
const int& nbCellsZ,
const double& dXParent,
const double& dYParent,
const double& dZParent,
Cell* cellRef,
const int& dim);
Cell * bufferCellLeft
Definition CellInterface.cpp:35
betaO2
Definition CellInterface.h:48
@ betaG1M
Definition CellInterface.h:48
@ betaG3P
Definition CellInterface.h:48
@ betaG2M
Definition CellInterface.h:48
@ betaG1P
Definition CellInterface.h:48
@ betaD2M
Definition CellInterface.h:48
@ betaD2P
Definition CellInterface.h:48
@ betaG3M
Definition CellInterface.h:48
@ betaD3P
Definition CellInterface.h:48
@ betaD1P
Definition CellInterface.h:48
@ betaD1M
Definition CellInterface.h:48
@ betaG2P
Definition CellInterface.h:48
@ betaD3M
Definition CellInterface.h:48
BO2
Definition CellInterface.h:47
@ BG2P
Definition CellInterface.h:47
@ BG2M
Definition CellInterface.h:47
@ BD3M
Definition CellInterface.h:47
@ BG3M
Definition CellInterface.h:47
@ BG1M
Definition CellInterface.h:47
@ BD1M
Definition CellInterface.h:47
@ BD1P
Definition CellInterface.h:47
@ BG1P
Definition CellInterface.h:47
@ BD2M
Definition CellInterface.h:47
@ BD2P
Definition CellInterface.h:47
@ BD3P
Definition CellInterface.h:47
@ BG3P
Definition CellInterface.h:47
distanceHO2
Definition CellInterface.h:49
@ distanceHGM
Definition CellInterface.h:49
@ distanceHDP
Definition CellInterface.h:49
@ distanceHDM
Definition CellInterface.h:49
@ distanceHGP
Definition CellInterface.h:49
Cell * bufferCellRight
Definition CellInterface.cpp:36
General class for additional physics.
Definition AddPhys.h:46
Definition CellInterface.h:52
void setFace(Face *face)
Definition CellInterface.cpp:85
Face * m_face
Definition CellInterface.h:126
virtual const int & getNumPhys() const
Definition CellInterface.h:100
virtual Transport * getSlopesTransport(const int &) const
Definition CellInterface.h:86
Cell * getCellLeft() const
Definition CellInterface.cpp:340
virtual void solveRiemann(double &dtMax, Limiter &, Limiter &, Limiter &, Limiter &, Prim=vecPhases)
Definition CellInterface.cpp:154
virtual void computeXi(const double &criteriaVar, const bool &varRho, const bool &varP, const bool &varU, const bool &varAlpha)
Definition CellInterface.cpp:356
virtual Coord & getWallRotationalVelocityMRF()
Returns imposed heat quantity on the wall, could be temperature or flux density (see BounCondWall....
Definition CellInterface.h:103
Coord m_omega
Definition CellInterface.h:135
void subtractFlux(const double &coefAMR)
Definition CellInterface.cpp:284
Model * getMod() const
Definition CellInterface.cpp:333
void addFluxRotatingRegion()
Definition CellInterface.cpp:301
virtual void computeSlopes(Prim=vecPhases)
Definition CellInterface.h:83
Face * getFace()
Definition CellInterface.cpp:326
virtual void creerCellInterfaceChild()
Definition CellInterface.cpp:426
void solveRiemannMRF(double &dtMax)
Definition CellInterface.cpp:178
virtual int whoAmI() const
Definition CellInterface.h:74
double distance(Cell *c)
Definition CellInterface.cpp:319
const int & getLvl() const
Definition CellInterface.h:117
virtual Phase * getSlopesPhase(const int &) const
Definition CellInterface.h:84
int m_lvl
Definition CellInterface.h:129
virtual void initialize(Cell *cellLeft, Cell *cellRight)
Definition CellInterface.cpp:63
virtual Mixture * getSlopesMixture() const
Definition CellInterface.h:85
void constructionArrayExternalCellInterfacesLvl(std::vector< CellInterface * > *cellInterfacesLvl)
Definition CellInterface.cpp:1214
virtual void raffineCellInterfaceExterne(const int &nbCellsY, const int &nbCellsZ, const double &dXParent, const double &dYParent, const double &dZParent, Cell *cellRef, const int &dim)
Definition CellInterface.cpp:447
void initializeGauche(Cell *cellLeft)
Definition CellInterface.cpp:71
CellInterface * getCellInterfaceChildBack()
Definition CellInterface.cpp:1246
void computeCritereAMR(const double &criteriaVar, Variable nameVariable, int num=0)
Definition CellInterface.cpp:378
virtual void addFlux(const double &coefAMR)
Definition CellInterface.cpp:267
CellInterface()
Definition CellInterface.cpp:40
Cell * m_cellRight
Definition CellInterface.h:125
virtual ~CellInterface()
Definition CellInterface.cpp:52
virtual void initializeDroite(Cell *cellRight)
Definition CellInterface.cpp:78
virtual bool isMRFWall() const
Returns heat boundary type for wall (see BoundCondWall.h)
Definition CellInterface.h:76
virtual double getBoundData(VarBoundary) const
Definition CellInterface.h:101
bool m_mrfStaticRegionIsLeft
Definition CellInterface.h:134
void updatePointersInternalCellInterfaces()
Definition CellInterface.cpp:1253
virtual int whoAmIHeat() const
Definition CellInterface.h:75
virtual void allocateSlopes(int &)
Definition CellInterface.h:82
void creerFaceChild(CellInterface *cellInterfaceParent)
Definition CellInterface.cpp:440
void substractFluxRotatingRegion()
Definition CellInterface.cpp:310
virtual void computeFlux(double &dtMax, Limiter &globalLimiter, Limiter &interfaceLimiter, Limiter &globalVolumeFractionLimiter, Limiter &interfaceVolumeFractionLimiter, Prim type=vecPhases)
Definition CellInterface.cpp:114
int getNumberCellInterfacesChildren() const
Definition CellInterface.cpp:1232
std::vector< CellInterface * > m_cellInterfacesChildren
Definition CellInterface.h:130
bool m_mrfInterface
Definition CellInterface.h:133
Cell * m_cellLeft
Definition CellInterface.h:124
virtual double getBoundaryHeatQuantity() const
Definition CellInterface.h:102
virtual void deraffineCellInterfaceExterne(Cell *cellRef)
Definition CellInterface.cpp:1145
bool getSplit() const
Definition CellInterface.cpp:1223
virtual void computeFluxXi()
Definition CellInterface.cpp:402
virtual void creerCellInterfaceChildInterne(const int &lvl, std::vector< CellInterface * > *childrenInternalCellInterfaces)
Definition CellInterface.cpp:433
void deraffineCellInterfacesChildren()
Definition CellInterface.cpp:1204
CellInterface * getCellInterfaceChild(const int &numChild)
Definition CellInterface.cpp:1239
Cell * getCellRight() const
Definition CellInterface.cpp:347
virtual void computeFluxAddPhys(AddPhys &addPhys)
Definition CellInterface.cpp:147
virtual void checkMrfInterface(Source *sourceMRF)
Definition CellInterface.cpp:92
Base class for a mesh cell.
Definition Cell.h:59
Class for a coordinate system object such as coordinates of the vertex or a vector.
Definition Coord.h:43
static Coord defaultCoordNonConst
Default Coord object (non-const version)
Definition Coord.h:58
static void errorMessage(const std::string &message)
Definition Errors.cpp:56
static constexpr int defaultIntNeg
Definition Errors.h:92
static constexpr double defaultDouble
Definition Errors.h:93
Abstract class for mixture variables.
Definition Mixture.h:43
Abstract class for mathematical flow models.
Definition Model.h:50
Abstract class for a phase.
Definition Phase.h:47
Abstract class for source terms.
Definition Source.h:43
Class for additional transport equations.
Definition Transport.h:41