23 #include "openPMD/backend/Attributable.hpp" 24 #include "openPMD/backend/BaseRecord.hpp" 25 #include "openPMD/backend/MeshRecordComponent.hpp" 45 Mesh(Mesh
const&) =
default;
46 Mesh& operator=(Mesh
const&) =
default;
47 ~Mesh()
override =
default;
109 std::vector< std::string >
axisLabels()
const;
116 Mesh&
setAxisLabels(std::vector< std::string >
const & axisLabels);
122 template<
typename T >
131 template<
typename T >
168 template<
typename T >
177 template<
typename T >
183 void flush_impl(std::string
const&)
override;
184 void read()
override;
187 template<
typename T >
188 inline std::vector< T >
190 {
return readVectorFloatingpoint< T >(
"gridSpacing"); }
192 template<
typename T >
195 {
return readFloatingpoint< T >(
"timeOffset"); }
Geometry
Enumerated datatype for the geometry of the mesh.
Definition: Mesh.hpp:55
DataOrder
Enumerated datatype for the memory layout of N-dimensional data.
Definition: Mesh.hpp:65
std::string geometryParameters() const
Definition: Mesh.cpp:75
std::vector< double > gridGlobalOffset() const
Definition: Mesh.cpp:136
Logical compilation of data from one snapshot (e.g.
Definition: Iteration.hpp:38
Mesh & setGeometry(Geometry g)
Set the geometry of the mesh of the mesh record.
Definition: Mesh.cpp:54
Mesh & setDataOrder(DataOrder dor)
Set the memory layout of N-dimensional data.
Definition: Mesh.cpp:94
Mesh & setUnitDimension(std::map< UnitDimension, double > const &unitDimension)
Set the powers of the 7 base measures characterizing the record's unit in SI.
Definition: Mesh.cpp:162
Mesh & setGridUnitSI(double gridUnitSI)
Set the unit-conversion factor to multiply each value in Mesh::gridSpacing and Mesh::gridGlobalOffset...
Definition: Mesh.cpp:155
Mesh & setGridGlobalOffset(std::vector< double > const &gridGlobalOffset)
Set the start of the current domain of the simulation (position of the beginning of the first cell) i...
Definition: Mesh.cpp:142
DataOrder dataOrder() const
Definition: Mesh.cpp:88
T timeOffset() const
Definition: Mesh.hpp:194
Public definitions of openPMD-api.
Definition: Date.cpp:29
double gridUnitSI() const
Definition: Mesh.cpp:149
Definition: BaseRecord.hpp:36
std::vector< std::string > axisLabels() const
Definition: Mesh.cpp:103
Mesh & setAxisLabels(std::vector< std::string > const &axisLabels)
Set the ordering of the labels for the Mesh::geometry of the mesh.
Definition: Mesh.cpp:109
Mesh & setGridSpacing(std::vector< T > const &gridSpacing)
Set the spacing of the grid points along each dimension (in the units of the simulation).
Definition: Mesh.cpp:117
Container for N-dimensional, homogeneous Records.
Definition: Mesh.hpp:39
Geometry geometry() const
Definition: Mesh.cpp:43
Mesh & setTimeOffset(T timeOffset)
Set the offset between the time at which this record is defined and the Iteration::time attribute of ...
Definition: Mesh.cpp:176
Map-like container that enforces openPMD requirements and handles IO.
Definition: Container.hpp:70
std::vector< T > gridSpacing() const
Definition: Mesh.hpp:189
std::array< double, 7 > unitDimension() const
Return the physical dimension (quantity) of a record.
Definition: BaseRecord.hpp:249
Mesh & setGeometryParameters(std::string const &geometryParameters)
Set additional parameters for the geometry, separated by a.
Definition: Mesh.cpp:81