|
| | CoDimCopier () |
| | null constructor, copy constructor and operator= can be compiler defined. More...
|
| |
| | CoDimCopier (const DisjointBoxLayout &a_level, const BoxLayout &a_dest, bool a_exchange=false) |
| | Basic defining constructor. More...
|
| |
| | CoDimCopier (const DisjointBoxLayout &a_level, const BoxLayout &a_dest, const ProblemDomain &a_domain, bool a_exchange=false) |
| | this constructor contains support for periodic BC's More...
|
| |
| | CoDimCopier (const DisjointBoxLayout &a_level, const BoxLayout &a_dest, const IntVect &a_ghost, int a_coDim, bool a_exchange=false) |
| | Copier to copy into coDim corner ghost cells of a_dest from coDim-1 ghost cells of a_level. More...
|
| |
| | CoDimCopier (const DisjointBoxLayout &a_level, const BoxLayout &a_dest, const ProblemDomain &a_domain, const IntVect &a_ghost, int a_coDim, bool a_exchange=false) |
| | Copier to copy data into the coDim corner ghost cells of a_dest from the coDim-1 ghost cells of a_level with support for periodic BCs. More...
|
| |
| virtual | ~CoDimCopier () |
| |
| virtual void | define (const DisjointBoxLayout &a_level, const BoxLayout &a_dest, bool a_exchange=false) |
| | define to match constructor (also doesn't do anything) More...
|
| |
| virtual void | define (const DisjointBoxLayout &a_level, const BoxLayout &a_dest, const ProblemDomain &a_domain, bool a_exchange=false) |
| | define to match constructor (also doesn't do anything) More...
|
| |
| virtual void | define (const DisjointBoxLayout &a_level, const BoxLayout &a_dest, const IntVect &a_ghost, int a_coDim, bool a_exchange=false) |
| |
| virtual void | define (const BoxLayout &a_level, const BoxLayout &a_dest, const ProblemDomain &a_domain, const IntVect &a_ghost, int a_coDim, bool a_exchange=false) |
| | contains support for periodic BCs More...
|
| |
| virtual void | clear () |
| |
| const IntVect & | ghost () |
| |
| const int | coDim () const |
| |
| | Copier () |
| | null constructor, copy constructor and operator= can be compiler defined. More...
|
| |
| | Copier (const Copier &a_rhs) |
| |
| | Copier (const DisjointBoxLayout &a_level, const BoxLayout &a_dest, bool a_exchange=false, IntVect a_shift=IntVect::Zero) |
| |
| | Copier (const DisjointBoxLayout &a_level, const BoxLayout &a_dest, const ProblemDomain &a_domain, bool a_exchange=false, IntVect a_shift=IntVect::Zero) |
| | this constructor contains support for periodic BC's More...
|
| |
| | Copier (const DisjointBoxLayout &a_level, const BoxLayout &a_dest, const IntVect &a_destGhost, bool a_exchange=false, IntVect a_shift=IntVect::Zero) |
| | Copier to copy data into the valid and invalid regions of a_dest from a_level. More...
|
| |
| | Copier (const DisjointBoxLayout &a_level, const BoxLayout &a_dest, const ProblemDomain &a_domain, const IntVect &a_destGhost, bool a_exchange=false, IntVect a_shift=IntVect::Zero) |
| | Copier to copy data into the valid and invalid regions of a_dest from a_level with support for periodic BCs. More...
|
| |
| virtual | ~Copier () |
| |
| virtual void | define (const DisjointBoxLayout &a_level, const BoxLayout &a_dest, bool a_exchange=false, IntVect a_shift=IntVect::Zero) |
| |
| virtual void | define (const DisjointBoxLayout &a_level, const BoxLayout &a_dest, const ProblemDomain &a_domain, bool a_exchange=false, IntVect a_shift=IntVect::Zero) |
| | contains support for periodic BCs More...
|
| |
| virtual void | define (const DisjointBoxLayout &a_level, const BoxLayout &a_dest, const IntVect &a_destGhost, bool a_exchange=false, IntVect a_shift=IntVect::Zero) |
| |
| virtual void | define (const BoxLayout &a_level, const BoxLayout &a_dest, const ProblemDomain &a_domain, const IntVect &a_destGhost, bool a_exchange=false, IntVect a_shift=IntVect::Zero) |
| | contains support for periodic BCs More...
|
| |
| virtual void | exchangeDefine (const DisjointBoxLayout &a_grids, const IntVect &a_ghost, bool a_includeSelf=false) |
| | alternative version of define for exchange copiers that uses new optimized neighborIterator More...
|
| |
| void | defineFixedBoxSize (const DisjointBoxLayout &a_src, const LMap &a_lmap, const IntVect &a_ghost, const ProblemDomain &a_domain, bool a_includeSelf=false, bool a_reverse=false) |
| |
| void | defineFixedBoxSize (const DisjointBoxLayout &a_src, const LMap &a_lmapSrc, const IntVect &a_refRatioSrc, const DisjointBoxLayout &a_dst, const LMap &a_lmapDst, const IntVect &a_refRatioDst, const IntVect &a_ghost, const ProblemDomain &a_domain, bool a_reverse=false) |
| |
| void | defineFixedSizeNodesCollect (const DisjointBoxLayout &a_layout, const LMap &a_lmap, const IntVect &a_ghostSrc, const IntVect &a_ghostDst, const ProblemDomain &a_domain) |
| |
| void | defineFixedSizeNodesCollect (const DisjointBoxLayout &a_src, const LMap &a_lmapSrc, const IntVect &a_refRatioSrc, const IntVect &a_ghostSrc, const DisjointBoxLayout &a_dst, const LMap &a_lmapDst, const IntVect &a_refRatioDst, const IntVect &a_ghostDst, const ProblemDomain &a_domain) |
| |
| void | ghostDefine (const DisjointBoxLayout &a_src, const DisjointBoxLayout &a_dest, const ProblemDomain &a_domain, const IntVect &a_srcGhost) |
| | performs the computation necessary for moving from ghost+valid cells to all valid cells in a_dest More...
|
| |
| void | ghostDefine (const DisjointBoxLayout &a_src, const DisjointBoxLayout &a_dest, const ProblemDomain &a_domain, const IntVect &a_srcGhost, const IntVect &a_destGhost) |
| | performs the computation necessary for moving from ghost+valid cells to all valid+ghost cells in a_dest More...
|
| |
| Copier & | operator= (const Copier &b) |
| |
| void | reverse () |
| |
| void | trimEdges (const DisjointBoxLayout &a_exchangedLayout, const IntVect &ghost) |
| |
| void | coarsen (int a_refRatio) |
| |
| bool | operator== (const Copier &rhs) const |
| |
| int | print () const |
| |
| bool | bufferAllocated () const |
| |
| void | setBufferAllocated (bool arg) const |
| |
| int | numLocalCellsToCopy () const |
| |
| int | numFromCellsToCopy () const |
| |
| int | numToCellsToCopy () const |
| |
| bool | isDefined () const |
| |
An even strangerer (than CornerCopier) thing to copy from ghost cells to corner ghost cells.
This is a specialized Copier to fill corner ghost cells of Codim n from codim (n-1) ghost cells of adjacent boxes. Calling exchange with this copier will fill only the corner ghost cells. All other exchange operations should be performed by calling a separate exchange with a normal Copier. For this to work properly, one needs to call it DIM-1 times, starting with a coDim of 1, and ending with coDim DIM-1. To automate this, we provide a CoDimCopierManager class, which defines the appropriate CoDimCopiers and also managed the series of CoDim exchanges.