36#include "../libTierces/tinyxml2.h"
37#include "../Order1/Cell.h"
38#include "../Order1/CellGhost.h"
39#include "../Order1/CellInterface.h"
40#include "../Order2/CellO2GhostCartesian.h"
41#include "../Order2/CellO2GhostNS.h"
42#include "../BoundConds/HeaderBoundCond.h"
43#include "../Maths/Coord.h"
44#include "../Parallel/Parallel.h"
45#include "../AdditionalPhysics/HeaderQuantitiesAddPhys.h"
46#include "../Maths/GeometricObject.h"
47#include "../Sources/HeaderSources.h"
60 const int& restartSimulation,
bool pretraitementParallele =
true, std::string ordreCalcul =
"FIRSTORDER") = 0;
71 virtual double getdX()
const {
return 0; };
72 virtual double getdY()
const {
return 0; };
73 virtual double getdZ()
const {
return 0; };
95 virtual void getData(std::vector<Cell*>* , std::vector<double>& ,
const int ,
int )
const {
Errors::errorMessage(
"getData not available for considered mesh"); };
102 virtual void setDataSet(std::vector<double>& , std::vector<Cell*>* ,
const int ,
int )
const {
Errors::errorMessage(
"setDataSet not available for requested mesh"); };
116 std::vector<CellInterface*>* ,
const std::vector<AddPhys*>& ,
int& nbCellsTotalAMR,
117 std::vector<GeometricalDomain*>& ,
Eos** ,
const int& , std::string , std::vector<GeometricalDomain*>& ) { nbCellsTotalAMR =
m_numberCellsCalcul; };
119 const std::vector<AddPhys*>& ,
int& ,
Eos** ) {};
126 std::vector<CellInterface*>* , std::string ,
127 const std::vector<AddPhys*>& ,
Eos** ,
int& , std::vector<GeometricalDomain*>& ,
bool =
false) {};
Base class for a mesh cell.
Definition Cell.h:59
General class for Equation of State (EOS).
Definition Eos.h:54
static void errorMessage(const std::string &message)
Definition Errors.cpp:56
Abstract class for geometric object.
Definition GeometricObject.h:41
Abstract class for a mesh.
Definition Mesh.h:53
virtual void initCpuMeshParallel(TypeMeshContainer< Cell * > &, std::string &, int)
Initialize mesh of a single partition of a partionned mesh for restart with mesh mapping option.
Definition Mesh.h:139
void writeResultsGnuplot(std::vector< Cell * > *cellsLvl, std::ofstream &fileStream, GeometricObject *objet=0, bool recordPsat=false) const
Definition Mesh.cpp:46
virtual void setDataSet(std::vector< double > &, std::vector< Cell * > *, const int, int) const
Extracting data for printing results.
Definition Mesh.h:102
virtual double getdZ() const
Definition Mesh.h:73
const TypeM & getType() const
Definition Mesh.h:74
virtual double getdY() const
Definition Mesh.h:72
virtual void getConnectivity(std::vector< double > &, std::vector< Cell * > *) const
Definition Mesh.h:86
TypeM m_type
Definition Mesh.h:152
Mesh()
Definition Mesh.cpp:35
const int & getNumberCellsTotal() const
Definition Mesh.h:68
virtual void getOffsets(std::vector< double > &, std::vector< Cell * > *) const
Definition Mesh.h:87
virtual void initializePersistentCommunications(const TypeMeshContainer< Cell * > &cells, std::string ordreCalcul)
Definition Mesh.cpp:57
virtual void finalizeParallele(const int &lvlMax)
Definition Mesh.cpp:96
int m_numFichier
Definition Mesh.h:144
virtual std::string getStringExtent(bool=false) const
Definition Mesh.h:83
const int & getNumberCells() const
Definition Mesh.h:67
virtual void assignLimits(std::vector< BoundCond * > &boundCond)=0
virtual void initCpuMeshSequential(TypeMeshContainer< Cell * > &, std::string &)
Initialize mesh of a single partition for restart with mesh mapping option.
Definition Mesh.h:134
virtual int initializeGeometrie(TypeMeshContainer< Cell * > &cells, TypeMeshContainer< Cell * > &cellsGhost, TypeMeshContainer< CellInterface * > &cellInterfaces, const int &restartSimulation, bool pretraitementParallele=true, std::string ordreCalcul="FIRSTORDER")=0
renvoi le number de dimensions (1,2 ou 3)
virtual int getLvlMax() const
Definition Mesh.h:77
virtual void parallelLoadBalancingAMR(std::vector< Cell * > *, TypeMeshContainer< Cell * > *, std::vector< CellInterface * > *, std::string, const std::vector< AddPhys * > &, Eos **, int &, std::vector< GeometricalDomain * > &, bool=false)
Definition Mesh.h:125
virtual void getCoord(std::vector< double > &, Axis) const
Definition Mesh.h:84
virtual std::string getMeshExtension() const
Definition Mesh.h:131
virtual ~Mesh()
Definition Mesh.cpp:42
virtual void extractReferenceLength(std::vector< Cell * > *, std::vector< double > &) const
Definition Mesh.h:109
virtual void procedureRaffinementInitialization(std::vector< Cell * > *, TypeMeshContainer< Cell * > *, std::vector< CellInterface * > *, const std::vector< AddPhys * > &, int &nbCellsTotalAMR, std::vector< GeometricalDomain * > &, Eos **, const int &, std::string, std::vector< GeometricalDomain * > &)
Definition Mesh.h:115
virtual void printDomainDecomposition(std::ofstream &)
Definition Mesh.h:110
virtual int getNumberCellsZ()
Definition Mesh.h:76
virtual void extractAbsVelocityMRF(std::vector< Cell * > *, std::vector< double > &, Source *) const
Extracting absolute velocity for specific Moving Reference Frame computations.
Definition Mesh.h:108
virtual void readDomainDecomposition(std::ifstream &)
Definition Mesh.h:111
const int & getProblemDimension() const
Definition Mesh.h:66
int m_numberCellsCalcul
Definition Mesh.h:149
const int & getNumberFaces() const
Definition Mesh.h:69
int m_numberElements
Definition Mesh.h:147
virtual void getData(std::vector< Cell * > *, std::vector< double > &, const int, int) const
Extracting data for printing results.
Definition Mesh.h:95
virtual int getNumberCellsY()
Definition Mesh.h:75
int m_problemDimension
Definition Mesh.h:146
virtual void getNodes(std::vector< double > &, std::vector< Cell * > *) const
Definition Mesh.h:85
virtual void writeHeaderPiece(std::ofstream &, std::vector< Cell * > *) const
Definition Mesh.h:82
virtual void refineCellAndCellInterfaces(Cell *, const std::vector< AddPhys * > &, int &)
Definition Mesh.h:103
virtual void procedureRaffinement(std::vector< Cell * > *, TypeMeshContainer< Cell * > *, std::vector< CellInterface * > *, const int &, const std::vector< AddPhys * > &, int &, Eos **)
Definition Mesh.h:118
virtual void getTypeCell(std::vector< double > &, std::vector< Cell * > *) const
Definition Mesh.h:88
int m_numberFacesTotal
Definition Mesh.h:148
virtual std::string whoAmI() const
Definition Mesh.h:61
const int & getNumFichier() const
Definition Mesh.h:70
virtual double getdX() const
Definition Mesh.h:71
virtual void setImmersedBoundaries(TypeMeshContainer< CellInterface * > *, std::string) const
Definition Mesh.h:62
int m_numberCellsTotal
Definition Mesh.h:150
Abstract class for source terms.
Definition Source.h:43