00001 #ifdef CH_LANG_CC
00002
00003
00004
00005
00006
00007
00008
00009 #endif
00010
00011 #ifndef _COMPUTENORM_H_
00012 #define _COMPUTENORM_H_
00013
00014 #include "REAL.H"
00015 #include "Vector.H"
00016 #include "LevelData.H"
00017 #include "FArrayBox.H"
00018 #include "Interval.H"
00019 #include "FluxBox.H"
00020 #include "RealVect.H"
00021 #include "NamespaceHeader.H"
00022
00023
00024 Real computeNorm(const Vector<LevelData<FArrayBox>* >& a_phi,
00025 const Vector<int>& a_nRefFine,
00026 const Real a_dxCrse,
00027 const Interval a_comps = Interval(0,0),
00028 const int a_p = 2,
00029 const int a_lBase = 0);
00030
00031
00032 Real computeNorm(const LevelData<FArrayBox>& a_phi,
00033 const DisjointBoxLayout* a_finerGrids,
00034 const int a_nRefFine,
00035 const Real a_dx,
00036 const Interval a_comps = Interval(0,0),
00037 const int a_p = 2);
00038
00039
00040 Real computeNorm(const Vector<LevelData<FArrayBox>* >& a_phi,
00041 const Vector<IntVect>& a_nRefFine,
00042 const RealVect& a_dxCrse,
00043 const Interval a_comps = Interval(0,0),
00044 const int a_p = 2,
00045 const int a_lBase = 0);
00046
00047
00048 Real computeNorm(const LevelData<FArrayBox>& a_phi,
00049 const DisjointBoxLayout* a_finerGrids,
00050 const IntVect& a_nRefFine,
00051 const RealVect& a_dx,
00052 const Interval a_comps = Interval(0,0),
00053 const int a_p = 2);
00054
00055
00056 Real computeMax(const Vector<LevelData<FArrayBox>* >& a_phi,
00057 const Vector<int>& a_nRefFine,
00058 const Interval a_comps = Interval(0,0),
00059 const int a_lBase = 0);
00060
00061
00062 Real computeMax(const LevelData<FArrayBox>& a_phi,
00063 const DisjointBoxLayout* a_finerGrids,
00064 const int a_nRefFine,
00065 const Interval a_comps = Interval(0,0));
00066
00067
00068 Real computeMin(const Vector<LevelData<FArrayBox>* >& a_phi,
00069 const Vector<int>& a_nRefFine,
00070 const Interval a_comps = Interval(0,0),
00071 const int a_lBase = 0);
00072
00073
00074 Real computeMin(const LevelData<FArrayBox>& a_phi,
00075 const DisjointBoxLayout* a_finerGrids,
00076 const int a_nRefFine,
00077 const Interval a_comps = Interval(0,0));
00078
00079
00080 Real norm(const BoxLayoutData<FluxBox>& a_layout,
00081 const Interval& a_interval,
00082 const int& a_p);
00083 #include "NamespaceFooter.H"
00084 #endif