11 #ifndef _EBLEVELDATAOPS_H_    12 #define _EBLEVELDATAOPS_H_    23 #include "NamespaceHeader.H"    25 #define EBLEVELDATAOPS_INTERIORREGVOFS   0x1    26 #define EBLEVELDATAOPS_BOUNDARYREGVOFS   0x2    27 #define EBLEVELDATAOPS_INTERIORIRREGVOFS 0x4    28 #define EBLEVELDATAOPS_BOUNDARYIRREGVOFS 0x8    30 #define EBLEVELDATAOPS_ALLVOFS         (EBLEVELDATAOPS_INTERIORREGVOFS   | \    31                                         EBLEVELDATAOPS_BOUNDARYREGVOFS   | \    32                                         EBLEVELDATAOPS_INTERIORIRREGVOFS | \    33                                         EBLEVELDATAOPS_BOUNDARYIRREGVOFS )    35 #define EBLEVELDATAOPS_REGULARVOFS     (EBLEVELDATAOPS_INTERIORREGVOFS | \    36                                         EBLEVELDATAOPS_BOUNDARYREGVOFS )    38 #define EBLEVELDATAOPS_IRREGULARVOFS   (EBLEVELDATAOPS_INTERIORIRREGVOFS | \    39                                         EBLEVELDATAOPS_BOUNDARYIRREGVOFS )    41 #define EBLEVELDATAOPS_BOUNDARYVOFS    (EBLEVELDATAOPS_BOUNDARYREGVOFS | \    42                                         EBLEVELDATAOPS_IRREGULARVOFS   )    74                                 int isrc, 
int idst, 
int inco,
    75                                 bool a_interpolateToCentroid);
    85                    int srccomp, 
int dstcomp, 
int numcomp);
    94                                               const Box           &      ccFluxBox,
    97                                               int isrc, 
int idst, 
int inco);
   109                                 int isrc, 
int idst, 
int inco,
   110                                 bool a_interpolateToCentroid);
   117                                 const int&                a_ghosts = 0);
   127   static long long parallelSum(
const long long&  a_value);
   215                           const Real&              a_value);
   223                           const Real&                a_shift = 0.0);
   232                         const bool&                 a_doAbs=
false);
   240                         const bool&                 a_doAbs=
false);
   245                             const Real&             a_value);
   253                             const Real&             a_value);
   260                             const Real&             a_value);
   268                             const Real&             a_value);
   322                     const Real&           a_scale) ;
   332                     const Real&           a_scale) ;
   347                      const Real&           a_value);
   353                      const Real&           a_value);
   366                      const Real&           a_value);
   403                     const Real& a_scale);
   410                     const Real& a_scale);
   449                           const Real&           a_constant);
   456                     const Real&           a_exponent,
   546                           const Real&           a_scale);
   702                     const int&             a_ghostFlux,
   705                     const int&             a_cellComp,
   706                     const int&             a_faceComp);
   728                    bool  a_mutiplyByKappa);
   732 #include "NamespaceFooter.H" static bool checkNANINF(const LevelData< EBCellFAB > &a_data, const IntVect &a_iv1=IntVect::Zero, const IntVect &a_iv2=IntVect::Zero, const Real &a_shift=0.0)
 
static void copyToMultiVofsFromRegFAB(LevelData< EBCellFAB > &a_data, const DisjointBoxLayout &a_dbl, const EBISLayout &a_ebisl)
 
static void checkData(const LevelData< EBCellFAB > &a_data, const string &label)
 
static void plus(LevelData< EBCellFAB > &a_dst, const LevelData< EBCellFAB > &a_src, int srccomp, int dstcomp, int numcomp)
 
static void averageCellToFaces(LevelData< EBFluxFAB > &a_fluxData, const LevelData< EBCellFAB > &a_cellData, const DisjointBoxLayout &a_grids, const EBISLayout &a_ebisl, const ProblemDomain &a_domain, const int &a_comp)
 
static void averageMultiVofsToRegFAB(LevelData< EBCellFAB > &a_data, const DisjointBoxLayout &a_dbl, const EBISLayout &a_ebisl)
 
