Chombo + EB + MF  3.2
Public Member Functions | Protected Attributes | Static Protected Attributes | List of all members
CylinderSpokesBlockCS Class Reference

Basic single-panel cubed sphere Coordinates. More...

#include <CylinderSpokesBlockCS.H>

Inheritance diagram for CylinderSpokesBlockCS:
Inheritance graph
[legend]

Public Member Functions

 CylinderSpokesBlockCS (int a_blockNum, const RealVect &a_dx, const Box &a_blockBox)
 constructor More...
 
virtual ~CylinderSpokesBlockCS ()
 
RealVect realCoord (const RealVect &a_Xi) const
 given coordinate in mapped space, return its location in real space More...
 
RealVect mappedCoord (const RealVect &a_x) const
 given coordinate in real space, return its location in the mapped space More...
 
virtual Real dXdXi (const RealVect &a_Xi, int a_dirX, int a_dirXi) const
 note that a_Xi is in mapped space. More...
 
- Public Member Functions inherited from NewFourthOrderCoordSys
 NewFourthOrderCoordSys ()
 default constructor More...
 
virtual ~NewFourthOrderCoordSys ()
 
virtual void realCoord (FArrayBox &a_x, const FArrayBox &a_Xi, const Box &a_box) const
 given coordinates in mapped space, return locations in real space More...
 
virtual void mappedCoord (FArrayBox &a_Xi, const FArrayBox &a_x, const Box &a_box) const
 given coordinate in real space, return its location in the mapped space More...
 
virtual void getNodeRealCoordinates (FArrayBox &a_nodeCoords, const Box &a_box) const
 return Cartesian XYZ locations of nodes More...
 
virtual void dXdXi (FArrayBox &a_dxdXi, const FArrayBox &a_Xi, int a_destComp, int a_dirX, int a_dirXi, const Box &a_box) const
 note that a_X is in mapped space. More...
 
virtual int getNumN () const
 returns number of components in the metric term matrix (N) More...
 
virtual int getNcomponent (const int a_row, const int a_col) const
 index function into face-centered metric terms More...
 
virtual void volFlux (FluxBox &a_volFlux, const FluxBox &a_Nt, const Box &a_box) const
 computes the volume flux on the faces More...
 
virtual void cellVol (FArrayBox &a_vol, const FluxBox &a_N, const Box &a_box) const
 computes cell volumes More...
 
virtual void getN (FluxBox &a_N, const Box &a_box) const
 computes integral of N over each face of a_box More...
 
virtual void getAvgJ (FArrayBox &a_avgJ, const FluxBox &a_volFlux, const Box &a_box) const
 computes cell-averaged J More...
 
virtual void getAvgJ (FArrayBox &a_avgJ, const Box &a_box) const
 computes cell-averaged J More...
 
virtual void getAvgJinverse (FluxBox &a_avgJinverse, const Box &a_box) const
 computes cell-averaged 1/J More...
 
virtual void getAvgJinverse (FluxBox &a_avgJinverse, const FArrayBox &a_avgJ, const Box &a_box) const
 computes cell-averaged 1/J, using pre-computed cell-avg J More...
 
virtual Real pointwiseJ (const RealVect &a_Xi) const
 Jacobian evaluated at location Xi in mapped space. More...
 
virtual void pointwiseJ (FArrayBox &a_J, const FArrayBox &a_Xi, const Box &a_box) const
 Jacobian evaluated at locations Xi in mapped space. More...
 
virtual void computeMetricTermProductAverage (FluxBox &a_product, const FluxBox &a_F, const FluxBox &a_N, const int a_NNumComp, const FluxBox &a_FforGrad, const Box &a_box, bool a_fourthOrder=true, Interval a_varIntervalProduct=Interval(), Interval a_varIntervalF=Interval(), int a_fluxSpaceContiguous=1, const ProblemDomain *const a_problemDomainPtr=NULL) const
 Computes 4th-order average of product = N^T*F. F can be a flux dyad. More...
 
virtual void computeMetricTermProductAverage (FluxBox &a_product, const FluxBox &a_F, const FluxBox &a_N, const FluxBox &a_FforGrad, const Box &a_box, bool a_fourthOrder=true) const
 computes 4th-order average of product = N^T*F. F is vector of a scalar More...
 
virtual void computeMetricTermProductAverage (FluxBox &a_product, const FluxBox &a_F, const FluxBox &a_N, const Box &a_box, bool a_fourthOrder=true) const
 computes 4th-order average of product = N^T*F. F is vector of a scalar More...
 
