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

#include <MUSGmshV2.h>

Inherits MUSGmsh.

Public Member Functions

 MUSGmshV2 (const std::string &meshFile, const std::string &meshExtension, bool switchTags=false)
 
virtual ~MUSGmshV2 ()
 
virtual void initGeometryMonoCPU (TypeMeshContainer< Cell * > &cells, TypeMeshContainer< CellInterface * > &cellInterfaces, std::string computeOrder="FIRSTORDER")
 initialize the geometry for single CPU computation
 
virtual void initGeometryParallel (TypeMeshContainer< Cell * > &cells, TypeMeshContainer< Cell * > &cellsGhost, TypeMeshContainer< CellInterface * > &cellInterfaces, std::string computeOrder="FIRSTORDER")
 initialize the geometry for multi CPUs computation
 
virtual void preProcessMeshFileForParallel ()
 split original mesh file for computation on several CPUs
 
virtual void initCpuMeshSequential (TypeMeshContainer< Cell * > &cells, std::string &computeOrder)
 Initialize mesh of a single partition for restart with mesh mapping option.
 
virtual void initCpuMeshParallel (TypeMeshContainer< Cell * > &cells, std::string &computeOrder, int cpu)
 Initialize mesh of a single partition of a partionned mesh for restart with mesh mapping option.
 
- Public Member Functions inherited from MUSGmsh
 MUSGmsh (const std::string &meshFile, const std::string &meshExtension)
 
virtual ~MUSGmsh ()
 
virtual std::string getMeshExtension () const
 
- Public Member Functions inherited from MeshUnStruct
 MeshUnStruct (const std::string &meshFile, const std::string &meshExtension)
 
virtual ~MeshUnStruct ()
 
virtual void assignLimits (std::vector< BoundCond * > &boundCond)
 
virtual int initializeGeometrie (TypeMeshContainer< Cell * > &cells, TypeMeshContainer< Cell * > &cellsGhost, TypeMeshContainer< CellInterface * > &cellInterfaces, const int &, bool pretraitementParallele=true, std::string ordreCalcul="FIRSTORDER")
 renvoi le number de dimensions (1,2 ou 3)
 
virtual std::string whoAmI () const
 
void writeMeshInfoData () const
 write monocpu mesh information
 
virtual void writeHeaderPiece (std::ofstream &fileStream, TypeMeshContainer< Cell * > *) const
 
virtual void getNodes (std::vector< double > &dataset, std::vector< Cell * > *) const
 
virtual void getConnectivity (std::vector< double > &dataset, std::vector< Cell * > *) const
 
virtual void getOffsets (std::vector< double > &dataset, std::vector< Cell * > *) const
 
virtual void getTypeCell (std::vector< double > &dataset, std::vector< Cell * > *) const
 
virtual void getData (TypeMeshContainer< Cell * > *cellsLvl, std::vector< double > &dataset, const int var, int phase) const
 
virtual void setDataSet (std::vector< double > &dataset, TypeMeshContainer< Cell * > *cellsLvl, const int var, int phase) const
 
virtual void extractAbsVelocityMRF (TypeMeshContainer< Cell * > *cellsLvl, std::vector< double > &dataset, Source *sourceMRF) const
 
virtual void extractReferenceLength (std::vector< Cell * > *cellsLvl, std::vector< double > &dataset) const
 
- Public Member Functions inherited from Mesh
 Mesh ()
 
virtual ~Mesh ()
 
virtual void setImmersedBoundaries (TypeMeshContainer< CellInterface * > *, std::string) const
 
const int & getProblemDimension () const
 
const int & getNumberCells () const
 
const int & getNumberCellsTotal () const
 
const int & getNumberFaces () const
 
const int & getNumFichier () const
 
virtual double getdX () const
 
virtual double getdY () const
 
virtual double getdZ () const
 
const TypeMgetType () const
 
virtual int getNumberCellsY ()
 
virtual int getNumberCellsZ ()
 
virtual int getLvlMax () const
 
void writeResultsGnuplot (std::vector< Cell * > *cellsLvl, std::ofstream &fileStream, GeometricObject *objet=0, bool recordPsat=false) const
 
virtual void writeHeaderPiece (std::ofstream &, std::vector< Cell * > *) const
 
virtual std::string getStringExtent (bool=false) const
 
virtual void getCoord (std::vector< double > &, Axis) const
 
virtual void getData (std::vector< Cell * > *, std::vector< double > &, const int, int) const
 Extracting data for printing results.
 
virtual void setDataSet (std::vector< double > &, std::vector< Cell * > *, const int, int) const
 Extracting data for printing results.
 
virtual void refineCellAndCellInterfaces (Cell *, const std::vector< AddPhys * > &, int &)
 
virtual void extractAbsVelocityMRF (std::vector< Cell * > *, std::vector< double > &, Source *) const
 Extracting absolute velocity for specific Moving Reference Frame computations.
 
virtual void printDomainDecomposition (std::ofstream &)
 
virtual void readDomainDecomposition (std::ifstream &)
 
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 * > &)
 
virtual void procedureRaffinement (std::vector< Cell * > *, TypeMeshContainer< Cell * > *, std::vector< CellInterface * > *, const int &, const std::vector< AddPhys * > &, int &, Eos **)
 
virtual void initializePersistentCommunications (const TypeMeshContainer< Cell * > &cells, std::string ordreCalcul)
 