static Vector< Real > vectorSumKappaPow(Real &a_volume, const EBCellFAB &a_data, const Box &curBox, int a_which, const ProblemDomain &a_domain, int a_p)
 
An irregular domain on an integer lattice. 
Definition: IntVectSet.H:44
 
static Real sumNoKappa(Real &a_volume, const EBCellFAB &a_data, const Box &a_region, int a_which, const ProblemDomain &a_domain)
 
A class to facilitate interaction with physical boundary conditions. 
Definition: ProblemDomain.H:141
 
Definition: EBIndexSpace.H:50
 
static void averageCellToFace(EBFaceFAB &a_fluxData, const EBCellFAB &a_cellData, const Box &a_grid, const EBISBox &a_ebisl, const ProblemDomain &a_domain, int isrc, int idst, int inco, bool a_interpolateToCentroid)
 
static void kappaWeight(LevelData< EBCellFAB > &a_data)
 
static Real kappaDotProduct(Real &a_volume, const LevelData< EBCellFAB > &a_data1, const LevelData< EBCellFAB > &a_data2, int a_which, const ProblemDomain &a_domain)
 
static void incr(LevelData< EBCellFAB > &a_lhs, const LevelData< EBCellFAB > &a_rhs, const Real &a_scale)
 
static void defineLevelData(LevelData< EBCellFAB > &a_levelData, const EBISLayout &a_ebisl, const DisjointBoxLayout &a_dbl, const IntVect &a_ghosts, const int &a_nComp)
 
static void kappaScale(LevelData< EBCellFAB > &a_data, const Real &a_scale)
 
static void divideVectorByScalar(LevelData< EBCellFAB > &a_vectorOut, const LevelData< EBCellFAB > &a_vectorIn, const LevelData< EBCellFAB > &a_scalar)
 
static void power(LevelData< EBCellFAB > &a_result, const Real &a_exponent, const int &a_comp)
 
static Real sumKappaDotProduct(Real &a_volume, const EBCellFAB &a_data1, const EBCellFAB &a_data2, const Box &a_region, int a_which, const ProblemDomain &a_domain)
 
static void faceCenteredAverageCellsToFaces(EBFaceFAB &a_faceData, const EBCellFAB &a_cellData, const Box &ccFluxBox, const EBISBox &a_ebisBox, const ProblemDomain &a_domain, int isrc, int idst, int inco)
 
static int parallelSum(const int &a_value)
 
static void pruneCoveredBoxes(Vector< Box > &a_boxes, const ProblemDomain &a_domain, const EBIndexSpace *a_ebisPtr, const int &a_ghosts=0)
 
Definition: EBFaceFAB.H:28
 
Geometric description within a box. 
Definition: EBGraph.H:427
 
static void scale(LevelData< EBFluxFAB > &a_lhs, const Real &a_scale)
 
static void addConstant(LevelData< EBCellFAB > &a_data, const Real &a_constant)
 
static Real sumNoKappaDotProduct(Real &a_volume, const EBCellFAB &a_data1, const EBCellFAB &a_data2, const Box &a_region, int a_which, const ProblemDomain &a_domain)
 
static void averageCellToFacesMAC(LevelData< EBFluxFAB > &a_fluxData, const LevelData< EBCellFAB > &a_cellData, const DisjointBoxLayout &a_grids, const EBISLayout &a_ebisl, const ProblemDomain &a_domain)
 
static Real sumKappa(Real &a_volume, const EBCellFAB &a_data, const Box &a_region, int a_which, const ProblemDomain &a_domain)
 
static Real noKappaDotProduct(Real &a_volume, const LevelData< EBCellFAB > &a_data1, const LevelData< EBCellFAB > &a_data2, int a_which, const ProblemDomain &a_domain)
 
static void areaFracScalingWeight(LevelData< EBCellFAB > &a_data)
 
static Real sumKappaDotProductAllCells(Real &a_volume, const EBCellFAB &a_data1, const EBCellFAB &a_data2, const Box &a_region, int a_which, const ProblemDomain &a_domain)
 
static void exchangeComp(LevelData< EBCellFAB > &a_data, const int &a_comp)
 
