IBAMR
An adaptive and distributed-memory parallel implementation of the immersed boundary (IB) method
Classes | Public Member Functions | List of all members
IBAMR::IBInstrumentPanel Class Reference

Class IBInstrumentPanel provides support for flow meters and pressure gauges. More...

#include </home/runner/work/IBAMR/IBAMR/include/ibamr/IBInstrumentPanel.h>

Inheritance diagram for IBAMR::IBInstrumentPanel:
Inheritance graph
[legend]

Public Member Functions

 IBInstrumentPanel (std::string object_name, SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > input_db)
 Constructor.
 
virtual ~IBInstrumentPanel ()
 Destructor.
 
const std::vector< std::string > & getInstrumentNames () const
 
const double & getInstrumentDataReadTime () const
 
const std::vector< double > & getFlowValues () const
 
const std::vector< double > & getMeanPressureValues () const
 
const std::vector< double > & getPointwisePressureValues () const
 
bool isInstrumented () const
 
void initializeHierarchyIndependentData (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, IBTK::LDataManager *l_data_manager)
 Initialize hierarchy-independent data. More...
 
void initializeHierarchyDependentData (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, IBTK::LDataManager *l_data_manager, int timestep_num, double data_time)
 Initialize hierarchy- and configuration-dependent data.
 
void readInstrumentData (int U_data_idx, int P_data_idx, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, IBTK::LDataManager *l_data_manager, int timestep_num, double data_time)
 Compute the flow rates and pressures in the various distributed internal flow meters and pressure gauges.
 
void setPlotDirectory (const std::string &plot_directory_name)
 Set the directory where plot data is to be written. More...
 
void writePlotData (int timestep_num, double simulation_time)
 Write the plot data to disk.
 

Detailed Description

Class IBInstrumentPanel provides support for flow meters and pressure gauges.

Member Function Documentation

◆ getFlowValues()

const std::vector< double > & IBAMR::IBInstrumentPanel::getFlowValues ( ) const
Returns
A const reference to the vector of flow meter values.
Note
This vector is not initialized until the first call is made to readInstrumentData().

◆ getInstrumentDataReadTime()

const double & IBAMR::IBInstrumentPanel::getInstrumentDataReadTime ( ) const
Returns
A const reference to the most recent time that the flow meter and pressure gauge values were set.
Note
This value is not initialized until the first call is made to readInstrumentData().

◆ getInstrumentNames()

const std::vector< std::string > & IBAMR::IBInstrumentPanel::getInstrumentNames ( ) const
Returns
A const reference to the vector of instrument names.

◆ getMeanPressureValues()

const std::vector< double > & IBAMR::IBInstrumentPanel::getMeanPressureValues ( ) const
Returns
A const reference to the vector of mean pressure values.
Note
This vector is not initialized until the first call is made to readInstrumentData().

◆ getPointwisePressureValues()

const std::vector< double > & IBAMR::IBInstrumentPanel::getPointwisePressureValues ( ) const
Returns
A const reference to the vector of pointwise pressure values.
Note
This vector is not initialized until the first call is made to readInstrumentData().

◆ initializeHierarchyIndependentData()

void IBAMR::IBInstrumentPanel::initializeHierarchyIndependentData ( SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > >  hierarchy,
IBTK::LDataManager l_data_manager 
)

Initialize hierarchy-independent data.

The data initialized by this method is assumed not to change during the course of a simulation.

◆ isInstrumented()

bool IBAMR::IBInstrumentPanel::isInstrumented ( ) const
Returns
A boolean indicating whether there are any instruments embedded within the model data.
Note
This method returns false and prints a warning message prior to the first call to initializeHierarchyIndependentData().

◆ setPlotDirectory()

void IBAMR::IBInstrumentPanel::setPlotDirectory ( const std::string plot_directory_name)

Set the directory where plot data is to be written.

Note
By default, visualization data is placed into the directory "viz_inst2d" for two-dimensional simulations and "viz_inst3d" for three-dimensional simulations.

The documentation for this class was generated from the following files: