The class MultiBlockLevelExchange stores topological and geometric information.
More...
#include <MultiBlockLevelExchange.H>
|
| MultiBlockLevelExchange () |
| default constructor More...
|
|
virtual | ~MultiBlockLevelExchange () |
| destructor More...
|
|
| MultiBlockLevelExchange (const MultiBlockLevelGeom *a_geomPtr, int a_ghosts, int a_order) |
| full constructor More...
|
|
virtual void | undefine () |
|
virtual void | define (const MultiBlockLevelGeom *a_geomPtr, int a_ghosts, int a_order) |
|
virtual void | defineVector () |
| must be in the derived class, else error when calling. More...
|
|
virtual void | interpGhosts (LevelData< FArrayBox > &a_data, const Interval &a_intvl) const |
| fill extra-block ghost cells of a_data at components in a_intvl More...
|
|
virtual void | interpGhosts (LevelData< FArrayBox > &a_data) const |
| fill extra-block ghost cells of a_data at all components More...
|
|
virtual void | interpGhostsVector (LevelData< FArrayBox > &a_data) const |
| fill extra-block ghost cells of vector a_data at all components More...
|
|
virtual void | interpGhostsVector (LevelData< FArrayBox > &a_data, const Interval &a_intvl) const |
| fill extra-block ghost cells of vector a_data at components in a_intvl, of length SpaceDim. Must be in the derived class, else error when calling. More...
|
|
virtual void | interpGhostsAllWithVector (LevelData< FArrayBox > &a_data, const Interval &a_vecIntvl) const |
| fill extra-block ghost cells of all components of a_data at components, where a_vecIntvl is interval of components of a vector, and the other components are scalars More...
|
|
const LayoutData< IntVectSet > & | ghostCells () const |
| accessor More...
|
|
const LayoutData< RefCountedPtr< IVSFAB< MBStencil > > > & | stencils () const |
| accessor More...
|
|
const LayoutData< RefCountedPtr< IVSFAB< MBVectorStencil > > > & | vectorstencils () const |
| accessor More...
|
|
bool | isDefined () const |
|
The class MultiBlockLevelExchange stores topological and geometric information.
MultiBlockLevelExchange stores topological and geometric information about a particular layout with a particular MultiBlockCoordSys.
Implementations of specific multiblock coordinate systems will be provided by derived classes.
◆ MultiBlockLevelExchange() [1/2]
MultiBlockLevelExchange::MultiBlockLevelExchange |
( |
| ) |
|
|
inline |
◆ ~MultiBlockLevelExchange()
virtual MultiBlockLevelExchange::~MultiBlockLevelExchange |
( |
| ) |
|
|
virtual |
◆ MultiBlockLevelExchange() [2/2]
MultiBlockLevelExchange::MultiBlockLevelExchange |
( |
const MultiBlockLevelGeom * |
a_geomPtr, |
|
|
int |
a_ghosts, |
|
|
int |
a_order |
|
) |
| |
◆ undefine()
virtual void MultiBlockLevelExchange::undefine |
( |
| ) |
|
|
virtual |
◆ define()
virtual void MultiBlockLevelExchange::define |
( |
const MultiBlockLevelGeom * |
a_geomPtr, |
|
|
int |
a_ghosts, |
|
|
int |
a_order |
|
) |
| |
|
virtual |
◆ defineVector()
virtual void MultiBlockLevelExchange::defineVector |
( |
| ) |
|
|
virtual |
◆ interpGhosts() [1/2]
◆ interpGhosts() [2/2]
virtual void MultiBlockLevelExchange::interpGhosts |
( |
LevelData< FArrayBox > & |
a_data | ) |
const |
|
virtual |
fill extra-block ghost cells of a_data at all components
◆ interpGhostsVector() [1/2]
virtual void MultiBlockLevelExchange::interpGhostsVector |
( |
LevelData< FArrayBox > & |
a_data | ) |
const |
|
virtual |
◆ interpGhostsVector() [2/2]
fill extra-block ghost cells of vector a_data at components in a_intvl, of length SpaceDim. Must be in the derived class, else error when calling.
◆ interpGhostsAllWithVector()
virtual void MultiBlockLevelExchange::interpGhostsAllWithVector |
( |
LevelData< FArrayBox > & |
a_data, |
|
|
const Interval & |
a_vecIntvl |
|
) |
| const |
|
virtual |
fill extra-block ghost cells of all components of a_data at components, where a_vecIntvl is interval of components of a vector, and the other components are scalars
Referenced by MultiBlockLevelExchange().
◆ ghostCells()
◆ stencils()
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.
◆ vectorstencils()
◆ isDefined()
bool MultiBlockLevelExchange::isDefined |
( |
| ) |
const |
|
inline |
◆ removeNoValidSource()
virtual void MultiBlockLevelExchange::removeNoValidSource |
( |
| ) |
|
|
protectedvirtual |
remove from m_ghostCells all cells that do not have complete stencils.
Referenced by isDefined().
◆ m_isDefined
bool MultiBlockLevelExchange::m_isDefined |
|
protected |
◆ m_isVectorDefined
bool MultiBlockLevelExchange::m_isVectorDefined |
|
protected |
◆ m_type
◆ m_grids
◆ m_ghosts
int MultiBlockLevelExchange::m_ghosts |
|
protected |
width of ghost layer around m_grids, at which data will be filled in
◆ m_order
int MultiBlockLevelExchange::m_order |
|
protected |
order of approximation wanted
◆ m_radius
int MultiBlockLevelExchange::m_radius |
|
protected |
radius of neighborhood of data used for interpolation to ghost cell
◆ m_degree
int MultiBlockLevelExchange::m_degree |
|
protected |
degree of Taylor polynomials
◆ m_degreeBox
Box MultiBlockLevelExchange::m_degreeBox |
|
protected |
◆ m_powers
powers in Taylor polynomial
◆ m_numTaylorCoeffs
int MultiBlockLevelExchange::m_numTaylorCoeffs |
|
protected |
number of coefficients in Taylor polynomial
◆ m_geomPtr
contains topological and geometric information
◆ m_coordSysPtr
contains coordinate systems; from m_geomPtr
◆ m_gridsFull
original underlying grids
◆ m_nblocks
int MultiBlockLevelExchange::m_nblocks |
|
protected |
Number of mapping blocks.
◆ m_ghostCells
extra-block ghost cells of m_grids that need to be filled in
Referenced by ghostCells().
◆ m_fixedDims
Interval MultiBlockLevelExchange::m_fixedDims |
|
protected |
interval of dimensions that are fixed. Default empty.
◆ m_fixedDimsVect
Vector<int> MultiBlockLevelExchange::m_fixedDimsVect |
|
protected |
dimensions that are fixed. Default empty.
◆ m_interpDimsVect
Vector<int> MultiBlockLevelExchange::m_interpDimsVect |
|
protected |
dimensions that are not fixed. Default 0:SpaceDim-1.
◆ m_fixedPt
Vector<int> MultiBlockLevelExchange::m_fixedPt |
|
protected |
fixed values of dimensions that are fixed. Default empty.
◆ m_gridsFixedOff
BoxLayout MultiBlockLevelExchange::m_gridsFixedOff |
|
protected |
displacement of original underlying grids from m_grids: 0 in m_interpDimsVect but varying in m_fixedDimsVect
◆ m_allGridsHaveFixedPt
bool MultiBlockLevelExchange::m_allGridsHaveFixedPt |
|
protected |
whether all original underlying grids contain m_fixedPt in m_fixedDimsVect
◆ m_stencils
interpolation stencils
For each dit, IVSFAB<MBStencil> *m_stencils[dit] lives on IntVectSet m_ghostCells[dit] and has 1 component, containing the stencil for each extra-block ghost cell of m_grids[dit].
Referenced by stencils().
◆ m_vectorstencils
vector interpolation stencils
For each dit, IVSFAB<MBVectorStencil> *m_vectorstencils[dit] lives on IntVectSet m_ghostCells[dit] and has 1 component, containing the vector stencil for each extra-block ghost cell of m_grids[dit].
Referenced by vectorstencils().
◆ m_validLayout
for each source block, min Box containing valid cells
For each srcBlock and dit, Box (*(m_validLayout[srcBlock]))[dit] is the minimum Box containing all valid cells that are needed to fill in the ghost cells of m_ghostCells[dit].
◆ m_validFullLayout
◆ m_stencilCellsMinBox
◆ m_stencilCellsFullMinBox
◆ m_copiers
Copier *m_copiers[srcBlock] for copying from m_grids to BoxLayout *m_validLayout[srcBlock].
◆ m_copiersFull
◆ m_mbUtil
The documentation for this class was generated from the following file: