11 #ifndef _NEWFOURTHORDERCOORDSYS_H_ 12 #define _NEWFOURTHORDERCOORDSYS_H_ 21 #include "NamespaceHeader.H" 96 const Box& a_box)
const;
100 const Box& a_box)
const;
106 const Box& a_box)
const;
111 int a_dirXi)
const = 0;
125 const Box& a_box)
const;
176 return metricsComp[a_iDir];
182 const Box& a_box)
const;
191 const Box& a_box)
const;
199 const Box& a_box)
const;
206 const Box& a_box)
const;
211 const Box& a_box)
const;
219 const Box& a_box)
const;
226 const int a_NNumComp,
229 bool a_fourthOrder =
true,
232 int a_fluxSpaceContiguous = 1,
246 bool a_fourthOrder=
true)
const;
258 bool a_fourthOrder=
true)
const;
265 const Box& a_box)
const;
275 const Box& a_cellBox)
const;
291 int a_s,
int a_d,
int a_d1,
292 int a_row,
int a_column)
const;
299 const Box& a_box)
const;
315 const Box& a_box)
const;
318 virtual int tanGradComp(
const int a_faceDir,
const int a_tanDir,
319 const int a_comp)
const;
327 const Interval& a_vectorIntv)
const;
331 const Interval& a_vectorIntv)
const;
340 const IntVect& a_orthoComps)
const;
344 const Interval& a_vectorIntv)
const;
348 const Interval& a_vectorIntv)
const;
357 const IntVect& a_csComps)
const;
371 #include "NamespaceFooter.H" #define D_DECL6(a, b, c, d, e, f)
Definition: CHArray.H:39
virtual Real dXdXi(const RealVect &a_Xi, int a_dirX, int a_dirXi) const =0
note that a_Xi is in mapped space.
virtual void volFlux(FluxBox &a_volFlux, const FluxBox &a_Nt, const Box &a_box) const
computes the volume flux on the faces
virtual const RealVect & dx() const
access function to simplify things – returns mapped-space cell spacing
Definition: NewFourthOrderCoordSys.H:279
NewFourthOrderCoordSys()
default constructor
static const IntVect & metricsCompDir(const int a_iDir)
Same as getNcomponent but returns an IntVect for an 'a_col' (direction)
Definition: NewFourthOrderCoordSys.H:153
A class to facilitate interaction with physical boundary conditions.
Definition: ProblemDomain.H:141
virtual void getAvgJinverse(FluxBox &a_avgJinverse, const Box &a_box) const
computes cell-averaged 1/J
virtual Real pointwiseJ(const RealVect &a_Xi) const
Jacobian evaluated at location Xi in mapped space.
virtual void getAvgJ(FArrayBox &a_avgJ, const FluxBox &a_volFlux, const Box &a_box) const
computes cell-averaged J
Virtual base class encapsulating mapped-grid coordinate systems.
Definition: NewFourthOrderCoordSys.H:77
virtual ~NewFourthOrderCoordSys()
const int SpaceDim
Definition: SPACE.H:38
virtual void incrementFaceMetricWithEdgeTerm(FArrayBox &a_faceMetrics, int a_faceDir, int a_edgeDir, const Box &a_box, const Side::LoHiSide &a_side) 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.
A FArrayBox-like container for face-centered fluxes.
Definition: FluxBox.H:22
EdgeQuadrature * m_quadraturePtr
Definition: NewFourthOrderCoordSys.H:365
virtual void contravariantMetric(FArrayBox &a_metric, int a_dir) const
return row a_idir of contravariant metric
Structure for passing component ranges in code.
Definition: Interval.H:23
virtual void getNodeRealCoordinates(FArrayBox &a_nodeCoords, const Box &a_box) const
return Cartesian XYZ locations of nodes
virtual RealVect realCoord(const RealVect &a_Xi) const =0
given coordinate in mapped space, return its location in real space
virtual void integrateScriptN(FArrayBox &a_scrN, const int a_dir0, const int a_dir1, const Box &a_box) const
virtual int getNcomponent(const int a_row, const int a_col) const
index function into face-centered metric terms
Definition: NewFourthOrderCoordSys.H:149
NewFourthOrderCoordSys BlockCoordSys
Definition: NewFourthOrderCoordSys.H:368
Interval m_volInterval
Definition: NewFourthOrderCoordSys.H:363
double Real
Definition: REAL.H:33
virtual int tanGradComp(const int a_faceDir, const int a_tanDir, const int a_comp) const
LoHiSide
Definition: LoHiSide.H:27
virtual void cellVol(FArrayBox &a_vol, const FluxBox &a_N, const Box &a_box) const
computes cell volumes
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 ...
A Rectangular Domain on an Integer Lattice.
Definition: Box.H:469
A Real vector in SpaceDim-dimensional space.
Definition: RealVect.H:41
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.
void magnitudeN(FluxBox &a_NMag, const FluxBox &a_N, const Box &a_box) const
Computes magnitude of <N^T> on each face.
virtual RealVect mappedCoord(const RealVect &a_x) const =0
given coordinate in real space, return its location in the mapped space
RealVect m_dx
Definition: NewFourthOrderCoordSys.H:360
An integer Vector in SpaceDim-dimensional space.
Definition: CHArray.H:42
Definition: FArrayBox.H:45
virtual int getNumN() const
returns number of components in the metric term matrix (N)
Definition: NewFourthOrderCoordSys.H:129
virtual void getN(FluxBox &a_N, const Box &a_box) const
computes integral of N over each face of a_box
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 base class for defining edge-based quadratures.
Definition: EdgeQuadrature.H:37
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 ...
Virtual base class encapsulating mapped-grid coordinate systems.
Definition: NewCoordSys.H:30
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