11 #ifndef _CUBEDSPHERE2DPANELCS_H_ 12 #define _CUBEDSPHERE2DPANELCS_H_ 27 #include "NamespaceHeader.H" 64 const Box& a_box)
const;
71 const Box& a_box)
const;
75 const Box& a_box)
const;
80 const Box& a_box)
const;
84 const Box& a_box)
const;
100 const Box& a_box)
const;
105 const Box& a_box)
const;
116 const Box& a_box)
const;
120 const Box& a_box)
const;
128 const Box& a_box)
const;
143 int a_s,
int a_d,
int a_d1,
144 int a_row,
int a_column)
const;
172 const Real * a_vecCS,
173 Real * a_vecXYZ)
const;
178 const Real * a_vecXYZ,
179 Real * a_vecCS)
const;
184 const Real * a_vecRLL,
185 Real * a_vecCS)
const;
218 const IntVect& a_orthoComps)
const;
227 const IntVect& a_csComps)
const;
245 const Box& a_box)
const;
252 const Box& a_box)
const;
275 #include "NamespaceFooter.H"
virtual void getAvgJinverse(FluxBox &a_avgJinverse, const Box &a_box) const
computes face-averaged 1/J
int panel() const
access function to panel id
Definition: CubedSphere2DPanelCS.H:255
virtual void cellVol(FArrayBox &a_vol, const FluxBox &a_N, const Box &a_box) const
computes cell volumes
void vectorTransformLatLonToEquiangular(const RealVect &a_xi, const Real *a_vecRLL, Real *a_vecCS) const
RealVect realCoord(const RealVect &a_Xi) const
given coordinate in mapped space, return its location in real space
void fabVectorTransformLatLonToEquiangular(const FArrayBox &a_xiFab, const FArrayBox &a_vecRLLFab, FArrayBox &a_vecCSFab) const
virtual Real getNMatrixEntry(const RealVect &a_Xi, int a_s, int a_d, int a_d1, int a_row, int a_column) const
note that a_Xi is in mapped space.
void vectorTransformCartesianToEquiangular(const RealVect &a_xi, const Real *a_vecXYZ, Real *a_vecCS) const
void vectorTransformEquiangularToCartesian(const RealVect &a_xi, const Real *a_vecCS, Real *a_vecXYZ) const
Virtual base class encapsulating mapped-grid coordinate systems.
Definition: NewFourthOrderCoordSys.H:77
IntVect m_ix
Definition: CubedSphere2DPanelCS.H:271
virtual void computeDivergence(FArrayBox &a_divF, const FluxBox &a_F, const FluxBox &a_N, const Box &a_box, Interval &divInterval) const
returns integral of divergence over mapped-grid cells
void pointTransformEquiangularToCartesian(const RealVect &a_xi, Real *a_xyz) const
void fabTransformEquiangularToLonLat(const FArrayBox &a_xiFab, FArrayBox &a_rllXiFab) const
virtual void getFaceMappedCoordinates(FArrayBox &a_faceCoords, const int a_dir, const Box &a_box) const
virtual void getAvgJ(FArrayBox &a_avgJ, const Box &a_box) const
computes cell-averaged J
int m_nPanel
Definition: CubedSphere2DPanelCS.H:262
A FArrayBox-like container for face-centered fluxes.
Definition: FluxBox.H:22
virtual void volFlux(FluxBox &a_volFlux, const FluxBox &a_Nt, const Box &a_box) const
computes NT * F.
virtual ~CubedSphere2DPanelCS()
CubedSphere2DPanelCS(int nPanel, RealVect &dDX, IntVect &ix)
constructor
virtual void curlSpherical(const FArrayBox &a_vecFab, FArrayBox &a_curlFab, const Box &a_box) const
return radial component of curl of a_vecFab, which has SpaceDim components and is cell-centered...
Structure for passing component ranges in code.
Definition: Interval.H:23
virtual void curl(const FArrayBox &a_vecFab, FArrayBox &a_curlFab, const Box &a_box) const
return radial component of curl of a_vecFab, which has SpaceDim components and is cell-centered...
virtual void vectorTransformRealToMappedCenterFab(FArrayBox &a_vectorFab) const
transform a FAB of SpaceDim-vectors from real-coordinate basis to mapped-coordinate basis at cell cen...
virtual void getNodeRealCoordinates(FArrayBox &a_nodeCoords, const Box &a_box) const
return Cartesian XYZ locations of cell centers
virtual void getDeorthonormalizingMatrix(FArrayBox &a_matrixFab, const Box &a_box, int a_idir) const
return coefficients to convert components of a vector from orthonormal basis to coordinate-system bas...
virtual void getCellMappedCoordinates(FArrayBox &a_cellCoords, const Box &a_box) const
void pointTransformEquiangularToLonLat(const RealVect &a_xi, RealVect &a_rllXi) const
double Real
Definition: REAL.H:33
virtual Real pointwiseJ(const RealVect &a_X) const
Jacobian evaluated at location X in real space.
virtual void getNodeMappedCoordinates(FArrayBox &a_nodeCoords, const Box &a_box) const
virtual void deorthonormalize(const FArrayBox &a_orthoFab, FArrayBox &a_csFab, const Box &a_box, int a_idir, const IntVect &a_orthoComps, const IntVect &a_csComps) const
convert components in a_orthoComps of vector a_orthoFab in orthonormal basis to components in a_csCom...
virtual void orthonormalize(const FArrayBox &a_csFab, FArrayBox &a_orthoFab, const Box &a_box, int a_idir, const IntVect &a_csComps, const IntVect &a_orthoComps) const
convert components in a_csComps of vector a_csFab in coordinate-system basis to components in a_ortho...
virtual void getN(FluxBox &a_N, const Box &a_box) const
computes face-centered N
A Rectangular Domain on an Integer Lattice.
Definition: Box.H:469
A Real vector in SpaceDim-dimensional space.
Definition: RealVect.H:41
virtual void contravariantMetric(FArrayBox &a_metric, int a_dir) const
return row a_idir of contravariant metric
virtual void getOrthonormalizingMatrix(FArrayBox &a_matrixFab, const Box &a_box, int a_idir) const
return coefficients to convert components of a vector from coordinate-system basis to orthonormal bas...
virtual Real dXdXi(const RealVect &a_Xi, int a_dirX, int a_dirXi) const
note that a_Xi is in mapped space.
Basic single-panel cubed sphere Coordinates.
Definition: CubedSphere2DPanelCS.H:35
virtual void vectorTransformMappedToRealCenterFab(FArrayBox &a_vectorFab) const
transform a FAB of SpaceDim-vectors from mapped-coordinate basis to real-coordinate basis at cell cen...
void fabTransformEquiangularToCartesian(const FArrayBox &a_xiFab, FArrayBox &a_xyzFab) const
An integer Vector in SpaceDim-dimensional space.
Definition: CHArray.H:42
Definition: FArrayBox.H:45
int m_realDim
Definition: CubedSphere2DPanelCS.H:265
virtual int dimension() const
returns dimensionality of the space (3, or 2 if flat)
Definition: CubedSphere2DPanelCS.H:92
RealVect mappedCoord(const RealVect &a_x) const
given coordinate in real space, return its location in the mapped space
void setFlatMap(bool a_flatMap)
void fabVectorTransformEquiangularToLatLon(const FArrayBox &a_xiFab, const FArrayBox &a_vecCSFab, FArrayBox &a_vecRLLFab) const
bool m_flatMap
Definition: CubedSphere2DPanelCS.H:268