IBAMR  IBAMR version 0.19.
Public Member Functions | List of all members
IBTK::CartSideDoubleRT0Refine Class Referenceabstract

Class CartSideDoubleRT0Refine is a concrete SAMRAI::xfer::RefineOperator object that prolongs side-centered double precision patch data via RT0-based interpolation.

#include <ibtk/CartSideDoubleRT0Refine.h>

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

Public Member Functions

 CartSideDoubleRT0Refine ()=default
 Default constructor. More...
 
 ~CartSideDoubleRT0Refine ()=default
 Destructor. More...
 
virtual bool findRefineOperator (const tbox::Pointer< hier::Variable< DIM > > &var, const std::string &op_name) const=0
 
virtual const std::string & getOperatorName () const=0
 
virtual int getOperatorPriority () const=0
 
virtual hier::IntVector< DIM > getStencilWidth () const=0
 
virtual void refine (hier::Patch< DIM > &fine, const hier::Patch< DIM > &coarse, const int dst_component, const int src_component, const hier::Box< DIM > &fine_box, const hier::IntVector< DIM > &ratio) const=0
 

Implementation of SAMRAI::xfer::RefineOperator interface.

static const std::string s_op_name
 
bool findRefineOperator (const SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > &var, const std::string &op_name) const override
 
const std::string & getOperatorName () const override
 
int getOperatorPriority () const override
 
SAMRAI::hier::IntVector< NDIM > getStencilWidth () const override
 
void refine (SAMRAI::hier::Patch< NDIM > &fine, const SAMRAI::hier::Patch< NDIM > &coarse, int dst_component, int src_component, const SAMRAI::hier::Box< NDIM > &fine_box, const SAMRAI::hier::IntVector< NDIM > &ratio) const override
 
 CartSideDoubleRT0Refine (const CartSideDoubleRT0Refine &from)=delete
 Copy constructor. More...
 
CartSideDoubleRT0Refineoperator= (const CartSideDoubleRT0Refine &that)=delete
 Assignment operator. More...
 

Constructor & Destructor Documentation

◆ CartSideDoubleRT0Refine() [1/2]

IBTK::CartSideDoubleRT0Refine::CartSideDoubleRT0Refine ( )
default

◆ ~CartSideDoubleRT0Refine()

IBTK::CartSideDoubleRT0Refine::~CartSideDoubleRT0Refine ( )
default

◆ CartSideDoubleRT0Refine() [2/2]

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

Member Function Documentation

◆ findRefineOperator() [1/2]

bool IBTK::CartSideDoubleRT0Refine::findRefineOperator ( const SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > &  var,
const std::string &  op_name 
) const
override

Return true if the refining operation matches the variable and name string identifier request; false, otherwise.

◆ getOperatorName() [1/2]

const std::string& IBTK::CartSideDoubleRT0Refine::getOperatorName ( ) const
override

Return name string identifier of the refining operation.

◆ getOperatorPriority() [1/2]

int IBTK::CartSideDoubleRT0Refine::getOperatorPriority ( ) const
override

Return the priority of this operator relative to other refining operators. The SAMRAI transfer routines guarantee that refining using operators with lower priority will be performed before those with higher priority.

◆ getStencilWidth() [1/2]

SAMRAI::hier::IntVector<NDIM> IBTK::CartSideDoubleRT0Refine::getStencilWidth ( ) const
override

Return the stencil width associated with the refining operator. The SAMRAI transfer routines guarantee that the source patch will contain sufficient ghost cell data surrounding the interior to satisfy the stencil width requirements for each refining operator.

◆ refine() [1/2]

void IBTK::CartSideDoubleRT0Refine::refine ( SAMRAI::hier::Patch< NDIM > &  fine,
const SAMRAI::hier::Patch< NDIM > &  coarse,
int  dst_component,
int  src_component,
const SAMRAI::hier::Box< NDIM > &  fine_box,
const SAMRAI::hier::IntVector< NDIM > &  ratio 
) const
override

Refine the source component on the fine patch to the destination component on the coarse patch. The refining operation is performed on the intersection of the destination patch and the coarse box. The fine patch is guaranteed to contain sufficient data for the stencil width of the refining operator.

◆ operator=()

CartSideDoubleRT0Refine& IBTK::CartSideDoubleRT0Refine::operator= ( const CartSideDoubleRT0Refine 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.

◆ findRefineOperator() [2/2]

virtual bool SAMRAI::xfer::RefineOperator< DIM >::findRefineOperator ( const tbox::Pointer< hier::Variable< DIM > > &  var,
const std::string &  op_name 
) const
pure virtualinherited

Return true if the refinement operation matches the variable and name string identifier request; false, otherwise.

◆ getOperatorName() [2/2]

virtual const std::string& SAMRAI::xfer::RefineOperator< DIM >::getOperatorName ( ) const
pure virtualinherited

Return name string identifier of the refinement operation.

◆ getOperatorPriority() [2/2]

virtual int SAMRAI::xfer::RefineOperator< DIM >::getOperatorPriority ( ) const
pure virtualinherited

Return the priority of this operator relative to other refinement operators. The SAMRAI transfer routines guarantee that refinement using operators with lower priority will be performed before those with higher priority.

◆ getStencilWidth() [2/2]

virtual hier::IntVector<DIM> SAMRAI::xfer::RefineOperator< DIM >::getStencilWidth ( ) const
pure virtualinherited

Return the stencil width associated with the refinement operator. The SAMRAI transfer routines guarantee that the source patch will contain sufficient ghost cell data surrounding the interior to satisfy the stencil width requirements for each refinement operator.

◆ refine() [2/2]

virtual void SAMRAI::xfer::RefineOperator< DIM >::refine ( hier::Patch< DIM > &  fine,
const hier::Patch< DIM > &  coarse,
const int  dst_component,
const int  src_component,
const hier::Box< DIM > &  fine_box,
const hier::IntVector< DIM > &  ratio 
) const
pure virtualinherited

Refine the source component on the coarse patch to the destination component on the fine patch. The refinement operation is performed on the intersection of the destination patch and the fine box. The coarse patch is guaranteed to contain sufficient data for the stencil width of the refinement operator.

Member Data Documentation

◆ s_op_name

const std::string IBTK::CartSideDoubleRT0Refine::s_op_name
staticprivate

The operator name.


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