13#ifndef dealii_data_out_base_h
14#define dealii_data_out_base_h
30#include <boost/serialization/map.hpp>
273 template <
int dim,
int spacedim = dim>
310 std::array<unsigned int, GeometryInfo<dim>::faces_per_cell>
neighbors;
412 <<
"It is not possible to have a structural dimension of " << arg1
413 <<
" to be larger than the space dimension of the surrounding"
414 <<
" space " << arg2);
435 template <
int spacedim>
564 <<
"It is not possible to have a structural dimension of " << arg1
565 <<
" to be larger than the space dimension of the surrounding"
566 <<
" space " << arg2);
582 template <
typename FlagsType>
616 template <
typename FlagsType>
622 template <
typename FlagsType>
628 template <
typename FlagsType>
632 return sizeof(FlagsType);
781 "There should be at least one space dimension per spatial "
782 "dimension (extras are ignored).");
999 const double min_value,
1000 const double max_value);
1020 const double min_value,
1021 const double max_value);
1030 const double min_value,
1031 const double max_value);
1041 const double min_value,
1042 const double max_value);
1050 const unsigned int size = 300,
1193 std::map<std::string, std::vector<std::pair<std::string, AttributeValue>>>
1201 const double time = -std::numeric_limits<double>::infinity(),
1203 const std::map<std::string,
1204 std::vector<std::pair<std::string, AttributeValue>>>
1334 const double time = std::numeric_limits<double>::lowest(),
1393 const bool margin =
true,
1530 const unsigned int start,
1531 const std::array<unsigned int, dim> &offsets);
1540 const unsigned int start,
1541 const unsigned int n_points,
1552 const unsigned int dimension,
1553 const unsigned int set_num,
1569 std::vector<unsigned int> &cell_data)
const;
1647 return (one[0] < two[0] ||
1648 (!(two[0] < one[0]) &&
1649 (one[1] < two[1] || (!(two[1] < one[1]) && one[2] < two[2]))));
1709 const unsigned int pt_index);
1798 template <
int dim,
int spacedim>
1801 const std::vector<Patch<dim, spacedim>> &patches,
1802 const std::vector<std::string> &data_names,
1804 std::tuple<
unsigned int,
1808 &nonscalar_data_ranges,
1809 const DXFlags &flags,
1856 template <
int spacedim>
1859 const std::vector<Patch<2, spacedim>> &patches,
1860 const std::vector<std::string> &data_names,
1862 std::tuple<
unsigned int,
1866 &nonscalar_data_ranges,
1867 const EpsFlags &flags,
1875 template <
int dim,
int spacedim>
1878 const std::vector<Patch<dim, spacedim>> &patches,
1879 const std::vector<std::string> &data_names,
1881 std::tuple<
unsigned int,
1885 &nonscalar_data_ranges,
1886 const EpsFlags &flags,
1899 template <
int dim,
int spacedim>
1902 const std::vector<Patch<dim, spacedim>> &patches,
1903 const std::vector<std::string> &data_names,
1905 std::tuple<
unsigned int,
1909 &nonscalar_data_ranges,
1910 const GmvFlags &flags,
1968 template <
int dim,
int spacedim>
1971 const std::vector<Patch<dim, spacedim>> &patches,
1972 const std::vector<std::string> &data_names,
1974 std::tuple<
unsigned int,
1978 &nonscalar_data_ranges,
1979 const GnuplotFlags &flags,
2027 template <
int dim,
int spacedim>
2030 const std::vector<Patch<dim, spacedim>> &patches,
2031 const std::vector<std::string> &data_names,
2033 std::tuple<
unsigned int,
2037 &nonscalar_data_ranges,
2038 const PovrayFlags &flags,
2047 template <
int dim,
int spacedim>
2050 const std::vector<Patch<dim, spacedim>> &patches,
2051 const std::vector<std::string> &data_names,
2053 std::tuple<
unsigned int,
2057 &nonscalar_data_ranges,
2058 const TecplotFlags &flags,
2075 template <
int dim,
int spacedim>
2078 const std::vector<Patch<dim, spacedim>> &patches,
2079 const std::vector<std::string> &data_names,
2081 std::tuple<
unsigned int,
2085 &nonscalar_data_ranges,
2086 const UcdFlags &flags,
2108 template <
int dim,
int spacedim>
2111 const std::vector<Patch<dim, spacedim>> &patches,
2112 const std::vector<std::string> &data_names,
2114 std::tuple<
unsigned int,
2118 &nonscalar_data_ranges,
2119 const VtkFlags &flags,
2146 template <
int dim,
int spacedim>
2149 const std::vector<Patch<dim, spacedim>> &patches,
2150 const std::vector<std::string> &data_names,
2152 std::tuple<
unsigned int,
2156 &nonscalar_data_ranges,
2157 const VtkFlags &flags,
2183 template <
int dim,
int spacedim>
2186 const std::vector<Patch<dim, spacedim>> &patches,
2187 const std::vector<std::string> &data_names,
2189 std::tuple<
unsigned int,
2193 &nonscalar_data_ranges,
2194 const VtkFlags &flags,
2241 const std::vector<std::string> &piece_names,
2242 const std::vector<std::string> &data_names,
2244 std::tuple<
unsigned int,
2248 &nonscalar_data_ranges,
2249 const VtkFlags &flags);
2302 const std::vector<std::pair<double, std::string>> ×_and_names);
2317 const std::vector<std::string> &piece_names);
2348 const std::vector<std::vector<std::string>> &piece_names);
2385 const std::vector<std::pair<
double, std::vector<std::string>>>
2386 ×_and_piece_names);
2408 template <
int spacedim>
2411 const std::vector<Patch<2, spacedim>> &patches,
2412 const std::vector<std::string> &data_names,
2414 std::tuple<
unsigned int,
2418 &nonscalar_data_ranges,
2419 const SvgFlags &flags,
2459 template <
int dim,
int spacedim>
2462 const std::vector<Patch<dim, spacedim>> &patches,
2463 const std::vector<std::string> &data_names,
2465 std::tuple<
unsigned int,
2469 &nonscalar_data_ranges,
2470 const Deal_II_IntermediateFlags &flags,
2481 template <
int dim,
int spacedim>
2484 const std::vector<Patch<dim, spacedim>> &patches,
2485 const std::vector<std::string> &data_names,
2487 std::tuple<
unsigned int,
2491 &nonscalar_data_ranges,
2492 const Deal_II_IntermediateFlags &flags,
2493 const std::string &filename,
2501 template <
int dim,
int spacedim>
2504 const DataOutFilter &data_filter,
2506 const std::string &filename,
2516 template <
int dim,
int spacedim>
2519 const DataOutFilter &data_filter,
2521 const bool write_mesh_file,
2522 const std::string &mesh_filename,
2523 const std::string &solution_filename,
2530 template <
int dim,
int spacedim>
2533 const DataOutFilter &data_filter,
2535 const std::string &filename,
2544 template <
int dim,
int spacedim>
2547 const std::vector<Patch<dim, spacedim>> &patches,
2548 const std::vector<std::string> &data_names,
2550 std::tuple<
unsigned int,
2554 &nonscalar_data_ranges,
2555 DataOutFilter &filtered_data);
2568 std::pair<unsigned int, unsigned int>
2626 <<
"The number of points in this data set is " << arg1
2627 <<
", but we expected " << arg2
2628 <<
" in each space direction.");
2633 "You are trying to write graphical data into a file, but "
2634 "no data is available in the intermediate format that "
2635 "the DataOutBase functions require. Did you forget to "
2636 "call a function such as DataOut::build_patches()?");
2641 "The error code of one of the Tecplot functions was "
2642 "not zero as expected.");
2648 <<
"There was an error opening Tecplot file " << arg1
2766template <
int dim,
int spacedim = dim>
2920 const std::vector<std::string> &piece_names)
const;
2984 const std::string &directory,
2985 const std::string &filename_without_extension,
2986 const unsigned int counter,
2989 const unsigned int n_groups = 0,
3021 const std::string &filename,
3032 const std::string &h5_filename,
3033 const double cur_time,
3043 const std::string &h5_mesh_filename,
3044 const std::string &h5_solution_filename,
3045 const double cur_time,
3074 const std::string &filename,
3093 const std::string &filename,
3105 const bool write_mesh_file,
3106 const std::string &mesh_filename,
3107 const std::string &solution_filename,
3152 const std::string &filename,
3174 write(std::ostream &out,
3190 template <
typename FlagType>
3249 virtual const std::vector<DataOutBase::Patch<dim, spacedim>> &
3256 virtual std::vector<std::string>
3277 virtual std::vector<
3278 std::tuple<
unsigned int,
3429template <
int dim,
int spacedim = dim>
3439 read(std::istream &in);
3477 "You are trying to merge two sets of patches for which the "
3478 "declared names of the variables do not match.");
3483 "You are trying to merge two sets of patches for which the "
3484 "number of subdivisions or the number of vector components "
3494 <<
"Either the dimensions <" << arg1 <<
"> and <" << arg2
3495 <<
"> or the space dimensions <" << arg3 <<
"> and <" << arg4
3496 <<
"> do not match!");
3507 virtual const std::vector<::DataOutBase::Patch<dim, spacedim>> &
3516 virtual std::vector<std::string>
3537 virtual std::vector<
3538 std::tuple<
unsigned int,
3549 std::vector<::DataOutBase::Patch<dim, spacedim>>
patches;
3557 std::tuple<
unsigned int,
3589 const std::uint64_t nodes,
3590 const std::uint64_t cells,
3591 const unsigned int dim_,
3599 XDMFEntry(
const std::string &mesh_filename,
3600 const std::string &solution_filename,
3602 const std::uint64_t nodes,
3603 const std::uint64_t cells,
3604 const unsigned int dim_,
3611 XDMFEntry(
const std::string &mesh_filename,
3612 const std::string &solution_filename,
3614 const std::uint64_t nodes,
3615 const std::uint64_t cells,
3616 const unsigned int dim_,
3617 const unsigned int spacedim,
3631 template <
class Archive>
3736 template <
int dim,
int spacedim>
3748 template <
int dim,
int spacedim>
const double * get_data_set(const unsigned int set_num) const
std::map< unsigned int, unsigned int > filtered_points
std::string get_data_set_name(const unsigned int set_num) const
std::multimap< Point< 3 >, unsigned int, Point3Comp > Map3DPoint
void internal_add_cell(const unsigned int cell_index, const unsigned int pt_index)
void write_cell(const unsigned int index, const unsigned int start, const std::array< unsigned int, dim > &offsets)
std::vector< unsigned int > data_set_dims
unsigned int n_nodes() const
void fill_node_data(std::vector< double > &node_data) const
std::vector< std::vector< double > > data_sets
unsigned int get_data_set_dim(const unsigned int set_num) const
void write_data_set(const std::string &name, const unsigned int dimension, const unsigned int set_num, const Table< 2, double > &data_vectors)
std::map< unsigned int, unsigned int > filtered_cells
std::vector< std::string > data_set_names
void fill_cell_data(const unsigned int local_node_offset, std::vector< unsigned int > &cell_data) const
void write_point(const unsigned int index, const Point< dim > &p)
void write_cell_single(const unsigned int index, const unsigned int start, const unsigned int n_points, const ReferenceCell< dim > &reference_cell)
unsigned int n_cells() const
DataOutBase::DataOutFilterFlags flags
Map3DPoint existing_points
unsigned int n_data_sets() const
XDMFEntry create_xdmf_entry(const DataOutBase::DataOutFilter &data_filter, const std::string &h5_filename, const double cur_time, const MPI_Comm comm) const
virtual std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > get_nonscalar_data_ranges() const
unsigned int default_subdivisions
void parse_parameters(ParameterHandler &prm)
DataOutBase::Deal_II_IntermediateFlags deal_II_intermediate_flags
void write_filtered_data(DataOutBase::DataOutFilter &filtered_data) const
void write_cf_parallel(const DataOutBase::DataOutFilter &data_filter, const std::string &filename, const MPI_Comm comm) const
void write_pvtu_record(std::ostream &out, const std::vector< std::string > &piece_names) const
static void declare_parameters(ParameterHandler &prm)
virtual std::vector< std::string > get_dataset_names() const =0
DataOutBase::TecplotFlags tecplot_flags
void write_vtu_in_parallel(const std::string &filename, const MPI_Comm comm, const DataOutBase::ParallelWriteMode mode=DataOutBase::ParallelWriteMode::mpi_io) const
void write_ucd(std::ostream &out) const
void write_povray(std::ostream &out) const
std::string default_suffix(const DataOutBase::OutputFormat output_format=DataOutBase::default_format) const
void write_xdmf_file(const std::vector< XDMFEntry > &entries, const std::string &filename, const MPI_Comm comm) const
std::string write_vtu_with_pvtu_record(const std::string &directory, const std::string &filename_without_extension, const unsigned int counter, const MPI_Comm mpi_communicator, const unsigned int n_digits_for_counter=numbers::invalid_unsigned_int, const unsigned int n_groups=0, const DataOutBase::ParallelWriteMode mode=DataOutBase::ParallelWriteMode::mpi_io) const
DataOutBase::GmvFlags gmv_flags
std::size_t memory_consumption() const
void set_default_format(const DataOutBase::OutputFormat default_format)
DataOutBase::Hdf5Flags hdf5_flags
DataOutBase::PovrayFlags povray_flags
DataOutBase::UcdFlags ucd_flags
void write(std::ostream &out, const DataOutBase::OutputFormat output_format=DataOutBase::default_format) const
DataOutBase::OutputFormat default_fmt
DataOutBase::GnuplotFlags gnuplot_flags
void write_gnuplot(std::ostream &out) const
virtual ~DataOutInterface()=default
DataOutBase::CFFlags cf_flags
void write_vtu(std::ostream &out) const
void write_hdf5_parallel(const DataOutBase::DataOutFilter &data_filter, const std::string &filename, const MPI_Comm comm) const
void write_tecplot(std::ostream &out) const
void write_deal_II_intermediate_in_parallel(const std::string &filename, const MPI_Comm comm, const DataOutBase::CompressionLevel compression) const
void write_svg(std::ostream &out) const
DataOutBase::SvgFlags svg_flags
void validate_dataset_names() const
void set_flags(const FlagType &flags)
void write_vtk(std::ostream &out) const
virtual const std::vector< DataOutBase::Patch< dim, spacedim > > & get_patches() const =0
DataOutBase::VtkFlags vtk_flags
void write_gmv(std::ostream &out) const
DataOutBase::EpsFlags eps_flags
void write_eps(std::ostream &out) const
DataOutBase::DXFlags dx_flags
void write_dx(std::ostream &out) const
void write_deal_II_intermediate(std::ostream &out) const
void merge(const DataOutReader< dim, spacedim > &other)
void read_whole_parallel_file(std::istream &in)
std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > nonscalar_data_ranges
virtual const std::vector<::DataOutBase::Patch< dim, spacedim > > & get_patches() const override
void read(std::istream &in)
virtual std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > get_nonscalar_data_ranges() const override
virtual std::vector< std::string > get_dataset_names() const override
std::vector< std::string > dataset_names
std::vector<::DataOutBase::Patch< dim, spacedim > > patches
unsigned int n_vertices_per_cell
std::string h5_sol_filename
void serialize(Archive &ar, const unsigned int)
std::string cell_type_name
std::string h5_mesh_filename
std::string get_xdmf_content(const unsigned int indent_level) const
void add_attribute(const std::string &attr_name, const unsigned int dimension)
std::map< std::string, unsigned int > attribute_dims
unsigned int space_dimension
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
static ::ExceptionBase & ExcIncompatiblePatchLists()
#define DeclException4(Exception4, type1, type2, type3, type4, outsequence)
static ::ExceptionBase & ExcNotEnoughSpaceDimensionLabels()
static ::ExceptionBase & ExcInvalidCombinationOfDimensions(int arg1, int arg2)
static ::ExceptionBase & ExcNoPatches()
static ::ExceptionBase & ExcTecplotAPIError()
#define DeclException2(Exception2, type1, type2, outsequence)
static ::ExceptionBase & ExcIncompatibleDimensions(int arg1, int arg2, int arg3, int arg4)
#define DeclExceptionMsg(Exception, defaulttext)
static ::ExceptionBase & ExcIncompatibleDatasetNames()
#define DeclException1(Exception1, type1, outsequence)
static ::ExceptionBase & ExcInvalidDatasetSize(int arg1, int arg2)
static ::ExceptionBase & ExcErrorOpeningTecplotFile(char *arg1)
DataComponentInterpretation
void write_eps(const std::vector< Patch< 2, spacedim > > &patches, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, const EpsFlags &flags, std::ostream &out)
std::pair< unsigned int, unsigned int > determine_intermediate_format_dimensions(std::istream &input)
std::ostream & operator<<(std::ostream &out, const Patch< dim, spacedim > &patch)
void write_deal_II_intermediate_in_parallel(const std::vector< Patch< dim, spacedim > > &patches, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, const Deal_II_IntermediateFlags &flags, const std::string &filename, const MPI_Comm comm, const CompressionLevel compression)
void write_ucd(const std::vector< Patch< dim, spacedim > > &patches, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, const UcdFlags &flags, std::ostream &out)
void write_cf_parallel(const std::vector< Patch< dim, spacedim > > &patches, const DataOutFilter &data_filter, const DataOutBase::CFFlags &flags, const std::string &filename, const MPI_Comm comm)
void write_dx(const std::vector< Patch< dim, spacedim > > &patches, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, const DXFlags &flags, std::ostream &out)
void write_vtu_header(std::ostream &out, const VtkFlags &flags)
void write_vtu(const std::vector< Patch< dim, spacedim > > &patches, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, const VtkFlags &flags, std::ostream &out)
void write_gmv(const std::vector< Patch< dim, spacedim > > &patches, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, const GmvFlags &flags, std::ostream &out)
void write_vtu_main(const std::vector< Patch< dim, spacedim > > &patches, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, const VtkFlags &flags, std::ostream &out)
void write_pvd_record(std::ostream &out, const std::vector< std::pair< double, std::string > > ×_and_names)
void write_deal_II_intermediate(const std::vector< Patch< dim, spacedim > > &patches, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, const Deal_II_IntermediateFlags &flags, std::ostream &out)
void write_vtu_footer(std::ostream &out)
void write_tecplot(const std::vector< Patch< dim, spacedim > > &patches, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, const TecplotFlags &flags, std::ostream &out)
void write_filtered_data(const std::vector< Patch< dim, spacedim > > &patches, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, DataOutFilter &filtered_data)
OutputFormat parse_output_format(const std::string &format_name)
void write_hdf5_parallel(const std::vector< Patch< dim, spacedim > > &patches, const DataOutFilter &data_filter, const DataOutBase::Hdf5Flags &flags, const std::string &filename, const MPI_Comm comm)
std::istream & operator>>(std::istream &in, Patch< dim, spacedim > &patch)
std::string get_output_format_names()
void write_svg(const std::vector< Patch< 2, spacedim > > &patches, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, const SvgFlags &flags, std::ostream &out)
void write_visit_record(std::ostream &out, const std::vector< std::string > &piece_names)
std::string default_suffix(const OutputFormat output_format)
void write_povray(const std::vector< Patch< dim, spacedim > > &patches, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, const PovrayFlags &flags, std::ostream &out)
void write_gnuplot(const std::vector< Patch< dim, spacedim > > &patches, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, const GnuplotFlags &flags, std::ostream &out)
void write_vtk(const std::vector< Patch< dim, spacedim > > &patches, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, const VtkFlags &flags, std::ostream &out)
void write_pvtu_record(std::ostream &out, const std::vector< std::string > &piece_names, const std::vector< std::string > &data_names, const std::vector< std::tuple< unsigned int, unsigned int, std::string, DataComponentInterpretation::DataComponentInterpretation > > &nonscalar_data_ranges, const VtkFlags &flags)
constexpr unsigned int invalid_unsigned_int
std::map< std::string, std::vector< std::pair< std::string, AttributeValue > > > attributes
std::variant< int, double, std::string > AttributeValue
void parse_parameters(const ParameterHandler &prm)
static void declare_parameters(ParameterHandler &prm)
static void declare_parameters(ParameterHandler &prm)
std::size_t memory_consumption() const
void parse_parameters(const ParameterHandler &prm)
bool filter_duplicate_vertices
bool operator()(const Point< 3 > &one, const Point< 3 > &two) const
static void declare_parameters(ParameterHandler &prm)
static RgbValues default_color_function(const double value, const double min_value, const double max_value)
void parse_parameters(const ParameterHandler &prm)
ColorFunction color_function
RgbValues(*)(const double value, const double min_value, const double max_value) ColorFunction
static RgbValues grey_scale_color_function(const double value, const double min_value, const double max_value)
unsigned int color_vector
static RgbValues reverse_grey_scale_color_function(const double value, const double min_value, const double max_value)
@ width
Scale to given width.
@ height
Scale to given height.
unsigned int height_vector
std::vector< std::string > space_dimension_labels
std::size_t memory_consumption() const
DataOutBase::CompressionLevel compression_level
std::size_t memory_consumption() const
static void declare_parameters(ParameterHandler &prm)
void parse_parameters(const ParameterHandler &prm)
static const unsigned int n_subdivisions
bool points_are_available
static const ReferenceCell< 0 > reference_cell
std::size_t memory_consumption() const
static const unsigned int no_neighbor
bool operator==(const Patch &patch) const
ReferenceCell< dim > reference_cell
void swap(Patch< dim, spacedim > &other_patch) noexcept
static const unsigned int space_dim
unsigned int n_subdivisions
std::array< Point< spacedim >, GeometryInfo< dim >::vertices_per_cell > vertices
bool points_are_available
std::array< unsigned int, GeometryInfo< dim >::faces_per_cell > neighbors
static void declare_parameters(ParameterHandler &prm)
void parse_parameters(const ParameterHandler &prm)
unsigned int height_vector
unsigned int line_thickness
std::size_t memory_consumption() const
void parse_parameters(const ParameterHandler &prm)
static void declare_parameters(ParameterHandler &prm)
std::map< std::string, std::string > physical_units
bool write_higher_order_cells
DataOutBase::CompressionLevel compression_level