virtual void finalizeParallele (const int &lvlMax)
 
virtual void parallelLoadBalancingAMR (std::vector< Cell * > *, TypeMeshContainer< Cell * > *, std::vector< CellInterface * > *, std::string, const std::vector< AddPhys * > &, Eos **, int &, std::vector< GeometricalDomain * > &, bool=false)
 

Private Member Functions

void readMeshMonoCPU (std::vector< ElementNS * > **neighborNodes)
 
void readElement (const Coord *nodesTable, std::ifstream &meshFile, ElementNS **element)
 
void readMeshParallel ()
 

Private Attributes

bool m_switchTags
 

Additional Inherited Members

- Static Public Member Functions inherited from MUSGmsh
static std::string readVersion (const std::string &meshFile)
 
- Static Public Member Functions inherited from MeshUnStruct
static std::string readMeshFileExtension (const std::string &meshFile)
 
- Protected Attributes inherited from MeshUnStruct
std::string m_meshFile
 Name of the mesh file read.
 
std::string m_nameMesh
 Name of the mesh file without extension.
 
int m_numberNodes
 Number of nodes of the geometric domain.
 
int m_numberInnerNodes
 Number of inner nodes (except from ghosts)
 
Coordm_nodes
 Array of node coordinates in the geometric domain.
 
int m_numberInnerElements
 Number of elements of n dimension of internal compute.
 
int m_numberGhostElements
 Number of ghost elements of dimension n for parallel computation.
 
int m_numberCommunicatingElements
 Real number of communicating elements.
 
ElementNS ** m_elements
 Array of internal geometric elements.
 
FaceNS ** m_faces
 Array of geometrical faces.
 
std::vector< BoundCond * > m_bound
 Array of boundary conditions.
 
int m_numberInnerFaces
 Number of faces between two cells of compute.
 
int m_numberBoundFaces
 Number of faces between a compute cell and a boundary.
 
int m_numberFacesParallel
 Number of faces between a compute cell and a ghost cell.
 
int m_numberGhostCells
 Number of ghost cells.
 
int m_numberElements0D
 
int m_numberElements1D
 
int m_numberElements2D
 
int m_numberElements3D
 
int m_numberSegments
 
int m_numberTriangles
 
int m_numberQuadrangles
 
int m_numberTetrahedrons
 
int m_numberPyramids
 
int m_numberPoints
 
int m_numberHexahedrons
 
double m_totalSurface
 Sum of 2D element surfaces.
 
double m_totalVolume
 Sum of 3D element volumes.
 
- Protected Attributes inherited from Mesh
int m_numFichier
 
int m_problemDimension
 
int m_numberElements
 
int m_numberFacesTotal
 
int m_numberCellsCalcul
 
int m_numberCellsTotal
 
TypeM m_type
 

Constructor & Destructor Documentation

◆ MUSGmshV2()

MUSGmshV2::MUSGmshV2 ( const std::string &  meshFile,
const std::string &  meshExtension,
bool  switchTags = false 
)

◆ ~MUSGmshV2()

MUSGmshV2::~MUSGmshV2 ( )
virtual

Member Function Documentation

◆ initCpuMeshParallel()

void MUSGmshV2::initCpuMeshParallel ( TypeMeshContainer< Cell * > &  ,
std::string &  ,
int   
)
virtual

Initialize mesh of a single partition of a partionned mesh for restart with mesh mapping option.

This mesh object has only the elements and nodes filled

Implements MUSGmsh.

◆ initCpuMeshSequential()

void MUSGmshV2::initCpuMeshSequential ( TypeMeshContainer< Cell * > &  ,
std::string &   
)
virtual

Initialize mesh of a single partition for restart with mesh mapping option.

This mesh object has only the elements and nodes filled

Implements MUSGmsh.

◆ initGeometryMonoCPU()

void MUSGmshV2::initGeometryMonoCPU ( TypeMeshContainer< Cell * > &  cells,
TypeMeshContainer< CellInterface * > &  cellInterfaces,
std::string  computeOrder = "FIRSTORDER" 
)
virtual

initialize the geometry for single CPU computation

Parameters
cells
cellInterfaces
computeOrderscheme order (currently only first order working)

Implements MUSGmsh.

◆ initGeometryParallel()

void MUSGmshV2::initGeometryParallel ( TypeMeshContainer< Cell * > &  cells,
TypeMeshContainer< Cell * > &  cellsGhost,
TypeMeshContainer< CellInterface * > &  cellInterfaces,
std::string  computeOrder = "FIRSTORDER" 
)
virtual

initialize the geometry for multi CPUs computation

Parameters
cells
cellInterfaces
computeOrderscheme order (currently only first order working)

Implements MUSGmsh.

◆ preProcessMeshFileForParallel()

void MUSGmshV2::preProcessMeshFileForParallel ( )
virtual

split original mesh file for computation on several CPUs

Implements MUSGmsh.

◆ readElement()

void MUSGmshV2::readElement ( const Coord nodesTable,
std::ifstream &  meshFile,
ElementNS **  element 
)
private

◆ readMeshMonoCPU()

void MUSGmshV2::readMeshMonoCPU ( std::vector< ElementNS * > **  neighborNodes)
private

◆ readMeshParallel()

void MUSGmshV2::readMeshParallel ( )
private

Member Data Documentation

◆ m_switchTags

bool MUSGmshV2::m_switchTags
private

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