Go to the documentation of this file.
20 #ifndef LIBMESH_NEMESIS_IO_H
21 #define LIBMESH_NEMESIS_IO_H
25 #include "libmesh/libmesh_common.h"
26 #include "libmesh/mesh_input.h"
27 #include "libmesh/mesh_output.h"
28 #include "libmesh/parallel_object.h"
36 class Nemesis_IO_Helper;
74 virtual void read (
const std::string & base_filename)
override;
79 virtual void write (
const std::string & base_filename)
override;
99 bool allow_empty =
true);
105 const std::vector<Number> & soln,
106 const std::vector<std::string> & names)
override;
113 const std::set<std::string> * system_names)
override;
120 const std::vector<std::string> & names)
override;
134 void verbose (
bool set_verbosity);
140 const std::vector<std::string> &);
155 #if defined(LIBMESH_HAVE_EXODUS_API) && defined(LIBMESH_HAVE_NEMESIS_API)
182 const std::vector<std::string> & names);
202 #endif // LIBMESH_NEMESIS_IO_H
virtual void write(const std::string &base_filename) override
This method implements writing a mesh to a specified file.
The Nemesis_IO class implements reading parallel meshes in the Nemesis file format from Sandia Nation...
void append(bool val)
If true, this flag will cause the Nemesis_IO object to attempt to open an existing file for writing,...
void write_global_data(const std::vector< Number > &, const std::vector< std::string > &)
Write out global variables.
The libMesh namespace provides an interface to certain functionality in the library.
virtual ~Nemesis_IO()
Destructor.
void write_timestep(const std::string &fname, const EquationSystems &es, const int timestep, const Real time)
Write one timestep's worth of the solution.
void prepare_to_write_nodal_data(const std::string &fname, const std::vector< std::string > &names)
Helper function containing code shared between the two different versions of write_nodal_data which t...
std::unique_ptr< Nemesis_IO_Helper > nemhelper
Nemesis_IO(MeshBase &mesh, bool single_precision=false)
Constructor.
virtual void read(const std::string &base_filename) override
Implements reading the mesh from several different files.
This is the MeshBase class.
bool _verbose
Controls whether extra debugging information is printed to the screen or not.
virtual void write_nodal_data(const std::string &fname, const std::vector< Number > &soln, const std::vector< std::string > &names) override
Output a nodal solution from data in soln.
void set_output_variables(const std::vector< std::string > &output_variables, bool allow_empty=true)
Specify the list of variables which should be included in the output (whitelist) If empty,...
int _timestep
Keeps track of the current timestep index being written.
This is the EquationSystems class.
void write_element_data(const EquationSystems &es)
Write out element solution in parallel, without localizing the solution vector.
bool _allow_empty_variables
If true, _output_variables is allowed to remain empty.
This class defines an abstract interface for Mesh output.
bool _append
Default false.
std::vector< std::string > _output_variables
The names of the variables to be output.
void verbose(bool set_verbosity)
Set the flag indicating if we should be verbose.
void write_information_records(const std::vector< std::string > &)
Write out information records.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
An object whose state is distributed along a set of processors.