IBAMR  IBAMR version 0.19.
Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
IBTK::HierarchyGhostCellInterpolation Class Reference

Class HierarchyGhostCellInterpolation encapsulates the operations required to set ghost cell values at physical and coarse-fine boundaries across a range of levels of a locally refined patch hierarchy. More...

#include <ibtk/HierarchyGhostCellInterpolation.h>

Inheritance diagram for IBTK::HierarchyGhostCellInterpolation:
Inheritance graph
[legend]

Classes

class  InterpolationTransactionComponent
 Class HierarchyGhostCellInterpolation::InterpolationTransactionComponent encapsulates options for filling ghost cell values via class HierarchyGhostCellInterpolation. More...
 

Public Member Functions

 HierarchyGhostCellInterpolation ()
 Default constructor. More...
 
virtual ~HierarchyGhostCellInterpolation ()
 Destructor. More...
 
void setHomogeneousBc (bool homogeneous_bc)
 Specify whether the boundary conditions are homogeneous. More...
 
void initializeOperatorState (InterpolationTransactionComponent transaction_comp, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int coarsest_ln=invalid_level_number, int finest_ln=invalid_level_number)
 Setup the hierarchy ghost cell interpolation operator to perform the specified interpolation transactions on the specified patch hierarchy. More...
 
void initializeOperatorState (const std::vector< InterpolationTransactionComponent > &transaction_comps, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int coarsest_ln=invalid_level_number, int finest_ln=invalid_level_number)
 Setup the hierarchy ghost cell interpolation operator to perform the specified collection of interpolation transactions on the specified patch hierarchy. More...
 
void resetTransactionComponent (const InterpolationTransactionComponent &transaction_comps)
 Reset transaction component with the interpolation operator. More...
 
void resetTransactionComponents (const std::vector< InterpolationTransactionComponent > &transaction_comps)
 Reset transaction components with the interpolation operator. More...
 
void reinitializeOperatorState (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy)
 Reinitialize operator state following, e.g., a regridding operation. More...
 
void deallocateOperatorState ()
 Clear all cached data. More...
 
void fillData (double fill_time)
 Fill coarse-fine boundary and physical boundary ghost cells on all levels of the patch hierarchy. More...
 

Private Member Functions

 HierarchyGhostCellInterpolation (const HierarchyGhostCellInterpolation &from)=delete
 Copy constructor. More...
 
HierarchyGhostCellInterpolationoperator= (const HierarchyGhostCellInterpolation &that)=delete
 Assignment operator. More...
 

Private Attributes

bool d_is_initialized = false
 
bool d_homogeneous_bc = false
 
std::vector< InterpolationTransactionComponentd_transaction_comps
 
SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > d_hierarchy
 
SAMRAI::tbox::Pointer< SAMRAI::geom::CartesianGridGeometry< NDIM > > d_grid_geom
 
int d_coarsest_ln = IBTK::invalid_level_number
 
int d_finest_ln = IBTK::invalid_level_number
 
SAMRAI::tbox::Pointer< SAMRAI::xfer::CoarsenAlgorithm< NDIM > > d_coarsen_alg
 
std::unique_ptr< SAMRAI::xfer::CoarsenPatchStrategy< NDIM > > d_coarsen_strategy
 
std::vector< SAMRAI::tbox::Pointer< SAMRAI::xfer::CoarsenSchedule< NDIM > > > d_coarsen_scheds
 
SAMRAI::tbox::Pointer< SAMRAI::xfer::RefineAlgorithm< NDIM > > d_refine_alg
 
std::unique_ptr< SAMRAI::xfer::RefinePatchStrategy< NDIM > > d_refine_strategy
 
std::vector< SAMRAI::tbox::Pointer< SAMRAI::xfer::RefineSchedule< NDIM > > > d_refine_scheds
 
std::vector< SAMRAI::tbox::Pointer< CoarseFineBoundaryRefinePatchStrategy > > d_cf_bdry_ops
 
std::vector< SAMRAI::tbox::Pointer< CartExtrapPhysBdryOp > > d_extrap_bc_ops
 
std::vector< SAMRAI::tbox::Pointer< CartCellRobinPhysBdryOp > > d_cc_robin_bc_ops
 
std::vector< SAMRAI::tbox::Pointer< CartSideRobinPhysBdryOp > > d_sc_robin_bc_ops
 

Detailed Description

Note
In cases where physical boundary conditions are set via extrapolation from interior values, setting ghost cell values may require both coarsening and refining.

Constructor & Destructor Documentation

◆ HierarchyGhostCellInterpolation() [1/2]

IBTK::HierarchyGhostCellInterpolation::HierarchyGhostCellInterpolation ( )

◆ ~HierarchyGhostCellInterpolation()

virtual IBTK::HierarchyGhostCellInterpolation::~HierarchyGhostCellInterpolation ( )
virtual

◆ HierarchyGhostCellInterpolation() [2/2]

IBTK::HierarchyGhostCellInterpolation::HierarchyGhostCellInterpolation ( const HierarchyGhostCellInterpolation from)
privatedelete
Note
This constructor is not implemented and should not be used.
Parameters
fromThe value to copy to this object.

Member Function Documentation

◆ setHomogeneousBc()

