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
00072 Real norm(const BoxLayoutData<NodeFArrayBox>& a_layout,
00073 const BoxLayoutData< BaseFab<int> >& a_mask,
00074 const Real a_dx,
00075 const int a_p,
00076 const Interval& a_interval,
00077 bool a_verbose = true);
00078
00080
00088 Real maxnorm(const BoxLayoutData<NodeFArrayBox>& a_layout,
00089 const BoxLayoutData< BaseFab<int> >& a_mask,
00090 const Interval& a_interval,
00091 bool a_verbose = true);
00092
00094
00104 Real maxnorm(const BoxLayoutData<NodeFArrayBox>& a_layout,
00105 const Real a_dx,
00106 const Interval& a_interval,
00107 bool a_verbose = true);
00108
00110
00127 Real norm(const Vector<LevelData<NodeFArrayBox>* >& a_phi,
00128 const Vector<ProblemDomain>& a_domain,
00129 const Vector<int>& a_nRefFine,
00130 const Real a_dxCrse,
00131 const Interval a_comps,
00132 const int a_p,
00133 const int a_lBase,
00134 bool a_verbose = true);
00135
00136 Real norm(const Vector<LevelData<NodeFArrayBox>* >& a_phi,
00137 const Vector<Box>& a_domain,
00138 const Vector<int>& a_nRefFine,
00139 const Real a_dxCrse,
00140 const Interval a_comps,
00141 const int a_p,
00142 const int a_lBase,
00143 bool a_verbose = true);
00144
00146
00168 Real norm(const LevelData<NodeFArrayBox>& a_phi,
00169 const ProblemDomain& a_domain,
00170 const DisjointBoxLayout* a_finerGridsPtr,
00171 const int a_nRefFine,
00172 const Real a_dx,
00173 const Interval a_comps,
00174 const int a_p,
00175 bool a_verbose = true);
00176
00177 Real norm(const LevelData<NodeFArrayBox>& a_phi,
00178 const Box& a_domain,
00179 const DisjointBoxLayout* a_finerGridsPtr,
00180 const int a_nRefFine,
00181 const Real a_dx,
00182 const Interval a_comps,
00183 const int a_p,
00184 bool a_verbose = true);
00185
00187
00213 Real norm(const LevelData<NodeFArrayBox>& a_phi,
00214 const ProblemDomain& a_domain,
00215 const DisjointBoxLayout& a_finerGridsCoarsened,
00216 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00217 const LayoutData< Vector<IntVectSet> >& a_IVSVintFinerCoarsened,
00218 const int a_nRefFine,
00219 const Real a_dx,
00220 const Interval a_comps,
00221 const int a_p,
00222 bool a_verbose = true);
00223
00224 Real norm(const LevelData<NodeFArrayBox>& a_phi,
00225 const Box& a_domain,
00226 const DisjointBoxLayout& a_finerGridsCoarsened,
00227 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00228 const LayoutData< Vector<IntVectSet> >& a_IVSVintFinerCoarsened,
00229 const int a_nRefFine,
00230 const Real a_dx,
00231 const Interval a_comps,
00232 const int a_p,
00233 bool a_verbose = true);
00234
00235
00237
00257 Real norm(const LevelData<NodeFArrayBox>& a_phi,
00258 const ProblemDomain& a_domain,
00259 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00260 const Real a_dx,
00261 const Interval a_comps,
00262 const int a_p,
00263 bool a_verbose = true);
00264
00265 Real norm(const LevelData<NodeFArrayBox>& a_phi,
00266 const Box& a_domain,
00267 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00268 const Real a_dx,
00269 const Interval a_comps,
00270 const int a_p,
00271 bool a_verbose = true);
00272
00273 Real norm(const LevelData<NodeFArrayBox>& a_phi,
00274 const BoxLayoutData< BaseFab<int> >& a_mask,
00275 const ProblemDomain& a_domain,
00276 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00277 const Real a_dx,
00278 const Interval a_comps,
00279 const int a_p,
00280 bool a_verbose = true);
00281
00283
00297 Real maxnorm(const Vector<LevelData<NodeFArrayBox>* >& a_phi,
00298 const Vector<ProblemDomain>& a_domain,
00299 const Vector<int>& a_nRefFine,
00300 const Interval a_comps,
00301 const int a_lBase,
00302 bool a_verbose = true);
00303
00304 Real maxnorm(const Vector<LevelData<NodeFArrayBox>* >& a_phi,
00305 const Vector<Box>& a_domain,
00306 const Vector<int>& a_nRefFine,
00307 const Interval a_comps,
00308 const int a_lBase,
00309 bool a_verbose = true);
00310
00312
00332 Real maxnorm(const LevelData<NodeFArrayBox>& a_phi,
00333 const ProblemDomain& a_domain,
00334 const DisjointBoxLayout* a_finerGridsPtr,
00335 const int a_nRefFine,
00336 const Interval a_comps,
00337 bool a_verbose = true);
00338
00339 Real maxnorm(const LevelData<NodeFArrayBox>& a_phi,
00340 const Box& a_domain,
00341 const DisjointBoxLayout* a_finerGridsPtr,
00342 const int a_nRefFine,
00343 const Interval a_comps,
00344 bool a_verbose = true);
00345
00346
00348
00374 Real maxnorm(const LevelData<NodeFArrayBox>& a_phi,
00375 const ProblemDomain& a_domain,
00376 const DisjointBoxLayout& a_finerGridsCoarsened,
00377 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00378 const LayoutData< Vector<IntVectSet> >& a_IVSVintFinerCoarsened,
00379 const int a_nRefFine,
00380 const Interval a_comps,
00381 bool a_verbose = true);
00382
00383 Real maxnorm(const LevelData<NodeFArrayBox>& a_phi,
00384 const Box& a_domain,
00385 const DisjointBoxLayout& a_finerGridsCoarsened,
00386 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00387 const LayoutData< Vector<IntVectSet> >& a_IVSVintFinerCoarsened,
00388 const int a_nRefFine,
00389 const Interval a_comps,
00390 bool a_verbose = true);
00391
00393
00413 Real maxnorm(const LevelData<NodeFArrayBox>& a_phi,
00414 const ProblemDomain& a_domain,
00415 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00416 const Interval a_comps,
00417 bool a_verbose = true);
00418
00419 Real maxnorm(const LevelData<NodeFArrayBox>& a_phi,
00420 const Box& a_domain,
00421 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00422 const Interval a_comps,
00423 bool a_verbose = true);
00424
00425 Real maxnorm(const LevelData<NodeFArrayBox>& a_phi,
00426 const BoxLayoutData< BaseFab<int> >& a_mask,
00427 const ProblemDomain& a_domain,
00428 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00429 const Interval a_comps,
00430 bool a_verbose = true);
00431
00433
00444 Real integral(const BoxLayoutData<NodeFArrayBox>& a_layout,
00445 const Real a_dx,
00446 const Interval& a_interval,
00447 bool a_verbose = true);
00448
00450
00466 Real integral(const Vector<LevelData<NodeFArrayBox>* >& a_phi,
00467 const Vector<ProblemDomain>& a_domain,
00468 const Vector<int>& a_nRefFine,
00469 const Real a_dxCrse,
00470 const Interval a_comps,
00471 const int a_lBase,
00472 bool a_verbose = true);
00473
00474 Real integral(const Vector<LevelData<NodeFArrayBox>* >& a_phi,
00475 const Vector<Box>& a_domain,
00476 const Vector<int>& a_nRefFine,
00477 const Real a_dxCrse,
00478 const Interval a_comps,
00479 const int a_lBase,
00480 bool a_verbose = true);
00481
00483
00504 Real integral(const LevelData<NodeFArrayBox>& a_phi,
00505 const ProblemDomain& a_domain,
00506 const DisjointBoxLayout* a_finerGridsPtr,
00507 const int a_nRefFine,
00508 const Real a_dx,
00509 const Interval a_comps,
00510 bool a_verbose = true);
00511
00512 Real integral(const LevelData<NodeFArrayBox>& a_phi,
00513 const Box& a_domain,
00514 const DisjointBoxLayout* a_finerGridsPtr,
00515 const int a_nRefFine,
00516 const Real a_dx,
00517 const Interval a_comps,
00518 bool a_verbose = true);
00519
00521
00546 Real integral(const LevelData<NodeFArrayBox>& a_phi,
00547 const ProblemDomain& a_domain,
00548 const DisjointBoxLayout& a_finerGridsCoarsened,
00549 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00550 const LayoutData< Vector<IntVectSet> >& a_IVSVintFinerCoarsened,
00551 const int a_nRefFine,
00552 const Real a_dx,
00553 const Interval a_comps,
00554 bool a_verbose = true);
00555
00556 Real integral(const LevelData<NodeFArrayBox>& a_phi,
00557 const Box& a_domain,
00558 const DisjointBoxLayout& a_finerGridsCoarsened,
00559 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00560 const LayoutData< Vector<IntVectSet> >& a_IVSVintFinerCoarsened,
00561 const int a_nRefFine,
00562 const Real a_dx,
00563 const Interval a_comps,
00564 bool a_verbose = true);
00565
00566
00568
00587 Real integral(const LevelData<NodeFArrayBox>& a_phi,
00588 const ProblemDomain& a_domain,
00589 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00590 const Real a_dx,
00591 const Interval a_comps,
00592 bool a_verbose = true);
00593
00594 Real integral(const LevelData<NodeFArrayBox>& a_phi,
00595 const Box& a_domain,
00596 const LayoutData< Vector<IntVectSet> >& a_IVSVext,
00597 const Real a_dx,
00598 const Interval a_comps,
00599 bool a_verbose = true);
00600
00601 #endif