Class MultiblockGriddingTagger<DIM> is a concrete implementation of MultiblockRefinePatchStrategy<DIMI> that is used for boundary filling of patch data representing cells tagged for refinement.
More...
#include <MultiblockGriddingTagger.h>
|
| | MultiblockGriddingTagger () |
| | The constructor does nothing interesting. More...
|
| |
| virtual | ~MultiblockGriddingTagger () |
| | The virtual destructor does nothing interesting. More...
|
| |
| virtual void | setScratchTagPatchDataIndex (int buf_tag_indx) |
| | Set the patch data index for tag data. This routine must be called with a valid cell-centered integer patch data index. More...
|
| |
| virtual void | setPhysicalBoundaryConditions (hier::Patch< DIM > &patch, const double fill_time, const hier::IntVector< DIM > &ghost_width_to_fill) |
| | Physical boundary fill. More...
|
| |
| virtual void | fillSingularityBoundaryConditions (hier::Patch< DIM > &patch, tbox::List< typename xfer::MultiblockRefineSchedule< DIM >::SingularityPatch > &singularity_patches, const double fill_time, const hier::Box< DIM > &fill_box, const hier::BoundaryBox< DIM > &boundary_box) |
| | Set the ghost data at a multiblock singularity. More...
|
| |
| virtual hier::IntVector< DIM > | getRefineOpStencilWidth () const |
| | Return maximum stencil width needed for user-defined data interpolation operations. This is needed to determine the correct interpolation data dependencies. More...
|
| |
| virtual void | preprocessRefine (hier::Patch< DIM > &fine, const hier::Patch< DIM > &coarse, const hier::Box< DIM > &fine_box, const hier::IntVector< DIM > &ratio) |
| |
| virtual void | postprocessRefine (hier::Patch< DIM > &fine, const hier::Patch< DIM > &coarse, const hier::Box< DIM > &fine_box, const hier::IntVector< DIM > &ratio) |
| |
| virtual void | setFillingCoarseScratch (const bool filling_coarse_scratch) |
| |
| virtual void | setBlockNumber (const int block_number) |
| |
| virtual int | getBlockNumber () |
| |
| virtual void | clearBlockNumber () |
| |
| virtual void | preprocessRefineBoxes (hier::Patch< DIM > &fine, const hier::Patch< DIM > &coarse, const hier::BoxList< DIM > &fine_boxes, const hier::IntVector< DIM > &ratio) |
| |
| virtual void | postprocessRefineBoxes (hier::Patch< DIM > &fine, const hier::Patch< DIM > &coarse, const hier::BoxList< DIM > &fine_boxes, const hier::IntVector< DIM > &ratio) |
| |
template<int DIM>
class SAMRAI::mesh::MultiblockGriddingTagger< DIM >
This class is needed for the calls to MultiblockRefineSchedule<DIM> in the MultiblockGriddingAlgorithm<DIM>.
This class implements the interface from MultiblockRefinePatchStrategy for fillSingularityBoundaryConditions(), so that boundary conditions for tag data that abuts a singularity can be properly filled. Also implemented are the interfaces for xfer::RefinePatchStrategy<DIM>, needed primarily for physical boundary filling.
- See also
- mesh::MultiblockGriddingAlgorithm
-
xfer::MultiblockRefineSchedule
-
xfer::MultiblockRefinePatchStrategy
-
xfer::RefinePatchStrategy
◆ MultiblockGriddingTagger()
◆ ~MultiblockGriddingTagger()
◆ setScratchTagPatchDataIndex()
◆ setPhysicalBoundaryConditions()
Implementation of interface defined in xfer::RefinePatchStrategy<DIM>. Fills ghost cells of patch data at physical boundaries.
- Parameters
-
| patch | Patch where data is stored |
| fill_time | Simulation time when filling occurs |
| ghost_width_to_fill | Maximum ghost width of all data to be filled |
Reimplemented from SAMRAI::xfer::MultiblockRefinePatchStrategy< DIM >.
◆ fillSingularityBoundaryConditions()
Implementation of interface defined in MultiblockRefinePatchStrategy<DIM>. Fills ghost cells of patch data that abut multiblock singularities. The list of singularity patches contains the data from neighboring blocks that also abut the singularity, and that data from the neighbors is used to fill data on the local patch.
- Parameters
-
| patch | Local patch containing data to be filled |
| singularity_patches | List of structures that contain data from neighboring blocks. See MultiblockRefineSchedule<DIM> for more information on struct SingularityPatch |
| fill_time | Simulation time when filling occurs |
| fill_box | All ghost data to be filled will be within this box |
| boundary_box | BoundaryBox object that stores information about the type and location of the boundary where ghost cells will be filled |
Implements SAMRAI::xfer::MultiblockRefinePatchStrategy< DIM >.
◆ getRefineOpStencilWidth()
◆ preprocessRefine()
Perform user-defined refining operations. This member function is called before standard refining operations (expressed using concrete subclasses of the xfer::RefineOperator<DIM> 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 xfer::RefineAlgorithm<DIM> class.
- 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. |
Reimplemented from SAMRAI::xfer::MultiblockRefinePatchStrategy< DIM >.
◆ postprocessRefine()
Perform user-defined refining operations. This member function is called before standard refining operations (expressed using concrete subclasses of the xfer::RefineOperator<DIM> 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 xfer::RefineAlgorithm<DIM> class.
- 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. |
Reimplemented from SAMRAI::xfer::MultiblockRefinePatchStrategy< DIM >.
◆ setFillingCoarseScratch()
◆ setBlockNumber()
◆ getBlockNumber()
◆ clearBlockNumber()
◆ preprocessRefineBoxes()
Virtual function to perform user-defined refine operations. This member function is called before standard refining operations (expressed using concrete subclasses of the RefineOperator<DIM> 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 regions.
Typically, only the pure virtual members of this class are implemented in user-defined subclasses of this base class. This version of the preprocess function operates on an entire box list. By default, this version simply loops over the box list and calls the single-box version, which is a pure virtual function.
- Parameters
-
| fine | Fine patch containing destination data. |
| coarse | Coarse patch containing source data. |
| fine_boxes | tbox::List of box regions on fine patch into which data is refined. |
| ratio | Integer vector containing ratio relating index space between coarse and fine patches. |
Reimplemented in SAMRAI::solv::CartesianRobinBcHelper< DIM >.
◆ postprocessRefineBoxes()
Virtual function to perform user-defined refine operations. This member function is called after standard refining operations (expressed using concrete subclasses of the RefineOperator<DIM> 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 regions.
Typically, only the pure virtual members of this class are implemented in user-defined subclasses of this base class. This version of the postprocess function operates on an entire box list. By default, this version simply loops over the box list and calls the single-box version, which is a pure virtual function.
- Parameters
-
| fine | Fine patch containing destination data. |
| coarse | Coarse patch containing source data. |
| fine_boxes | tbox::List of box regions on fine patch into which data is refined. |
| ratio | Integer vector containing ratio relating index space between coarse and fine patches. |
Reimplemented in SAMRAI::solv::CartesianRobinBcHelper< DIM >.
◆ d_buf_tag_indx
◆ d_filling_coarse_scratch
◆ d_block_number
The documentation for this class was generated from the following file: