9 #include "HDF5Interface.h"
10 #include <dolfinx/common/MPI.h>
11 #include <dolfinx/mesh/cell_types.h>
23 class CoordinateElement;
66 static const Encoding default_encoding = Encoding::HDF5;
69 XDMFFile(MPI_Comm comm,
const std::string filename,
70 const std::string file_mode,
71 const Encoding encoding = default_encoding);
87 const std::string xpath =
"/Xdmf/Domain");
93 void write_geometry(
const mesh::Geometry& geometry,
const std::string name,
94 const std::string xpath =
"/Xdmf/Domain");
106 const std::string xpath =
"/Xdmf/Domain")
const;
112 xt::xtensor<std::int64_t, 2> read_topology_data(
const std::string name,
113 const std::string xpath
114 =
"/Xdmf/Domain")
const;
120 xt::xtensor<double, 2> read_geometry_data(
const std::string name,
121 const std::string xpath
122 =
"/Xdmf/Domain")
const;
127 std::pair<mesh::CellType, int> read_cell_type(
const std::string grid_name,
128 const std::string xpath
137 const std::string& mesh_xpath
138 =
"/Xdmf/Domain/Grid[@GridType='Uniform'][1]");
145 void write_function(
const fem::Function<std::complex<double>>& u,
double t,
146 const std::string& mesh_xpath
147 =
"/Xdmf/Domain/Grid[@GridType='Uniform'][1]");
155 const std::string& geometry_xpath,
156 const std::string& xpath =
"/Xdmf/Domain");
163 read_meshtags(
const std::shared_ptr<const mesh::Mesh>& mesh,
164 const std::string name,
165 const std::string xpath =
"/Xdmf/Domain");
171 void write_information(
const std::string name,
const std::string value,
172 const std::string xpath =
"/Xdmf/Domain/");
177 std::string read_information(
const std::string name,
178 const std::string xpath =
"/Xdmf/Domain/");
182 MPI_Comm comm()
const;
189 std::string _filename;
192 std::string _file_mode;
199 std::unique_ptr<pugi::xml_document> _xml_doc;
A duplicate MPI communicator and manage lifetime of the communicator.
Definition: MPI.h:32
This class manages coordinate mappings for isoparametric cells.
Definition: CoordinateElement.h:29
This class represents a function in a finite element function space , given by.
Definition: Function.h:47
Read and write mesh::Mesh, fem::Function and other objects in XDMF.
Definition: XDMFFile.h:56
Encoding
File encoding type.
Definition: XDMFFile.h:60
Geometry stores the geometry imposed on a mesh.
Definition: Geometry.h:37
A Mesh consists of a set of connected and numbered mesh topological entities, and geometry data.
Definition: Mesh.h:53
Finite element method functionality.
Definition: assemble_matrix_impl.h:23
Support for file IO.
Definition: cells.h:22
Mesh data structures and algorithms on meshes.
Definition: DirichletBC.h:20
GhostMode
Enum for different partitioning ghost modes.
Definition: Mesh.h:44