|
Chombo + EB + MF
3.2
|
The class MultiBlockLevelCopier stores topological and geometric information. More...
#include <MultiBlockLevelCopier.H>

Public Member Functions | |
| MultiBlockLevelCopier () | |
| default constructor More... | |
| virtual | ~MultiBlockLevelCopier () |
| destructor More... | |
| MultiBlockLevelCopier (const MultiBlockLevelGeom *a_geomPtr, const BoxLayout &a_dstLayout, int a_order) | |
| full constructor More... | |
| MultiBlockLevelCopier (const MultiBlockLevelGeom *a_geomPtr, const DisjointBoxLayout &a_dstDisjointLayout, const IntVect &a_ghostVect, int a_order) | |
| virtual void | undefine () |
| virtual void | define (const MultiBlockLevelGeom *a_geomPtr, const BoxLayout &a_dstLayout, int a_order) |
| virtual void | define (const MultiBlockLevelGeom *a_geomPtr, const DisjointBoxLayout &a_dstDisjointLayout, const IntVect &a_ghostVect, int a_order) |
| virtual void | defineVector () |
| must be in the derived class, else error when calling. More... | |
| virtual void | copyTo (const LevelData< FArrayBox > &a_src, BoxLayoutData< FArrayBox > &a_dst, const Interval &a_intvl) const |
| copy from a_src to extra-block cells of a_dst at components in a_intvl More... | |
| virtual void | copyTo (const LevelData< FArrayBox > &a_src, BoxLayoutData< FArrayBox > &a_dst) const |
| copy from a_src to extra-block cells of a_dst at all components More... | |
| virtual void | copyToVector (const LevelData< FArrayBox > &a_src, BoxLayoutData< FArrayBox > &a_dst) const |
| copy from a_src to extra-block cells of vector a_dst at all components More... | |
| virtual void | copyToVector (const LevelData< FArrayBox > &a_src, BoxLayoutData< FArrayBox > &a_dst, const Interval &a_intvl) const |
| copy from a_src to extra-block cells of vector a_dst at components in a_intvl, of length SpaceDim. Must be in the derived class, else error when calling. More... | |
| virtual void | copyToAllWithVector (const LevelData< FArrayBox > &a_src, BoxLayoutData< FArrayBox > &a_dst, const Interval &a_vecIntvl) const |
| copy from a_src to extra-block cells of a_dst at all components where a_vecIntvl is interval of components of a vector, and the other components are scalars More... | |
| const LayoutData< IntVectSet > & | extraCells () const |
| accessor More... | |
| const LayoutData< RefCountedPtr< IVSFAB< MBStencil > > > & | stencils () const |
| accessor More... | |
| bool | isDefined () const |
Protected Attributes | |
| bool | m_isDefined |
| is defined? More... | |
| bool | m_isVectorDefined |
| is defined for vector transformations? More... | |
| IndexType | m_type |
| either IndexType::TheCellType() for averaged, or IndexType::TheNodeType() for centered More... | |
| DisjointBoxLayout | m_srcLayout |
| underlying source grids More... | |
| DisjointBoxLayout | m_srcFullLayout |
| BoxLayout | m_dstLayout |
| underlying destination grids More... | |
| BoxLayout | m_dstFixedOff |
| displacement of original destination layout from m_dstLayout: 0 in m_interpDimsVect but varying in m_fixedDimsVect More... | |
| bool | m_allGridsHaveFixedPt |
| whether all original underlying grids contain m_fixedPt in m_fixedDimsVect More... | |
| LayoutData< int > | m_blockNumbersDst |
| block number of base box of each box in m_dstLayout More... | |
| int | m_order |
| order of approximation wanted More... | |
| int | m_radius |
| radius of neighborhood of data used for interpolation to extra-block cell More... | |
| int | m_degree |
| degree of Taylor polynomials More... | |
| Box | m_degreeBox |
| [0:m_degree]^D More... | |
| Vector< IntVect > | m_powers |
| powers in Taylor polynomial More... | |
| int | m_numTaylorCoeffs |
| number of coefficients in Taylor polynomial More... | |
| MultiBlockLevelGeom * | m_geomPtr |
| contains topological and geometric information More... | |
| MultiBlockCoordSys * | m_coordSysPtr |
| contains coordinate systems; from m_geomPtr More... | |
| int | m_nblocks |
| Number of mapping blocks. More... | |
| LayoutData< IntVectSet > | m_extraCellsIVS |
| extra-block cells of m_dstLayout that need to be filled in, in the form of IntVectSets More... | |
| LayoutData< IVSFAB< int > *> | m_validBlock |
| index of the valid block in which the center of each extra-block ghost cell falls. Lives on m_extraCellsIVS, has 1 component. More... | |
| LayoutData< IVSFAB< IntVect > *> | m_validIndices |
| index of the valid cell in which each extra-block ghost cell falls. Lives on m_extraCellsIVS, has 1 component. More... | |
| LayoutData< IVSFAB< RealVect > *> | m_validMappedCenter |
| mapped coordinates, in valid block's index space, of center of each extra-block ghost cell. Lives on m_extraCellsIVS, has 1 component. More... | |
| Interval | m_fixedDims |
| interval of dimensions that are fixed. Default empty. More... | |
| Vector< int > | m_fixedDimsVect |
| dimensions that are fixed. Default empty. More... | |
| Vector< int > | m_interpDimsVect |
| dimensions that are not fixed. Default 0:SpaceDim-1. More... | |
| Vector< int > | m_fixedPt |
| fixed values of dimensions that are fixed. Default empty. More... | |
| BoxLayout | m_gridsFixedOff |
| displacement from m_fixedPt of original underlying grids, 0 in m_interpDimsVect but varying in m_fixedDimsVect More... | |
| LayoutData< RefCountedPtr< IVSFAB< MBStencil > > > | m_stencils |
| interpolation stencils More... | |
| LayoutData< RefCountedPtr< IVSFAB< MBVectorStencil > > > | m_vectorstencils |
| vector interpolation stencils More... | |
| Vector< BoxLayout * > | m_validLayout |
| for each source block, min Box containing valid cells More... | |
| Vector< BoxLayout * > | m_validFullLayout |
| Vector< RefCountedPtr< LayoutData< Box > > > | m_stencilCellsMinBox |
| Vector< RefCountedPtr< LayoutData< Box > > > | m_stencilCellsFullMinBox |
| Vector< Copier * > | m_copiers |
| Copier *m_copiers[srcBlock] for copying from m_grids to BoxLayout *m_validLayout[srcBlock]. More... | |
| Vector< Copier * > | m_copiersFull |
| MultiBlockUtil * | m_mbUtil |
The class MultiBlockLevelCopier stores topological and geometric information.
MultiBlockLevelCopier stores topological and geometric information about a particular layout with a particular MultiBlockCoordSys, for copying to another layout.
Implementations of specific multiblock coordinate systems will be provided by derived classes.
|
inline |
default constructor
References copyTo(), copyToAllWithVector(), copyToVector(), define(), defineVector(), m_isDefined, m_isVectorDefined, undefine(), and ~MultiBlockLevelCopier().
|
virtual |
destructor
Referenced by MultiBlockLevelCopier().
| MultiBlockLevelCopier::MultiBlockLevelCopier | ( | const MultiBlockLevelGeom * | a_geomPtr, |
| const BoxLayout & | a_dstLayout, | ||
| int | a_order | ||
| ) |
full constructor
| MultiBlockLevelCopier::MultiBlockLevelCopier | ( | const MultiBlockLevelGeom * | a_geomPtr, |
| const DisjointBoxLayout & | a_dstDisjointLayout, | ||
| const IntVect & | a_ghostVect, | ||
| int | a_order | ||
| ) |
|
virtual |
Referenced by MultiBlockLevelCopier().
|
virtual |
Reimplemented in MultiBlockLevelCopierAverage, and MultiBlockLevelCopierCenter.
Referenced by MultiBlockLevelCopier().
|
virtual |
Reimplemented in MultiBlockLevelCopierAverage, and MultiBlockLevelCopierCenter.
|
virtual |
must be in the derived class, else error when calling.
Referenced by MultiBlockLevelCopier().
|
virtual |
copy from a_src to extra-block cells of a_dst at components in a_intvl
Referenced by MultiBlockLevelCopier().
|
virtual |
copy from a_src to extra-block cells of a_dst at all components
|
virtual |
copy from a_src to extra-block cells of vector a_dst at all components
Referenced by MultiBlockLevelCopier().
|
virtual |
copy from a_src to extra-block cells of vector a_dst at components in a_intvl, of length SpaceDim. Must be in the derived class, else error when calling.
|
virtual |
copy from a_src to extra-block cells of a_dst at all components where a_vecIntvl is interval of components of a vector, and the other components are scalars
Referenced by MultiBlockLevelCopier().
|
inline |
accessor
References CH_assert, isDefined(), and m_extraCellsIVS.
|
inline |
accessor
IVSFAB<MBStencil> *m_stencils[dit] lives on m_ghostCells[dit] and has 1 component. For each IntVect thisGhostCell in IntVectSet m_ghostCellsdit, MBStencil *m_stencils[dit](thisGhostCell, 0) contains the interpolation stencil for thisGhostCell.
References CH_assert, isDefined(), and m_stencils.
|
inline |
References m_isDefined.
Referenced by extraCells(), and stencils().
|
protected |
is defined?
Referenced by isDefined(), and MultiBlockLevelCopier().
|
protected |
is defined for vector transformations?
Referenced by MultiBlockLevelCopier().
|
protected |
either IndexType::TheCellType() for averaged, or IndexType::TheNodeType() for centered
|
protected |
underlying source grids
|
protected |
|
protected |
underlying destination grids
|
protected |
displacement of original destination layout from m_dstLayout: 0 in m_interpDimsVect but varying in m_fixedDimsVect
|
protected |
whether all original underlying grids contain m_fixedPt in m_fixedDimsVect
|
protected |
block number of base box of each box in m_dstLayout
|
protected |
order of approximation wanted
|
protected |
radius of neighborhood of data used for interpolation to extra-block cell
|
protected |
degree of Taylor polynomials
|
protected |
[0:m_degree]^D
|
protected |
number of coefficients in Taylor polynomial
|
protected |
contains topological and geometric information
|
protected |
contains coordinate systems; from m_geomPtr
|
protected |
Number of mapping blocks.
|
protected |
extra-block cells of m_dstLayout that need to be filled in, in the form of IntVectSets
For each dit, IntVectSet m_extraCellsIVS[dit] contains the cells of m_grids[dit] that\ are not in block m_blockNumbersDst[dit].
Referenced by extraCells().
|
protected |
index of the valid block in which the center of each extra-block ghost cell falls. Lives on m_extraCellsIVS, has 1 component.
|
protected |
index of the valid cell in which each extra-block ghost cell falls. Lives on m_extraCellsIVS, has 1 component.
|
protected |
mapped coordinates, in valid block's index space, of center of each extra-block ghost cell. Lives on m_extraCellsIVS, has 1 component.
|
protected |
interval of dimensions that are fixed. Default empty.
|
protected |
dimensions that are fixed. Default empty.
|
protected |
dimensions that are not fixed. Default 0:SpaceDim-1.
|
protected |
fixed values of dimensions that are fixed. Default empty.
|
protected |
displacement from m_fixedPt of original underlying grids, 0 in m_interpDimsVect but varying in m_fixedDimsVect
|
protected |
interpolation stencils
For each dit, IVSFAB<MBStencil> *m_stencils[dit] lives on IntVectSet m_extraCellsIVS[dit] and has 1 component, containing the stencil for each extra-block ghost cell of m_grids[dit].
Referenced by stencils().
|
protected |
vector interpolation stencils
For each dit, IVSFAB<MBVectorStencil> *m_vectorstencils[dit] lives on IntVectSet m_extraCellsIVS[dit] and has 1 component, containing the vector stencil for each extra-block ghost cell of m_grids[dit].
|
protected |
|
protected |
|
protected |
1.8.13