void IBTK::HierarchyGhostCellInterpolation::setHomogeneousBc ( bool  homogeneous_bc)

◆ initializeOperatorState() [1/2]

void IBTK::HierarchyGhostCellInterpolation::initializeOperatorState ( InterpolationTransactionComponent  transaction_comp,
SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > >  hierarchy,
int  coarsest_ln = invalid_level_number,
int  finest_ln = invalid_level_number 
)

◆ initializeOperatorState() [2/2]

void IBTK::HierarchyGhostCellInterpolation::initializeOperatorState ( const std::vector< InterpolationTransactionComponent > &  transaction_comps,
SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > >  hierarchy,
int  coarsest_ln = invalid_level_number,
int  finest_ln = invalid_level_number 
)

◆ resetTransactionComponent()

void IBTK::HierarchyGhostCellInterpolation::resetTransactionComponent ( const InterpolationTransactionComponent transaction_comps)

◆ resetTransactionComponents()

void IBTK::HierarchyGhostCellInterpolation::resetTransactionComponents ( const std::vector< InterpolationTransactionComponent > &  transaction_comps)

◆ reinitializeOperatorState()

void IBTK::HierarchyGhostCellInterpolation::reinitializeOperatorState ( SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > >  hierarchy)

◆ deallocateOperatorState()

void IBTK::HierarchyGhostCellInterpolation::deallocateOperatorState ( )

◆ fillData()

void IBTK::HierarchyGhostCellInterpolation::fillData ( double  fill_time)

◆ operator=()

HierarchyGhostCellInterpolation& IBTK::HierarchyGhostCellInterpolation::operator= ( const HierarchyGhostCellInterpolation that)
privatedelete
Note
This operator is not implemented and should not be used.
Parameters
thatThe value to assign to this object.
Returns
A reference to this object.

Member Data Documentation

◆ d_is_initialized

bool IBTK::HierarchyGhostCellInterpolation::d_is_initialized = false
private

◆ d_homogeneous_bc

bool IBTK::HierarchyGhostCellInterpolation::d_homogeneous_bc = false
private

◆ d_transaction_comps

std::vector<InterpolationTransactionComponent> IBTK::HierarchyGhostCellInterpolation::d_transaction_comps
private

◆ d_hierarchy

SAMRAI::tbox::Pointer<SAMRAI::hier::PatchHierarchy<NDIM> > IBTK::HierarchyGhostCellInterpolation::d_hierarchy
private

◆ d_grid_geom

SAMRAI::tbox::Pointer<SAMRAI::geom::CartesianGridGeometry<NDIM> > IBTK::HierarchyGhostCellInterpolation::d_grid_geom
private

◆ d_coarsest_ln

int IBTK::HierarchyGhostCellInterpolation::d_coarsest_ln = IBTK::invalid_level_number
private

◆ d_finest_ln

int IBTK::HierarchyGhostCellInterpolation::d_finest_ln = IBTK::invalid_level_number
private

◆ d_coarsen_alg

SAMRAI::tbox::Pointer<SAMRAI::xfer::CoarsenAlgorithm<NDIM> > IBTK::HierarchyGhostCellInterpolation::d_coarsen_alg
private

◆ d_coarsen_strategy

std::unique_ptr<SAMRAI::xfer::CoarsenPatchStrategy<NDIM> > IBTK::HierarchyGhostCellInterpolation::d_coarsen_strategy
private

◆ d_coarsen_scheds

std::vector<SAMRAI::tbox::Pointer<SAMRAI::xfer::CoarsenSchedule<NDIM> > > IBTK::HierarchyGhostCellInterpolation::d_coarsen_scheds
private

◆ d_refine_alg

SAMRAI::tbox::Pointer<SAMRAI::xfer::RefineAlgorithm<NDIM> > IBTK::HierarchyGhostCellInterpolation::d_refine_alg
private

◆ d_refine_strategy

std::unique_ptr<SAMRAI::xfer::RefinePatchStrategy<NDIM> > IBTK::HierarchyGhostCellInterpolation::d_refine_strategy
private

◆ d_refine_scheds

std::vector<SAMRAI::tbox::Pointer<SAMRAI::xfer::RefineSchedule<NDIM> > > IBTK::HierarchyGhostCellInterpolation::d_refine_scheds
private

◆ d_cf_bdry_ops

std::vector<SAMRAI::tbox::Pointer<CoarseFineBoundaryRefinePatchStrategy> > IBTK::HierarchyGhostCellInterpolation::d_cf_bdry_ops
private

◆ d_extrap_bc_ops

std::vector<SAMRAI::tbox::Pointer<CartExtrapPhysBdryOp> > IBTK::HierarchyGhostCellInterpolation::d_extrap_bc_ops
private

◆ d_cc_robin_bc_ops

std::vector<SAMRAI::tbox::Pointer<CartCellRobinPhysBdryOp> > IBTK::HierarchyGhostCellInterpolation::d_cc_robin_bc_ops
private

◆ d_sc_robin_bc_ops

std::vector<SAMRAI::tbox::Pointer<CartSideRobinPhysBdryOp> > IBTK::HierarchyGhostCellInterpolation::d_sc_robin_bc_ops
private

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