Nektar++
|
#include <MeshGraphIO.h>
Public Member Functions | |
MeshGraphIO ()=default | |
virtual | ~MeshGraphIO ()=default |
void | SetMeshGraph (MeshGraphSharedPtr &meshGraph) |
void | WriteGeometry (const std::string &outfilename, bool defaultExp=false, const LibUtilities::FieldMetaDataMap &metadata=LibUtilities::NullFieldMetaDataMap) |
void | ReadGeometry (LibUtilities::DomainRangeShPtr rng, bool fillGraph) |
void | PartitionMesh (LibUtilities::SessionReaderSharedPtr session) |
std::map< int, MeshEntity > | CreateMeshEntities () |
Create mesh entities for this graph. More... | |
CompositeDescriptor | CreateCompositeDescriptor () |
Static Public Member Functions | |
static MeshGraphSharedPtr | Read (const LibUtilities::SessionReaderSharedPtr pSession, LibUtilities::DomainRangeShPtr rng=LibUtilities::NullDomainRangeShPtr, bool fillGraph=true, SpatialDomains::MeshGraphSharedPtr partitionedGraph=nullptr) |
Protected Member Functions | |
std::string | GetCompositeString (CompositeSharedPtr comp) |
Returns a string representation of a composite. More... | |
virtual void | v_WriteGeometry (const std::string &outfilename, bool defaultExp=false, const LibUtilities::FieldMetaDataMap &metadata=LibUtilities::NullFieldMetaDataMap)=0 |
virtual void | v_ReadGeometry (LibUtilities::DomainRangeShPtr rng, bool fillGraph)=0 |
virtual void | v_PartitionMesh (LibUtilities::SessionReaderSharedPtr session)=0 |
Protected Attributes | |
LibUtilities::SessionReaderSharedPtr | m_session |
MeshGraphSharedPtr | m_meshGraph |
int | m_partition |
bool | m_meshPartitioned = false |
CompositeOrdering | m_compOrder |
BndRegionOrdering | m_bndRegOrder |
Definition at line 48 of file MeshGraphIO.h.
|
default |
|
virtualdefault |
CompositeDescriptor Nektar::SpatialDomains::MeshGraphIO::CreateCompositeDescriptor | ( | ) |
Definition at line 229 of file MeshGraphIO.cpp.
References m_meshGraph.
Referenced by Nektar::SpatialDomains::MeshGraphIOHDF5::v_PartitionMesh(), and Nektar::SpatialDomains::MeshGraphIOXml::v_PartitionMesh().
std::map< int, MeshEntity > Nektar::SpatialDomains::MeshGraphIO::CreateMeshEntities | ( | ) |
Create mesh entities for this graph.
This function will create a map of all mesh entities of the current graph, which can then be used within the mesh partitioner to construct an appropriate partitioning.
Definition at line 129 of file MeshGraphIO.cpp.
References Nektar::SpatialDomains::MeshEntity::ghost, Nektar::SpatialDomains::MeshEntity::id, Nektar::SpatialDomains::MeshEntity::list, m_meshGraph, and Nektar::SpatialDomains::MeshEntity::origId.
Referenced by Nektar::SpatialDomains::MeshGraphIOXml::v_PartitionMesh().
|
protected |
Returns a string representation of a composite.
Definition at line 254 of file MeshGraphIO.cpp.
References Nektar::LibUtilities::eHexahedron, Nektar::LibUtilities::ePoint, Nektar::LibUtilities::ePrism, Nektar::LibUtilities::ePyramid, Nektar::LibUtilities::eQuadrilateral, Nektar::LibUtilities::eSegment, Nektar::LibUtilities::eTetrahedron, Nektar::LibUtilities::eTriangle, Nektar::ParseUtils::GenerateSeqString(), and m_meshGraph.
Referenced by Nektar::SpatialDomains::MeshGraphIOHDF5::WriteComposites(), and Nektar::SpatialDomains::MeshGraphIOXml::WriteComposites().
|
inline |
Definition at line 80 of file MeshGraphIO.h.
References v_PartitionMesh().
|
static |
Definition at line 53 of file MeshGraphIO.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), ASSERTL0, Nektar::LibUtilities::NekFactory< tKey, tBase, tParam >::CreateInstance(), and Nektar::SpatialDomains::GetMeshGraphIOFactory().
Referenced by Diffusion::Diffusion(), Nektar::SolverUtils::DriverParallelInTime::SetParallelInTimeEquationSystem(), Nektar::VarcoeffHashingTest::setupContFieldSolve(), Nektar::SolverUtils::CouplingCwipi::SetupReceive(), Nektar::SolverUtils::Driver::v_InitObject(), Nektar::FieldUtils::InputXml::v_Process(), Nektar::FieldUtils::ProcessDisplacement::v_Process(), Nektar::FieldUtils::ProcessInterpField::v_Process(), Nektar::FieldUtils::ProcessInterpPoints::v_Process(), Nektar::SolverUtils::FilterModalEnergy::v_Update(), and Nektar::VortexWaveInteraction::VortexWaveInteraction().
|
inline |
Definition at line 74 of file MeshGraphIO.h.
References v_ReadGeometry().
Referenced by Nektar::SpatialDomains::MeshGraphIOXml::v_PartitionMesh().
|
inline |
Definition at line 60 of file MeshGraphIO.h.
References m_meshGraph.
|
protectedpure virtual |
Implemented in Nektar::SpatialDomains::MeshGraphIOHDF5, and Nektar::SpatialDomains::MeshGraphIOXml.
Referenced by PartitionMesh().
|
protectedpure virtual |
Implemented in Nektar::SpatialDomains::MeshGraphIOHDF5, and Nektar::SpatialDomains::MeshGraphIOXml.
Referenced by ReadGeometry().
|
protectedpure virtual |
Implemented in Nektar::SpatialDomains::MeshGraphIOHDF5, and Nektar::SpatialDomains::MeshGraphIOXml.
Referenced by WriteGeometry().
|
inline |
Definition at line 65 of file MeshGraphIO.h.
References v_WriteGeometry().
|
protected |
Definition at line 95 of file MeshGraphIO.h.
Referenced by Nektar::SpatialDomains::MeshGraphIOHDF5::v_PartitionMesh(), Nektar::SpatialDomains::MeshGraphIOXml::v_PartitionMesh(), and Nektar::SpatialDomains::MeshGraphIOXml::WriteXMLGeometry().
|
protected |
Definition at line 94 of file MeshGraphIO.h.
Referenced by Nektar::SpatialDomains::MeshGraphIOHDF5::ReadComposites(), and Nektar::SpatialDomains::MeshGraphIOXml::v_PartitionMesh().
|
protected |
Definition at line 91 of file MeshGraphIO.h.
Referenced by Nektar::SpatialDomains::MeshGraphIOHDF5::ConstructGeomObject(), CreateCompositeDescriptor(), Nektar::SpatialDomains::MeshGraphIOXml::CreateCompositeOrdering(), CreateMeshEntities(), GetCompositeString(), Nektar::SpatialDomains::MeshGraphIOHDF5::ReadComposites(), Nektar::SpatialDomains::MeshGraphIOXml::ReadComposites(), Nektar::SpatialDomains::MeshGraphIOHDF5::ReadCurveMap(), Nektar::SpatialDomains::MeshGraphIOHDF5::ReadDomain(), Nektar::SpatialDomains::MeshGraphIOXml::ReadDomain(), Nektar::SpatialDomains::MeshGraphIOXml::ReadElements(), Nektar::SpatialDomains::MeshGraphIOXml::ResolveGeomRef(), Nektar::SpatialDomains::MeshGraphIOXml::ResolveGeomRef1D(), Nektar::SpatialDomains::MeshGraphIOXml::ResolveGeomRef2D(), Nektar::SpatialDomains::MeshGraphIOXml::ResolveGeomRef3D(), SetMeshGraph(), Nektar::SpatialDomains::MeshGraphIOHDF5::v_PartitionMesh(), Nektar::SpatialDomains::MeshGraphIOXml::v_PartitionMesh(), Nektar::SpatialDomains::MeshGraphIOXml::v_ReadCurves(), Nektar::SpatialDomains::MeshGraphIOXmlCompressed::v_ReadCurves(), Nektar::SpatialDomains::MeshGraphIOXml::v_ReadEdges(), Nektar::SpatialDomains::MeshGraphIOXmlCompressed::v_ReadEdges(), Nektar::SpatialDomains::MeshGraphIOXml::v_ReadElements1D(), Nektar::SpatialDomains::MeshGraphIOXmlCompressed::v_ReadElements1D(), Nektar::SpatialDomains::MeshGraphIOXml::v_ReadElements2D(), Nektar::SpatialDomains::MeshGraphIOXmlCompressed::v_ReadElements2D(), Nektar::SpatialDomains::MeshGraphIOXml::v_ReadElements3D(), Nektar::SpatialDomains::MeshGraphIOXmlCompressed::v_ReadElements3D(), Nektar::SpatialDomains::MeshGraphIOXml::v_ReadFaces(), Nektar::SpatialDomains::MeshGraphIOXmlCompressed::v_ReadFaces(), Nektar::SpatialDomains::MeshGraphIOHDF5::v_ReadGeometry(), Nektar::SpatialDomains::MeshGraphIOXml::v_ReadGeometry(), Nektar::SpatialDomains::MeshGraphIOXml::v_ReadVertices(), Nektar::SpatialDomains::MeshGraphIOXmlCompressed::v_ReadVertices(), Nektar::SpatialDomains::MeshGraphIOXml::v_WriteEdges(), Nektar::SpatialDomains::MeshGraphIOXmlCompressed::v_WriteEdges(), Nektar::SpatialDomains::MeshGraphIOHDF5::v_WriteGeometry(), Nektar::SpatialDomains::MeshGraphIOXml::v_WriteGeometry(), Nektar::SpatialDomains::MeshGraphIOXml::WriteComposites(), Nektar::SpatialDomains::MeshGraphIOXml::WriteDefaultExpansion(), and Nektar::SpatialDomains::MeshGraphIOXml::WriteXMLGeometry().
|
protected |
Definition at line 93 of file MeshGraphIO.h.
Referenced by Nektar::SpatialDomains::MeshGraphIOHDF5::v_PartitionMesh(), and Nektar::SpatialDomains::MeshGraphIOXml::v_ReadGeometry().
|
protected |
Definition at line 92 of file MeshGraphIO.h.
Referenced by Nektar::SpatialDomains::MeshGraphIOXml::v_ReadGeometry().
|
protected |
Definition at line 90 of file MeshGraphIO.h.
Referenced by Nektar::SpatialDomains::MeshGraphIOHDF5::ReadCurveMap(), Nektar::SpatialDomains::MeshGraphIOHDF5::v_PartitionMesh(), Nektar::SpatialDomains::MeshGraphIOXml::v_PartitionMesh(), Nektar::SpatialDomains::MeshGraphIOXml::v_ReadGeometry(), Nektar::SpatialDomains::MeshGraphIOXml::v_WriteGeometry(), and Nektar::SpatialDomains::MeshGraphIOXml::WriteXMLGeometry().