static void sum(LevelData< EBCellFAB > &a_result, const LevelData< EBCellFAB > &a_in1, const LevelData< EBCellFAB > &a_in2)
 
Structure for passing component ranges in code. 
Definition: Interval.H:23
 
static Real noKappaNorm(Real &a_volume, const LevelData< EBCellFAB > &a_data, int a_which, const ProblemDomain &a_domain, int a_p=2)
 
Definition: EBCellFAB.H:29
 
static void setToZero(LevelData< EBCellFAB > &a_result)
 
static Real sumNoKappaPow(Real &a_volume, const EBCellFAB &a_data, const Box &a_region, int a_which, const ProblemDomain &a_domain, int a_p)
 
double Real
Definition: REAL.H:33
 
static void clone(LevelData< EBCellFAB > &a_lhs, const LevelData< EBCellFAB > &a_rhs)
 
A BoxLayout that has a concept of disjointedness. 
Definition: DisjointBoxLayout.H:30
 
static void getMaxMin(Real &a_maxVal, Real &a_minVal, const LevelData< EBCellFAB > &a_data, const int &a_comp, const bool &a_doAbs=false)
 
static void setCoveredVal(LevelData< EBCellFAB > &a_lData, const Real &a_value)
 
static void gatherBroadCast(Real &a_accum, Real &a_volume, const int &a_p)
 
static const IntVect Zero
Definition: IntVect.H:654
 
static void exchangeAll(LevelData< EBCellFAB > &a_phi)
 
static void exchangeCorners(LevelData< EBCellFAB > &a_data, const ProblemDomain &a_domain)
 
static Real kappaSumLevel(Real &a_volume, const LevelData< EBCellFAB > &a_data, int a_which, const ProblemDomain &a_domain)
 
A Rectangular Domain on an Integer Lattice. 
Definition: Box.H:465
 
EBLevelDataOps()
Definition: EBLevelDataOps.H:52
 
~EBLevelDataOps()
Definition: EBLevelDataOps.H:56
 
static void product(LevelData< EBCellFAB > &a_result, const LevelData< EBCellFAB > &a_in1, const LevelData< EBCellFAB > &a_in2)
 
An integer Vector in SpaceDim-dimensional space. 
Definition: CHArray.H:42
 
static Real kappaNorm(Real &a_volume, const LevelData< EBCellFAB > &a_data, int a_which, const ProblemDomain &a_domain, int a_p=2)
 
static int parallelMin(const int &a_value)
 
static void axby(LevelData< EBCellFAB > &a_lhs, const LevelData< EBCellFAB > &a_x, const LevelData< EBCellFAB > &a_y, const Real &a, const Real &b)
 
Definition: EBISLayout.H:39
 
static Vector< Real > vectorKappaNorm(Real &a_volume, const LevelData< EBCellFAB > &a_data, int a_which, const ProblemDomain &a_domain, int a_p=2)
 
Definition: EBLevelDataOps.H:49
 
static void assign(LevelData< EBCellFAB > &a_to, const LevelData< EBCellFAB > &a_from, const Interval &a_toInterva, const Interval &a_fromInterval)
 
static void setVal(LevelData< EBCellFAB > &a_result, const Real &a_value)
 
static Real noKappaSumLevel(Real &a_volume, const LevelData< EBCellFAB > &a_data, int a_which, const ProblemDomain &a_domain)
 
static Real sumKappaPow(Real &a_volume, const EBCellFAB &a_data, const Box &a_region, int a_which, const ProblemDomain &a_domain, int a_p)
 
static bool checkForBogusNumbers(const LevelData< EBFluxFAB > &a_data)
 
static void setIrregVal(LevelData< EBCellFAB > &a_data, const DisjointBoxLayout &a_dbl, const EBISLayout &a_ebisl, const Real &a_value)
 
static int parallelMax(const int &a_value)
 
static void divide(LevelData< EBCellFAB > &a_result, const LevelData< EBCellFAB > &a_in1, const LevelData< EBCellFAB > &a_in2)
 
static void invert(LevelData< EBCellFAB > &a_result, const LevelData< EBCellFAB > &a_in1)