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

Class EnthalpyHierarchyIntegrator is a concrete class that manages the time integration of energy and phase change equations using the enthalpy approach. More...

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

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

Public Member Functions

 EnthalpyHierarchyIntegrator (const std::string &object_name, SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > input_db, bool register_for_restart=true)
 
 ~EnthalpyHierarchyIntegrator ()=default
 
void initializeHierarchyIntegrator (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, SAMRAI::tbox::Pointer< SAMRAI::mesh::GriddingAlgorithm< NDIM > > gridding_alg) override
 
void preprocessIntegrateHierarchy (double current_time, double new_time, int num_cycles=1) override
 
void postprocessIntegrateHierarchy (double current_time, double new_time, bool skip_synchronize_new_state_data, int num_cycles=1) override
 
void addTemporalAndLinearTermstoRHSOfEnergyEquation (int F_scratch_idx, const double dt) override
 
void computeDivergenceVelocitySourceTerm (int Div_U_F_idx, const double new_time) override
 
void setEnthalpyBcCoef (SAMRAI::solv::RobinBcCoefStrategy< NDIM > *h_bc_coef)
 
void putToDatabaseSpecialized (SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > db) override
 

Protected Member Functions

void integrateHierarchySpecialized (double current_time, double new_time, int cycle_num=0) override
 

Detailed Description

Class EnthalpyHierarchyIntegrator is a concrete class that manages the time integration of energy and phase change equations using the enthalpy approach.

Constructor & Destructor Documentation

◆ EnthalpyHierarchyIntegrator()

IBAMR::EnthalpyHierarchyIntegrator::EnthalpyHierarchyIntegrator ( const std::string object_name,
SAMRAI::tbox::Pointer< SAMRAI::tbox::Database input_db,
bool  register_for_restart = true 
)

The constructor of EnthalpyHierarchyIntegrator class sets some default values, reads in configuration information from input and restart databases, and registers the integrator object with the restart manager when requested.

◆ ~EnthalpyHierarchyIntegrator()

IBAMR::EnthalpyHierarchyIntegrator::~EnthalpyHierarchyIntegrator ( )
default

The destructor of EnthalpyHierarchyIntegrator class unregisters the integrator object with the restart manager when the object is so registered.

Member Function Documentation

◆ addTemporalAndLinearTermstoRHSOfEnergyEquation()

void IBAMR::EnthalpyHierarchyIntegrator::addTemporalAndLinearTermstoRHSOfEnergyEquation ( int  F_scratch_idx,
const double  dt 
)
override

Add the temporal and linear terms to the RHS of the energy equation.

◆ computeDivergenceVelocitySourceTerm()

void IBAMR::EnthalpyHierarchyIntegrator::computeDivergenceVelocitySourceTerm ( int  Div_U_F_idx,
const double  new_time 
)
override

Compute the source term for the Div U equation.

◆ initializeHierarchyIntegrator()

void IBAMR::EnthalpyHierarchyIntegrator::initializeHierarchyIntegrator ( SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > >  hierarchy,
SAMRAI::tbox::Pointer< SAMRAI::mesh::GriddingAlgorithm< NDIM > >  gridding_alg 
)
override

Initialize the variables, basic communications algorithms, solvers, and other data structures used by this time integrator object.

This method is called automatically by initializePatchHierarchy() prior to the construction of the patch hierarchy. It is also possible for users to make an explicit call to initializeHierarchyIntegrator() prior to calling initializePatchHierarchy().

◆ integrateHierarchySpecialized()

void IBAMR::EnthalpyHierarchyIntegrator::integrateHierarchySpecialized ( double  current_time,
double  new_time,
int  cycle_num = 0 
)
overrideprotected

Synchronously advance each level in the hierarchy over the given time increment.

◆ postprocessIntegrateHierarchy()

void IBAMR::EnthalpyHierarchyIntegrator::postprocessIntegrateHierarchy ( double  current_time,
double  new_time,
bool  skip_synchronize_new_state_data,
int  num_cycles = 1 
)
override

Clean up data following call(s) to integrateHierarchy().

◆ preprocessIntegrateHierarchy()

void IBAMR::EnthalpyHierarchyIntegrator::preprocessIntegrateHierarchy ( double  current_time,
double  new_time,
int  num_cycles = 1 
)
override

Prepare to advance the data from current_time to new_time.

◆ putToDatabaseSpecialized()

void IBAMR::EnthalpyHierarchyIntegrator::putToDatabaseSpecialized ( SAMRAI::tbox::Pointer< SAMRAI::tbox::Database db)
override

Write out specialized object state to the given database.

◆ setEnthalpyBcCoef()

void IBAMR::EnthalpyHierarchyIntegrator::setEnthalpyBcCoef ( SAMRAI::solv::RobinBcCoefStrategy< NDIM > *  h_bc_coef)

Set boundary conditions for $ h $ variable.


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