void magnitudeN (FluxBox &a_NMag, const FluxBox &a_N, const Box &a_box) const
 Computes magnitude of <N^T> on each face. More...
 
virtual void computeNJinverse (FluxBox &a_NJinverse, const FluxBox &a_Jinverse, const FluxBox &a_N, const Box &a_cellBox) const
 given N and Jinverse, computes N/J More...
 
virtual const RealVectdx () const
 access function to simplify things – returns mapped-space cell spacing More...
 
virtual Real getN (const RealVect &a_Xi, int a_s, int a_d, int a_d1) const
 this evaluates the script N values from equation 12 in Phil's notes More...
 
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. More...
 
virtual void integrateScriptN (FArrayBox &a_scrN, const int a_dir0, const int a_dir1, const Box &a_box) const
 
virtual void incrementFaceMetricWithEdgeTerm (FArrayBox &a_faceMetrics, int a_faceDir, int a_edgeDir, const Box &a_box, const Side::LoHiSide &a_side) const
 
virtual void computeTransverseFaceMetric (FArrayBox &a_faceMetrics, const Box &a_box, int a_faceDir, int a_dDir) const
 
virtual void computeTangentialGrad (FluxBox &a_gradPhi, const FluxBox &a_phiFace, const Box &a_box) const
 
virtual int tanGradComp (const int a_faceDir, const int a_tanDir, const int a_comp) const
 
virtual void contravariantMetric (FArrayBox &a_metric, int a_dir) const
 return row a_idir of contravariant metric More...
 
virtual void orthonormalize (FluxBox &a_flux, const Interval &a_vectorIntv) const
 convert vector components (in a_vectorIntv) of a_flux to orthonormal frame to that of this block More...
 
virtual void orthonormalize (FArrayBox &a_fluxFab, const Interval &a_vectorIntv) const
 overwrite vector components (in a_vectorIntv) of a_fluxFab with orthonormalized More...
 
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_orthoComps of vector a_orthoFab in orthonormal basis, at points with indices in a_box, on lines where direction a_idir is constant More...
 
virtual void deorthonormalize (FluxBox &a_flux, const Interval &a_vectorIntv) const
 convert vector components (in a_vectorIntv) of a_flux from orthonormal frame to that of this block More...
 
virtual void deorthonormalize (FArrayBox &a_fluxFab, const Interval &a_vectorIntv) const
 overwrite vector components (in a_vectorIntv) of a_fluxFab with deorthonormalized More...
 
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_csComps of vector a_csFab in coordinate-system basis, at points with indices in a_box, on lines where direction a_idir is constant More...
 
- Public Member Functions inherited from NewCoordSys
 NewCoordSys ()
 default constructor More...
 
virtual ~NewCoordSys ()
 
virtual void getCenterMappedCoordinates (FArrayBox &a_Xi, const Box &a_box) const
 given indices in a_box, return centers of cells (or of faces, or of edges) in mapped coordinates. The function does the right thing based on the centering of a_box, which must be the same centering as a_Xi. More...
 
virtual RealVect centerMappedCoordinates (const IntVect &a_iv) const
 given indices, return centers of cells in mapped coordinates More...
 
virtual int dimension () const
 returns dimensionality of the space More...
 
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 More...
 
virtual VectorTransformation vectorTransformationMappedToReal (const RealVect &a_Xi) const
 return matrix that transforms vector components from mapped space to real space at point a_Xi in mapped space More...
 
virtual VectorTransformation vectorTransformationRealToMapped (const RealVect &a_Xi) const
 return matrix that transforms vector components from real space to mapped space at point a_Xi in mapped space More...
 
virtual VectorTransformation vectorTransformationMappedToRealCenter (const IntVect &a_iv) const
 return matrix that transforms vector components from mapped space to real space at center of cell a_iv More...
 
virtual VectorTransformation vectorTransformationRealToMappedCenter (const IntVect &a_iv) const
 return matrix that transforms vector components from real space to mapped space at center of cell a_iv More...
 
virtual void vectorTransformMappedToRealCenterFab (FArrayBox &a_vectorFab) const
 transform a FAB of SpaceDim-vectors from mapped-coordinate basis to real-coordinate basis at cell centers More...
 
virtual void vectorTransformMappedToRealAvgFab (FArrayBox &a_vectorFab, const FArrayBox &a_gradVectorFab) const
 transform a FAB of SpaceDim-vectors from mapped-coordinate basis to real-coordinate basis, averaged over cells More...
 
