IBAMR
An adaptive and distributed-memory parallel implementation of the immersed boundary (IB) method
|
Class IBStandardSourceGen provides support for distributed internal fluid sources/sinks. More...
#include </home/runner/work/IBAMR/IBAMR/include/ibamr/IBStandardSourceGen.h>
Public Member Functions | |
IBStandardSourceGen () | |
Default constructor. | |
~IBStandardSourceGen ()=default | |
Destructor. | |
std::vector< double > & | getSourceStrengths (int ln) |
Return a reference to the vector of source strengths. More... | |
const std::vector< double > & | getSourceStrengths (int ln) const |
Return a const reference to the vector of source strengths. | |
const std::vector< double > & | getSourcePressures (int ln) const |
Return a const reference to the vector of source pressures. | |
void | initializeLevelData (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double init_data_time, bool initial_time, IBTK::LDataManager *l_data_manager) override |
Setup the data needed to compute source/sink data on the specified level of the patch hierarchy. More... | |
unsigned int | getNumSources (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double data_time, IBTK::LDataManager *l_data_manager) override |
Specify the number of distributed internal sources or sinks. More... | |
void | getSourceLocations (std::vector< IBTK::Point > &X_src, std::vector< double > &r_src, SAMRAI::tbox::Pointer< IBTK::LData > X_data, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double data_time, IBTK::LDataManager *l_data_manager) override |
Compute the source locations for each of the distributed internal sources or sinks. More... | |
void | setSourcePressures (const std::vector< double > &P_src, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double data_time, IBTK::LDataManager *l_data_manager) override |
Set the normalized pressures at the sources. | |
void | computeSourceStrengths (std::vector< double > &Q_src, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double data_time, IBTK::LDataManager *l_data_manager) override |
Compute the source strengths for each of the distributed internal sources or sinks. More... | |
void | putToDatabase (SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > db) override |
Public Member Functions inherited from IBAMR::IBLagrangianSourceStrategy | |
IBLagrangianSourceStrategy ()=default | |
Default constructor. | |
virtual | ~IBLagrangianSourceStrategy ()=default |
Virtual destructor. | |
virtual void | setTimeInterval (double current_time, double new_time) |
Set the current and new times for the present timestep. More... | |
Static Public Member Functions | |
static bool | getIsRegisteredWithStreamableManager () |
Returns a boolean indicating whether the class has been registered with the singleton IBTK::StreamableManager object. | |
static void | setNumSources (int ln, unsigned int num_sources) |
Set the number of internal sources and sinks on the specified level of the patch hierarchy. | |
static unsigned int | getNumSources (int ln) |
Get the number of internal sources and sinks on the specified level of the patch hierarchy. | |
static void | setSourceNames (int ln, const std::vector< std::string > &names) |
Set the names of the internal sources and sinks on the specified level of the patch hierarchy. | |
static const std::vector< std::string > & | getSourceNames (int ln) |
Get the names of the internal sources and sinks on the specified level of the patch hierarchy. | |
static void | setSourceRadii (int ln, const std::vector< double > &radii) |
Set the sizes of the internal sources and sinks on the specified level of the patch hierarchy. | |
static const std::vector< double > & | getSourceRadii (int ln) |
Get the sizes of the internal sources and sinks on the specified level of the patch hierarchy. | |
Class IBStandardSourceGen provides support for distributed internal fluid sources/sinks.
|
overridevirtual |
Compute the source strengths for each of the distributed internal sources or sinks.
Implements IBAMR::IBLagrangianSourceStrategy.
|
overridevirtual |
Specify the number of distributed internal sources or sinks.
Implements IBAMR::IBLagrangianSourceStrategy.
|
overridevirtual |
Compute the source locations for each of the distributed internal sources or sinks.
Implements IBAMR::IBLagrangianSourceStrategy.
std::vector< double > & IBAMR::IBStandardSourceGen::getSourceStrengths | ( | int | ln | ) |
Return a reference to the vector of source strengths.
|
overridevirtual |
Setup the data needed to compute source/sink data on the specified level of the patch hierarchy.
Reimplemented from IBAMR::IBLagrangianSourceStrategy.
|
overridevirtual |
Write out object state to the given database.
When assertion checking is active, database pointer must be non-null.
Implements SAMRAI::tbox::Serializable.