|
| CubedSphereShellCS () |
| default constructor More...
|
|
| CubedSphereShellCS (int a_nResolution, int a_nLayers=0, Real a_height=1, Real a_radius=1) |
| constructor that makes constant thickness vertical layers More...
|
|
virtual | ~CubedSphereShellCS () |
|
virtual void | define (int a_nResolution, int a_nLayers=0, Real a_height=1, Real a_radius=1) |
|
virtual void | define (const ProblemDomain &a_levelDomain, const RealVect &a_dx) |
|
void | setFlatMap (bool a_flatMap) |
|
void | setHeight (Real a_height) |
|
Real | getHeight () const |
|
void | setRadius (Real a_radius) |
|
Real | getRadius () const |
|
void | setVerticalMap (RefCountedPtr< Spline1DMapping > a_map) |
|
void | regrid (const DisjointBoxLayout &a_newGrids) |
|
RealVect | realCoord (const RealVect &a_X) const |
|
RealVect | mappedCoord (const RealVect &a_x) const |
|
void | vecTransMatrix_Pt (int a_nSourcePanel, int a_nDestPanel, Real a_dX, Real a_dY, Real *a_dT) const |
|
void | vecTransMatrix (int a_nSourcePanel, int a_nDestPanel, int a_nAlphaIx, int a_nBetaIx, Real a_dDeltaA, Real *a_dAvgT, Real *a_dAlphaGradT, Real *a_dBetaGradT) const |
|
VectorTransformation | vectorBlockTransformation (int a_nDst, const RealVect &a_xiSrc, int a_nSrc) const |
| return vector transformation from one block to another at a point. More...
|
|
void | cartesianFromMapped (Real &xx, Real &yy, Real &zz, const RealVect &a_xiSrc, int a_nSrc) const |
| convert from mapped coordinate to Cartesian coordinates More...
|
|
void | mappedFromCartesian (RealVect &a_xiDst, int a_nDst, Real xx, Real yy, Real zz) const |
| convert from Cartesian coordinates to mapped coordinate More...
|
|
void | cssXiFromLonLat2D (RealVect a_llr, RealVect &a_xi, int &a_nPanel) const |
| convert from Lon-Lat-R coordinates to CSS computational coordinate More...
|
|
virtual void | blockRemapping (RealVect &a_xi_valid, int &a_n_valid, const RealVect &a_xiSrc, int a_nSrc) const |
| block mapping conversion function More...
|
|
virtual RealVect | blockRemappingGeneral (int a_nDst, const RealVect &a_xiSrc, int a_nSrc) const |
|
virtual Vector< RealVect > | displacements (const Vector< RealVect > &a_dstCoords, const Vector< int > &a_dstBlocks, const RealVect &a_srcCoords, int a_srcBlock) const |
| return displacements More...
|
|
virtual void | separateVolFlux (LevelData< FluxBox > &a_flux) const |
| Have separate volume flux on each block. Normally does nothing, but cubed-sphere coordinate system needs it. More...
|
|
| MultiBlockCoordSys () |
| default constructor More...
|
|
virtual | ~MultiBlockCoordSys () |
| destructor (should this delete the members of coordSysVect? More...
|
|
virtual int | whichBlock (const Box &a_box) const |
| returns block number in which a_box is contained in the global index space More...
|
|
virtual int | whichBlock (const IntVect &a_iv) const |
| returns block number in which a_iv is contained in the global index space More...
|
|
virtual int | whichBlockOverlap (const Box &a_box) const |
| returns block number that overlaps a_box in the global index space More...
|
|
virtual int | whichBlockBuffered (const IntVect &a_iv, int a_bufferSize) const |
| returns block number in which a_iv is contained within buffer of a_bufferSize More...
|
|
virtual IntVect | cellAvoidingBoundaries (const IntVect &a_cell, int a_blockNum, int a_radius) const |
| return a cell that is far enough away from external boundaries More...
|
|
virtual void | keepInDomain (Box &a_bx, int a_blockNum) const |
| modify a_bx so that it lies entirely within the physical domain More...
|
|
virtual ProblemDomain | problemDomain (const Box &a_baseBox, int a_numGhost) const |
| return ProblemDomain within block, with box and ghost cells More...
|
|
virtual ProblemDomain | blockDomainOfBox (const Box &a_baseBox) const |
| return ProblemDomain of block containing a box More...
|
|
virtual VectorTransformation | vectorBlockTransformationCenter (int a_nDst, const IntVect &a_ivSrc, int a_nSrc) const |
| return vector transformation from one block to another at center of a cell. More...
|
|
virtual void | vectorBlockTransformationCenter (BaseFab< VectorTransformation > &a_vtFab, int a_nDst, const Box &a_srcBox, int a_nSrc) const |
|
virtual VectorTransformation | vectorBlockTransformationAvg (int a_nDst, const IntVect &a_ivSrc, int a_nSrc) const |
| return average vector transformation from one block to another at a cell More...
|
|
virtual void | vectorBlockTransformationAvg (BaseFab< VectorTransformation > &a_vtFab, int a_nDst, const Box &a_srcBox, int a_nSrc, Interval a_fixedDims=Interval()) const |
| return average vector transformation from one block to another at a cell, with averaging over specified dimensions only More...
|
|
virtual Tuple< VectorTransformation, SpaceDim > | vectorBlockTransformationGrad (int a_nDst, const IntVect &a_ivSrc, int a_nSrc) const |
| return gradient of vector transformation from one block to another at a cell More...
|
|
virtual void | vectorBlockTransformationGrad (BaseFab< VectorTransformation > &a_vtGradFab, int a_nDst, const Box &a_srcBox, int a_nSrc, Interval a_fixedDims=Interval()) const |
| return gradient of vector transformation from one block to another at a cell, over specified dimensions only More...
|
|
virtual void | vectorBlockAvgTransformation (BaseFab< VectorAvgTransformation > &a_vtAvgFab, int a_nDst, const Box &a_srcBox, int a_nSrc, Interval a_fixedDims=Interval()) const |
|
virtual Real | distance (const RealVect &a_srcCoords, int a_srcBlock, const RealVect &a_dstCoords, int a_dstBlock) const |
| return distance between two points More...
|
|
virtual const NewCoordSys * | getCoordSys (int a_n) const |
| Return the mapping which corresponds to the block with the given index. More...
|
|
virtual const NewCoordSys * | getCoordSys (const Box &a_box) const |
|
const Vector< Box > & | mappingBlocks () const |
| const access to the mapping blocks More...
|
|
int | numBlocks () const |
| number of blocks More...
|
|
const Vector< Tuple< BlockBoundary, 2 *SpaceDim > > & | boundaries () const |
| const access to the block boundaries More...
|
|
const BaseFab< int > & | validNum (int a_block) const |
| const access to m_validNum[a_block] More...
|
|
const BaseFab< int > & | validBlocks (int a_block) const |
| const access to m_validBlocks[a_block] More...
|
|
const BaseFab< IndicesTransformation > & | validTransformations (int a_block) const |
| const access to m_validTransformations[a_block] More...
|
|
const IndicesTransformation & | blockTransformation (int a_blockSrc, int a_blockDst) const |
| const access to m_allBlockTransformations[blockSrc][blockDst] More...
|
|
void | initializeBlockTransformations () |
| Need to have m_boundaries for this. More...
|
|
void | validBlocksCells (Vector< int > &a_validBlocks, Vector< IntVect > &a_validCells, int a_origBlock, const IntVect &a_origCell) |
| Return list of valid blocks and cells corresponding to a_cell in a_block. More...
|
|
int | realDim () const |
|
RealVect | dxVect () const |
|
bool | gotBoundaries () const |
|
bool | gotBlockTransformations () const |
|
bool | gotMappingBlocks () const |
|
bool | gotCoordSysVect () const |
|
bool | useScriptN () const |
|
bool | isDefined () const |
|
Multiblock coordinate system for cubed sphere shell with variable-thickness spherical layers The CubedSphereShellCS coordinate system class is a multiblock example that takes place on a cubed inflated onto the surface of a sphere, and creates a shell with r-direction layers of variable thickness. NOTE: Supports only a "scaled thin atmosphere" approximation which ignores the r dependencies of the horizontal grid metrics