Class CartExtrapPhysBdryOp is a concrete SAMRAI::xfer::RefinePatchStrategy for setting ghost cell values at physical boundaries via constant, linear, or quadratic extrapolation from interior values.
More...
#include </home/runner/work/IBAMR/IBAMR/ibtk/include/ibtk/CartExtrapPhysBdryOp.h>
Class CartExtrapPhysBdryOp is a concrete SAMRAI::xfer::RefinePatchStrategy for setting ghost cell values at physical boundaries via constant, linear, or quadratic extrapolation from interior values.
◆ CartExtrapPhysBdryOp() [1/4]
IBTK::CartExtrapPhysBdryOp::CartExtrapPhysBdryOp |
( |
| ) |
|
|
default |
◆ CartExtrapPhysBdryOp() [2/4]
IBTK::CartExtrapPhysBdryOp::CartExtrapPhysBdryOp |
( |
int |
patch_data_index, |
|
|
const std::string & |
extrap_type = "CONSTANT" |
|
) |
| |
Constructor.
- Parameters
-
patch_data_index | Patch data index requiring ghost cell filling. |
extrap_type | Type of extrapolation to perform: "CONSTANT" specifies constant extrapolation, "LINEAR" specifies linear extrapolation, and "QUADRATIC" specifies quadratic extrapolation. At codim 2 or 3 boundaries, "QUADRATIC" reduces to "LINEAR" extrapolation. |
◆ CartExtrapPhysBdryOp() [3/4]
IBTK::CartExtrapPhysBdryOp::CartExtrapPhysBdryOp |
( |
const std::set< int > & |
patch_data_indices, |
|
|
const std::string & |
extrap_type = "CONSTANT" |
|
) |
| |
Constructor.
- Parameters
-
patch_data_indices | Collection of patch data indices which require ghost cell filling. |
extrap_type | Type of extrapolation to perform: "CONSTANT" specifies constant extrapolation, "LINEAR" specifies linear extrapolation, and "QUADRATIC" specifies quadratic extrapolation. At codim 2 or 3 boundaries, "QUADRATIC" reduces to "LINEAR" extrapolation. |
◆ CartExtrapPhysBdryOp() [4/4]
Constructor.
- Parameters
-
patch_data_indices | Collection of patch data indices which require ghost cell filling. |
extrap_type | Type of extrapolation to perform: "CONSTANT" specifies constant extrapolation, "LINEAR" specifies linear extrapolation, and "QUADRATIC" specifies quadratic extrapolation. At codim 2 or 3 boundaries, "QUADRATIC" reduces to "LINEAR" extrapolation. |
◆ getRefineOpStencilWidth()
IntVector< NDIM > IBTK::CartExtrapPhysBdryOp::getRefineOpStencilWidth |
( |
| ) |
const |
|
overridevirtual |
Function to return maximum stencil width needed over user-defined data interpolation operations. This is needed to determine the correct interpolation data dependencies.
Presently, the refine operator stencil width is zero.
Implements SAMRAI::xfer::RefinePatchStrategy< NDIM >.
◆ postprocessRefine()
Function to perform user-defined postprocess data refine operations. This member function is called after standard refine operations (expressed using concrete subclasses of the SAMRAI::xfer::RefineOperator base class). The postprocess function must refine data from the scratch components of the coarse patch into the scratch components of the fine patch on the specified fine box region. Recall that the scratch components are specified in calls to the registerRefine() function in the SAMRAI::xfer::RefineAlgorithm class.
Presently, the implementation does nothing.
- Parameters
-
fine | Fine patch containing destination data. |
coarse | Coarse patch containing source data. |
fine_box | Box region on fine patch into which data is refined. |
ratio | Integer vector containing ratio relating index space between coarse and fine patches. |
Implements SAMRAI::xfer::RefinePatchStrategy< NDIM >.
◆ preprocessRefine()
Function to perform user-defined preprocess data refine operations. This member function is called before standard refine operations (expressed using concrete subclasses of the SAMRAI::xfer::RefineOperator base class). The preprocess function must refine data from the scratch components of the coarse patch into the scratch components of the fine patch on the specified fine box region. Recall that the scratch components are specified in calls to the registerRefine() function in the SAMRAI::xfer::RefineAlgorithm class.
Presently, the implementation does nothing.
- Parameters
-
fine | Fine patch containing destination data. |
coarse | Coarse patch containing source data. |
fine_box | Box region on fine patch into which data is refined. |
ratio | Integer vector containing ratio relating index space between coarse and fine patches. |
Implements SAMRAI::xfer::RefinePatchStrategy< NDIM >.
◆ setExtrapolationType()
void IBTK::CartExtrapPhysBdryOp::setExtrapolationType |
( |
const std::string & |
extrap_type | ) |
|
Set the extrapolation type employed by this class.
- Parameters
-
extrap_type | Type of extrapolation to perform: "CONSTANT" specifies constant extrapolation, "LINEAR" specifies linear extrapolation, and "QUADRATIC" specifies quadratic extrapolation. At codim 2 or 3 boundaries, "QUADRATIC" reduces to "LINEAR" extrapolation. |
◆ setPhysicalBoundaryConditions()
Function to set data associated with the given list of patch data indices at patch boundaries that intersect the physical domain boundary. The patch data components set in this routine correspond to the "scratch" components specified in calls to the registerRefine() function in the SAMRAI::xfer::RefineAlgorithm class.
- Parameters
-
patch | Patch on which to fill boundary data. |
fill_time | Double simulation time for boundary filling. |
ghost_width_to_fill | Integer vector describing maximum ghost width to fill over all registered scratch components. |
Implements SAMRAI::xfer::RefinePatchStrategy< NDIM >.
The documentation for this class was generated from the following files:
- /home/runner/work/IBAMR/IBAMR/ibtk/include/ibtk/CartExtrapPhysBdryOp.h
- /home/runner/work/IBAMR/IBAMR/ibtk/src/boundary/physical_boundary/CartExtrapPhysBdryOp.cpp