virtual void vectorTransformRealToMappedCenterFab (FArrayBox &a_vectorFab) const
 transform a FAB of SpaceDim-vectors from real-coordinate basis to mapped-coordinate basis at cell centers More...
 
virtual void vectorTransformRealToMappedAvgFab (FArrayBox &a_vectorFab, const FArrayBox &a_gradVectorFab) const
 transform a FAB of SpaceDim-vectors from real-coordinate basis to mapped-coordinate basis, averaged over cells More...
 
virtual void setTime (const Real &a_time) const
 Set time for moving grids. More...
 

Protected Attributes

int m_blockNum
 
Box m_blockBox
 
RealVect m_mappedLo
 
int m_rCoord
 
int m_aCoord
 
RealVect m_signCoord
 
- Protected Attributes inherited from NewFourthOrderCoordSys
RealVect m_dx
 
Interval m_volInterval
 
EdgeQuadraturem_quadraturePtr
 
- Protected Attributes inherited from NewCoordSys
Real m_time
 Const is already well entrenched. More...
 

Static Protected Attributes

static const int CENTRAL = 0
 
static const int XPOS = 1
 
static const int YPOS = 2
 
static const int XNEG = 3
 
static const int YNEG = 4
 

Additional Inherited Members

- Static Public Member Functions inherited from NewFourthOrderCoordSys
static const IntVectmetricsCompDir (const int a_iDir)
 Same as getNcomponent but returns an IntVect for an 'a_col' (direction) More...
 
- Protected Member Functions inherited from NewCoordSys
virtual void vectorTransformInternalAvgFab (FArrayBox &a_vectorFab, const FArrayBox &a_gradVectorFab, const BaseFab< VectorTransformation > &a_tfmCenterFab) const
 internal function to transform a FAB of SpaceDim-vectors from one basis to another, averaged over cells, given BaseFab of vector transformations at cell centers More...
 

Detailed Description

Basic single-panel cubed sphere Coordinates.

The CylinderSpokesBlockCS class implements the NewFourthOrderCoordSys class for cylindrical panels in equiangular coordinates.

Constructor & Destructor Documentation

◆ CylinderSpokesBlockCS()

CylinderSpokesBlockCS::CylinderSpokesBlockCS ( int  a_blockNum,
const RealVect a_dx,
const Box a_blockBox 
)

constructor

a_blockNum: block number a_dx: cell spacing a_baseCell: index of bottom-left corner of this block in mapped space.

◆ ~CylinderSpokesBlockCS()

virtual CylinderSpokesBlockCS::~CylinderSpokesBlockCS ( )
virtual

Destructor.

Member Function Documentation

◆ realCoord()

RealVect CylinderSpokesBlockCS::realCoord ( const RealVect a_Xi) const
virtual

given coordinate in mapped space, return its location in real space

Implements NewFourthOrderCoordSys.

◆ mappedCoord()

RealVect CylinderSpokesBlockCS::mappedCoord ( const RealVect a_x) const
virtual

given coordinate in real space, return its location in the mapped space

Implements NewFourthOrderCoordSys.

◆ dXdXi()

virtual Real CylinderSpokesBlockCS::dXdXi ( const RealVect a_Xi,
int  a_dirX,
int  a_dirXi 
) const
virtual

note that a_Xi is in mapped space.

Implements NewFourthOrderCoordSys.

Member Data Documentation

◆ CENTRAL

const int CylinderSpokesBlockCS::CENTRAL = 0
staticprotected

◆ XPOS

const int CylinderSpokesBlockCS::XPOS = 1
staticprotected

◆ YPOS

const int CylinderSpokesBlockCS::YPOS = 2
staticprotected

◆ XNEG

const int CylinderSpokesBlockCS::XNEG = 3
staticprotected

◆ YNEG

const int CylinderSpokesBlockCS::YNEG = 4
staticprotected

◆ m_blockNum

int CylinderSpokesBlockCS::m_blockNum
protected

◆ m_blockBox

Box CylinderSpokesBlockCS::m_blockBox
protected

◆ m_mappedLo

RealVect CylinderSpokesBlockCS::m_mappedLo
protected

◆ m_rCoord

int CylinderSpokesBlockCS::m_rCoord
protected

◆ m_aCoord

int CylinderSpokesBlockCS::m_aCoord
protected

◆ m_signCoord

RealVect CylinderSpokesBlockCS::m_signCoord
protected

The documentation for this class was generated from the following file: