MFEM
v3.2
Finite element discretization library
|
#include <datacollection.hpp>
Public Types | |
enum | { NO_ERROR = 0, READ_ERROR = 1, WRITE_ERROR = 2 } |
Errors returned by Error() More... | |
Public Member Functions | |
DataCollection (const char *collection_name, Mesh *_mesh) | |
Initialize the collection with its name and Mesh. More... | |
virtual void | RegisterField (const char *field_name, GridFunction *gf) |
Add a grid function to the collection. More... | |
GridFunction * | GetField (const char *field_name) |
bool | HasField (const char *name) |
Check if a grid function is part of the collection. More... | |
Mesh * | GetMesh () |
Get a pointer to the mesh in the collection. More... | |
virtual void | SetMesh (Mesh *new_mesh) |
Set/change the mesh associated with the collection. More... | |
void | SetCycle (int c) |
Set time cycle (for time-dependent simulations) More... | |
void | SetTime (double t) |
Set physical time (for time-dependent simulations) More... | |
int | GetCycle () |
Get time cycle (for time-dependent simulations) More... | |
double | GetTime () |
Get physical time (for time-dependent simulations) More... | |
const char * | GetCollectionName () |
Get the name of the collection. More... | |
void | SetOwnData (bool o) |
Set the ownership of collection data. More... | |
void | SetPrecision (int prec) |
Set the precision (number of digits) used for the text output of doubles. More... | |
void | SetPadDigits (int digits) |
Set the number of digits used for the cycle and MPI rank in filenames. More... | |
void | SetPrefixPath (const char *prefix) |
Set the path where the DataCollection will be saved. More... | |
virtual void | Save () |
virtual void | SaveMesh () |
Save the mesh, creating the collection directory. More... | |
virtual void | SaveField (const char *field_name) |
Save one field, assuming the collection directory already exists. More... | |
virtual | ~DataCollection () |
Delete the mesh and fields if owned by the collection. More... | |
int | Error () const |
Get the current error state. More... | |
void | ResetError (int err=NO_ERROR) |
Reset the error state. More... | |
Protected Member Functions | |
DataCollection (const char *collection_name) | |
Create an empty collection with the given name. More... | |
void | DeleteData () |
Delete data owned by the DataCollection keeping field information. More... | |
void | DeleteAll () |
Delete data owned by the DataCollection including field information. More... | |
void | SaveOneField (const std::map< std::string, GridFunction * >::iterator &it) |
Save one field to disk, assuming the collection directory exists. More... | |
Protected Attributes | |
std::string | name |
Name of the collection, used as a directory name when saving. More... | |
std::string | prefix_path |
A path where the directory with results is saved. More... | |
std::map< std::string, GridFunction * > | field_map |
The fields and their names (used when saving) More... | |
Mesh * | mesh |
The (common) mesh for the collected fields. More... | |
int | cycle |
double | time |
Physical time (for time-dependent simulations) More... | |
bool | serial |
Serial or parallel run? If false, append rank (myid) to file names. More... | |
int | myid |
MPI rank (in parallel) More... | |
int | num_procs |
Number of MPI ranks (in parallel) More... | |
int | precision |
Precision (number of digits) used for the text output of doubles. More... | |
int | pad_digits |
Number of digits used for the cycle and MPI rank in filenames. More... | |
bool | own_data |
Should the collection delete its mesh and fields. More... | |
int | error |
Error state. More... | |
Static Protected Attributes | |
static const int | precision_default = 6 |
Default value for precision. More... | |
static const int | pad_digits_default = 6 |
Default value for pad_digits. More... | |
A class for collecting finite element data that is part of the same simulation. Currently, this class groups together several grid functions (fields) and the mesh that they are defined on.
Definition at line 26 of file datacollection.hpp.
anonymous enum |
Errors returned by Error()
Enumerator | |
---|---|
NO_ERROR | |
READ_ERROR | |
WRITE_ERROR |
Definition at line 130 of file datacollection.hpp.
|
protected |
Create an empty collection with the given name.
Definition at line 58 of file datacollection.cpp.
mfem::DataCollection::DataCollection | ( | const char * | collection_name, |
Mesh * | _mesh | ||
) |
Initialize the collection with its name and Mesh.
Definition at line 74 of file datacollection.cpp.
|
virtual |
Delete the mesh and fields if owned by the collection.
Definition at line 310 of file datacollection.cpp.
|
protected |
Delete data owned by the DataCollection including field information.
Definition at line 304 of file datacollection.cpp.
|
protected |
Delete data owned by the DataCollection keeping field information.
Definition at line 285 of file datacollection.cpp.
|
inline |
Get the current error state.
Definition at line 133 of file datacollection.hpp.
|
inline |
Get the name of the collection.
Definition at line 106 of file datacollection.hpp.
|
inline |
Get time cycle (for time-dependent simulations)
Definition at line 102 of file datacollection.hpp.
GridFunction * mfem::DataCollection::GetField | ( | const char * | field_name | ) |
Get a pointer to a grid function in the collection. Returns NULL if 'field_name' is not in the collection.
Definition at line 126 of file datacollection.cpp.
|
inline |
Get a pointer to the mesh in the collection.
Definition at line 92 of file datacollection.hpp.
|
inline |
Get physical time (for time-dependent simulations)
Definition at line 104 of file datacollection.hpp.
|
inline |
Check if a grid function is part of the collection.
Definition at line 89 of file datacollection.hpp.
|
virtual |
Add a grid function to the collection.
Reimplemented in mfem::VisItDataCollection.
Definition at line 117 of file datacollection.cpp.
|
inline |
Reset the error state.
Definition at line 135 of file datacollection.hpp.
|
virtual |
Save the collection to disk. By default, everything is saved in a directory with name "collection_name" or "collection_name_cycle" for time-dependent simulations.
Reimplemented in mfem::VisItDataCollection.
Definition at line 154 of file datacollection.cpp.
|
virtual |
Save one field, assuming the collection directory already exists.
Definition at line 276 of file datacollection.cpp.
|
virtual |
Save the mesh, creating the collection directory.
Definition at line 193 of file datacollection.cpp.
|
protected |
Save one field to disk, assuming the collection directory exists.
Definition at line 243 of file datacollection.cpp.
|
inline |
Set time cycle (for time-dependent simulations)
Definition at line 97 of file datacollection.hpp.
|
virtual |
Set/change the mesh associated with the collection.
Reimplemented in mfem::VisItDataCollection.
Definition at line 99 of file datacollection.cpp.
|
inline |
Set the ownership of collection data.
Definition at line 108 of file datacollection.hpp.
|
inline |
Set the number of digits used for the cycle and MPI rank in filenames.
Definition at line 113 of file datacollection.hpp.
|
inline |
Set the precision (number of digits) used for the text output of doubles.
Definition at line 111 of file datacollection.hpp.
void mfem::DataCollection::SetPrefixPath | ( | const char * | prefix | ) |
Set the path where the DataCollection will be saved.
Definition at line 138 of file datacollection.cpp.
|
inline |
Set physical time (for time-dependent simulations)
Definition at line 99 of file datacollection.hpp.
|
protected |
Time cycle; for time-dependent simulations cycle >= 0, otherwise = -1. When cycle >= 0, it is appended to directory names.
Definition at line 42 of file datacollection.hpp.
|
protected |
Error state.
Definition at line 67 of file datacollection.hpp.
|
protected |
The fields and their names (used when saving)
Definition at line 36 of file datacollection.hpp.
|
protected |
The (common) mesh for the collected fields.
Definition at line 38 of file datacollection.hpp.
|
protected |
MPI rank (in parallel)
Definition at line 49 of file datacollection.hpp.
|
protected |
Name of the collection, used as a directory name when saving.
Definition at line 30 of file datacollection.hpp.
|
protected |
Number of MPI ranks (in parallel)
Definition at line 51 of file datacollection.hpp.
|
protected |
Should the collection delete its mesh and fields.
Definition at line 64 of file datacollection.hpp.
|
protected |
Number of digits used for the cycle and MPI rank in filenames.
Definition at line 56 of file datacollection.hpp.
|
staticprotected |
Default value for pad_digits.
Definition at line 61 of file datacollection.hpp.
|
protected |
Precision (number of digits) used for the text output of doubles.
Definition at line 54 of file datacollection.hpp.
|
staticprotected |
Default value for precision.
Definition at line 59 of file datacollection.hpp.
|
protected |
A path where the directory with results is saved.
Definition at line 33 of file datacollection.hpp.
|
protected |
Serial or parallel run? If false, append rank (myid) to file names.
Definition at line 47 of file datacollection.hpp.
|
protected |
Physical time (for time-dependent simulations)
Definition at line 44 of file datacollection.hpp.