IBAMR
An adaptive and distributed-memory parallel implementation of the immersed boundary (IB) method
|
Class LSiloDataWriter provides functionality to output Lagrangian data for visualization via the VisIt visualization tool in the Silo data format. More...
#include </home/runner/work/IBAMR/IBAMR/ibtk/include/ibtk/LSiloDataWriter.h>
Public Member Functions | |
LSiloDataWriter (std::string object_name, std::string dump_directory_name, bool register_for_restart=true) | |
Constructor. More... | |
~LSiloDataWriter () | |
Destructor. | |
Methods to set the hierarchy and range of levels. | |
void | setPatchHierarchy (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy) |
Reset the patch hierarchy over which operations occur. | |
void | resetLevels (int coarsest_ln, int finest_ln) |
Reset range of patch levels over which operations occur. | |
void | registerMarkerCloud (const std::string &name, int nmarks, int first_lag_idx, int level_number) |
Register or update a range of Lagrangian indices that are to be visualized as a cloud of marker particles. More... | |
void | registerLogicallyCartesianBlock (const std::string &name, const SAMRAI::hier::IntVector< NDIM > &nelem, const SAMRAI::hier::IntVector< NDIM > &periodic, int first_lag_idx, int level_number) |
Register or update a range of Lagrangian indices that are to be treated as a logically Cartesian block. More... | |
void | registerLogicallyCartesianMultiblock (const std::string &name, const std::vector< SAMRAI::hier::IntVector< NDIM > > &nelem, const std::vector< SAMRAI::hier::IntVector< NDIM > > &periodic, const std::vector< int > &first_lag_idx, int level_number) |
Register or update several ranges of Lagrangian indices that are to be treated as logically Cartesian blocks. More... | |
void | registerUnstructuredMesh (const std::string &name, const std::multimap< int, std::pair< int, int > > &edge_map, int level_number) |
Register or update an unstructured mesh. More... | |
void | registerCoordsData (SAMRAI::tbox::Pointer< LData > coords_data, int level_number) |
Register the coordinates of the curvilinear mesh with the Silo data writer. | |
void | registerVariableData (const std::string &var_name, SAMRAI::tbox::Pointer< LData > var_data, int level_number) |
Register a variable for plotting with the Silo data writer. | |
void | registerVariableData (const std::string &var_name, SAMRAI::tbox::Pointer< LData > var_data, int start_depth, int var_depth, int level_number) |
Register a variable for plotting with the Silo data writer with a specified starting depth and data depth. | |
void | registerLagrangianAO (AO &ao, int level_number) |
Register or update a single Lagrangian AO (application ordering) objects with the Silo data writer. More... | |
void | registerLagrangianAO (std::vector< AO > &ao, int coarsest_ln, int finest_ln) |
Register or update a collection of Lagrangian AO (application ordering) objects with the Silo data writer. More... | |
void | writePlotData (int time_step_number, double simulation_time) |
Write the plot data to disk. | |
void | putToDatabase (SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > db) override |
Class LSiloDataWriter provides functionality to output Lagrangian data for visualization via the VisIt visualization tool in the Silo data format.
For more information about Silo, see the Silo manual here.
IBTK::LSiloDataWriter::LSiloDataWriter | ( | std::string | object_name, |
std::string | dump_directory_name, | ||
bool | register_for_restart = true |
||
) |
Constructor.
object_name | String used for error reporting. |
dump_directory_name | String indicating the directory where visualization data is to be written. |
register_for_restart | Boolean indicating whether to register this object with the restart manager. |
|
overridevirtual |
Write out object state to the given database.
When assertion checking is active, database pointer must be non-null.
Implements SAMRAI::tbox::Serializable.
void IBTK::LSiloDataWriter::registerLagrangianAO | ( | AO & | ao, |
int | level_number | ||
) |
Register or update a single Lagrangian AO (application ordering) objects with the Silo data writer.
These AO objects are used to map between (fixed) Lagrangian indices and (time-dependent) PETSc indices. Each time that the AO objects are reset (e.g., during adaptive regridding), the new AO objects must be supplied to the Silo data writer.
void IBTK::LSiloDataWriter::registerLagrangianAO | ( | std::vector< AO > & | ao, |
int | coarsest_ln, | ||
int | finest_ln | ||
) |
Register or update a collection of Lagrangian AO (application ordering) objects with the Silo data writer.
These AO objects are used to map between (fixed) Lagrangian indices and (time-dependent) PETSc indices. Each time that the AO objects are reset (e.g., during adaptive regridding), the new AO objects must be supplied to the Silo data writer.
void IBTK::LSiloDataWriter::registerLogicallyCartesianBlock | ( | const std::string & | name, |
const SAMRAI::hier::IntVector< NDIM > & | nelem, | ||
const SAMRAI::hier::IntVector< NDIM > & | periodic, | ||
int | first_lag_idx, | ||
int | level_number | ||
) |
Register or update a range of Lagrangian indices that are to be treated as a logically Cartesian block.
void IBTK::LSiloDataWriter::registerLogicallyCartesianMultiblock | ( | const std::string & | name, |
const std::vector< SAMRAI::hier::IntVector< NDIM > > & | nelem, | ||
const std::vector< SAMRAI::hier::IntVector< NDIM > > & | periodic, | ||
const std::vector< int > & | first_lag_idx, | ||
int | level_number | ||
) |
Register or update several ranges of Lagrangian indices that are to be treated as logically Cartesian blocks.
void IBTK::LSiloDataWriter::registerMarkerCloud | ( | const std::string & | name, |
int | nmarks, | ||
int | first_lag_idx, | ||
int | level_number | ||
) |
Register or update a range of Lagrangian indices that are to be visualized as a cloud of marker particles.
void IBTK::LSiloDataWriter::registerUnstructuredMesh | ( | const std::string & | name, |
const std::multimap< int, std::pair< int, int > > & | edge_map, | ||
int | level_number | ||
) |
Register or update an unstructured mesh.