00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifndef NORMS_H
00032 #define NORMS_H
00033
00034 #include "LevelData.H"
00035 #include "NodeFArrayBox.H"
00036 #include "Vector.H"
00037 #include "IntVectSet.H"
00038
00040
00052 Real norm(const BoxLayoutData<NodeFArrayBox>& a_layout,
00053 const Real a_dx,
00054 const int a_p,
00055 const Interval& a_interval,
00056 bool a_verbose = true);
00057
00059
00069 Real maxnorm(const BoxLayoutData<NodeFArrayBox>& a_layout,
00070 const Interval& a_interval,
00071 bool a_verbose = true);
00072
00074
00091 Real norm(const Vector<LevelData<NodeFArrayBox>* >& a_phi,
00092 const Vector<ProblemDomain>& a_domain,
00093 const Vector<int>& a_nRefFine,
00094 const Real a_dxCrse,
00095 const Interval a_comps,
00096 const int a_p,
00097 const int a_lBase,
00098 bool a_verbose = true);
00099
00100 Real norm(const Vector<LevelData<NodeFArrayBox>* >& a_phi,
00101 const Vector<Box>& a_domain,
00102 const Vector<int>& a_nRefFine,
00103 const Real a_dxCrse,
00104 const Interval a_comps,
00105 const int a_p,
00106 const int a_lBase,
00107 bool a_verbose = true);
00108
00110
00132 Real norm(const LevelData<NodeFArrayBox>& a_phi,
00133 const ProblemDomain& a_domain,
00134 const DisjointBoxLayout* a_finerGridsPtr,
00135 const int a_nRefFine,
00136 const Real a_dx,
00137 const Interval a_comps,
00138 const int a_p,
00139 bool a_verbose = true);
00140
00141 Real norm(const LevelData<NodeFArrayBox>& a_phi,
00142 const Box& a_domain,
00143 const DisjointBoxLayout* a_finerGridsPtr,
00144 const int a_nRefFine,
00145 const Real a_dx,
00146 const Interval a_comps,
00147 const int a_p,
00148 bool a_verbose = true);
00149
00151
00177 Real norm(const LevelData<NodeFArrayBox>& a_phi,
00178 const ProblemDomain& a_domain,
00179 const DisjointBoxLayout& a_finerGridsCoarsened,
00180 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00181 const LayoutData< Vector<IntVectSet> >& a_IVSVintFinerCoarsened,
00182 const int a_nRefFine,
00183 const Real a_dx,
00184 const Interval a_comps,
00185 const int a_p,
00186 bool a_verbose = true);
00187
00188 Real norm(const LevelData<NodeFArrayBox>& a_phi,
00189 const Box& a_domain,
00190 const DisjointBoxLayout& a_finerGridsCoarsened,
00191 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00192 const LayoutData< Vector<IntVectSet> >& a_IVSVintFinerCoarsened,
00193 const int a_nRefFine,
00194 const Real a_dx,
00195 const Interval a_comps,
00196 const int a_p,
00197 bool a_verbose = true);
00198
00199
00201
00221 Real norm(const LevelData<NodeFArrayBox>& a_phi,
00222 const ProblemDomain& a_domain,
00223 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00224 const Real a_dx,
00225 const Interval a_comps,
00226 const int a_p,
00227 bool a_verbose = true);
00228
00229 Real norm(const LevelData<NodeFArrayBox>& a_phi,
00230 const Box& a_domain,
00231 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00232 const Real a_dx,
00233 const Interval a_comps,
00234 const int a_p,
00235 bool a_verbose = true);
00236
00238
00252 Real maxnorm(const Vector<LevelData<NodeFArrayBox>* >& a_phi,
00253 const Vector<ProblemDomain>& a_domain,
00254 const Vector<int>& a_nRefFine,
00255 const Interval a_comps,
00256 const int a_lBase,
00257 bool a_verbose = true);
00258
00259 Real maxnorm(const Vector<LevelData<NodeFArrayBox>* >& a_phi,
00260 const Vector<Box>& a_domain,
00261 const Vector<int>& a_nRefFine,
00262 const Interval a_comps,
00263 const int a_lBase,
00264 bool a_verbose = true);
00265
00267
00287 Real maxnorm(const LevelData<NodeFArrayBox>& a_phi,
00288 const ProblemDomain& a_domain,
00289 const DisjointBoxLayout* a_finerGridsPtr,
00290 const int a_nRefFine,
00291 const Interval a_comps,
00292 bool a_verbose = true);
00293
00294 Real maxnorm(const LevelData<NodeFArrayBox>& a_phi,
00295 const Box& a_domain,
00296 const DisjointBoxLayout* a_finerGridsPtr,
00297 const int a_nRefFine,
00298 const Interval a_comps,
00299 bool a_verbose = true);
00300
00301
00303
00329 Real maxnorm(const LevelData<NodeFArrayBox>& a_phi,
00330 const ProblemDomain& a_domain,
00331 const DisjointBoxLayout& a_finerGridsCoarsened,
00332 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00333 const LayoutData< Vector<IntVectSet> >& a_IVSVintFinerCoarsened,
00334 const int a_nRefFine,
00335 const Interval a_comps,
00336 bool a_verbose = true);
00337
00338 Real maxnorm(const LevelData<NodeFArrayBox>& a_phi,
00339 const Box& a_domain,
00340 const DisjointBoxLayout& a_finerGridsCoarsened,
00341 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00342 const LayoutData< Vector<IntVectSet> >& a_IVSVintFinerCoarsened,
00343 const int a_nRefFine,
00344 const Interval a_comps,
00345 bool a_verbose = true);
00346
00348
00368 Real maxnorm(const LevelData<NodeFArrayBox>& a_phi,
00369 const ProblemDomain& a_domain,
00370 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00371 const Interval a_comps,
00372 bool a_verbose = true);
00373
00374 Real maxnorm(const LevelData<NodeFArrayBox>& a_phi,
00375 const Box& a_domain,
00376 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00377 const Interval a_comps,
00378 bool a_verbose = true);
00379
00380
00381
00383
00394 Real integral(const BoxLayoutData<NodeFArrayBox>& a_layout,
00395 const Real a_dx,
00396 const Interval& a_interval,
00397 bool a_verbose = true);
00398
00400
00416 Real integral(const Vector<LevelData<NodeFArrayBox>* >& a_phi,
00417 const Vector<ProblemDomain>& a_domain,
00418 const Vector<int>& a_nRefFine,
00419 const Real a_dxCrse,
00420 const Interval a_comps,
00421 const int a_lBase,
00422 bool a_verbose = true);
00423
00424 Real integral(const Vector<LevelData<NodeFArrayBox>* >& a_phi,
00425 const Vector<Box>& a_domain,
00426 const Vector<int>& a_nRefFine,
00427 const Real a_dxCrse,
00428 const Interval a_comps,
00429 const int a_lBase,
00430 bool a_verbose = true);
00431
00433
00454 Real integral(const LevelData<NodeFArrayBox>& a_phi,
00455 const ProblemDomain& a_domain,
00456 const DisjointBoxLayout* a_finerGridsPtr,
00457 const int a_nRefFine,
00458 const Real a_dx,
00459 const Interval a_comps,
00460 bool a_verbose = true);
00461
00462 Real integral(const LevelData<NodeFArrayBox>& a_phi,
00463 const Box& a_domain,
00464 const DisjointBoxLayout* a_finerGridsPtr,
00465 const int a_nRefFine,
00466 const Real a_dx,
00467 const Interval a_comps,
00468 bool a_verbose = true);
00469
00471
00496 Real integral(const LevelData<NodeFArrayBox>& a_phi,
00497 const ProblemDomain& a_domain,
00498 const DisjointBoxLayout& a_finerGridsCoarsened,
00499 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00500 const LayoutData< Vector<IntVectSet> >& a_IVSVintFinerCoarsened,
00501 const int a_nRefFine,
00502 const Real a_dx,
00503 const Interval a_comps,
00504 bool a_verbose = true);
00505
00506 Real integral(const LevelData<NodeFArrayBox>& a_phi,
00507 const Box& a_domain,
00508 const DisjointBoxLayout& a_finerGridsCoarsened,
00509 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00510 const LayoutData< Vector<IntVectSet> >& a_IVSVintFinerCoarsened,
00511 const int a_nRefFine,
00512 const Real a_dx,
00513 const Interval a_comps,
00514 bool a_verbose = true);
00515
00516
00518
00537 Real integral(const LevelData<NodeFArrayBox>& a_phi,
00538 const ProblemDomain& a_domain,
00539 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00540 const Real a_dx,
00541 const Interval a_comps,
00542 bool a_verbose = true);
00543
00544 Real integral(const LevelData<NodeFArrayBox>& a_phi,
00545 const Box& a_domain,
00546 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00547 const Real a_dx,
00548 const Interval a_comps,
00549 bool a_verbose = true);
00550
00551 #endif