1#ifndef included_AMP_XDMF
2#define included_AMP_XDMF
5#include "AMP/utils/AMP_MPI.h"
6#include "AMP/utils/Array.h"
75 const std::string &varData );
85 const std::string &y =
"",
86 const std::string &z =
"" );
96 const std::vector<double> &range,
110 const std::string &x,
111 const std::string &y =
"",
112 const std::string &z =
"" );
133 const std::string &dofMap,
135 const std::string &x,
136 const std::string &y =
"",
137 const std::string &z =
"" );
144 void addMultiMesh(
const std::string &meshName,
const std::vector<std::string> &submeshes );
147 void addMultiMesh(
const std::string &meshName,
const std::vector<MeshData> &submeshes );
153 void write(
const std::string &filename )
const;
Provides C++ wrapper around MPI routines.
Simple class to store the array dimensions.
std::map< std::string, std::vector< MeshData > > d_meshData
void clear()
Clear the internal data.
void addMultiMesh(const std::string &meshName, const std::vector< MeshData > &submeshes)
Add a multi-mesh.
static MeshData createUniformMesh(const std::string &name, const std::vector< double > &range, const ArraySize &size)
Add a uniform mesh.
static MeshData createPointMesh(const std::string &name, uint8_t NDIM, size_t N, const std::string &x, const std::string &y="", const std::string &z="")
Add a Point mesh.
static MeshData createCurvilinearMesh(const std::string &name, const ArraySize &size, const std::string &x, const std::string &y="", const std::string &z="")
Add a Curvilinear mesh.
static MeshData createUnstructuredMesh(const std::string &name, uint8_t NDIM, TopologyType type, size_t NumElements, const std::string &dofMap, size_t NumNodes, const std::string &x, const std::string &y="", const std::string &z="")
Add an unstructured mesh.
void addMultiMesh(const std::string &meshName, const std::vector< std::string > &submeshes)
Add a multi-mesh.
void write(const std::string &filename) const
Write the xml file.
void addMesh(const std::string &meshName, const MeshData &domain)
Add a mesh domain.
bool empty() const
Check if the class is empty.
void gather(const AMP::AMP_MPI &comm)
Gather all data to rank 0.
std::vector< VarData > vars
void addVariable(const std::string &varName, const ArraySize &varSize, RankType rank, Center center, const std::string &varData)
Add a variable.