IBAMR
An adaptive and distributed-memory parallel implementation of the immersed boundary (IB) method
|
BrinkmanPenalizationStrategy is an abstract class that provides an interface to implement Brinkman penalization body force in the momentum equation. More...
#include </home/runner/work/IBAMR/IBAMR/include/ibamr/BrinkmanPenalizationStrategy.h>
Public Member Functions | |
BrinkmanPenalizationStrategy (std::string object_name, bool register_for_restart=true) | |
virtual void | setTimeInterval (double current_time, double new_time) |
Set the time interval in which Brinkman velocity is computed. | |
virtual void | preprocessComputeBrinkmanPenalization (double current_time, double new_time, int num_cycles) |
Preprocess routine before computing Brinkman penalization related terms. More... | |
virtual void | computeBrinkmanVelocity (int u_idx, double time, int cycle_num)=0 |
Compute the Brinkman penalized velocity term. | |
virtual void | demarcateBrinkmanZone (int u_idx, double time, int cycle_num)=0 |
Demarcate the Brinkman penalization zone with Brinkman penalty term. | |
virtual void | postprocessComputeBrinkmanPenalization (double current_time, double new_time, int num_cycles) |
Postprocess routine after computing Brinkman penalization related terms. More... | |
virtual void | setBrinkmanCoefficient (double chi) |
Set the Brinkman penalization coefficient. More... | |
virtual void | setBrinkmanPenaltyFactor (double penalty_factor) |
Set Brinkman penalization penalty factor. | |
void | putToDatabase (SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > db) override |
Write out object state to the given database. More... | |
const std::string & | getName () const |
double | getBrinkmanCoefficient () const |
double | getBrinkmanPenaltyFactor () const |
std::pair< double, double > | getCurrentTimeInterval () const |
Protected Attributes | |
std::string | d_object_name |
bool | d_registered_for_restart |
double | d_current_time = std::numeric_limits<double>::quiet_NaN() |
double | d_new_time = std::numeric_limits<double>::quiet_NaN() |
double | d_penalty_factor = 1.0 |
bool | d_use_rho_scale = true |
bool | d_use_mu_scale = false |
BrinkmanPenalizationStrategy is an abstract class that provides an interface to implement Brinkman penalization body force in the momentum equation.
|
virtual |
Postprocess routine after computing Brinkman penalization related terms.
Reimplemented in IBAMR::CarmanKozenyDragForce.
|
virtual |
Preprocess routine before computing Brinkman penalization related terms.
Reimplemented in IBAMR::CarmanKozenyDragForce.
|
overridevirtual |
Write out object state to the given database.
Implements SAMRAI::tbox::Serializable.
Reimplemented in IBAMR::CarmanKozenyDragForce.
|
virtual |
Set the Brinkman penalization coefficient.
|
protected |
Book-keeping.