Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

Norms.H File Reference

#include "LevelData.H"
#include "NodeFArrayBox.H"
#include "Vector.H"
#include "IntVectSet.H"

Include dependency graph for Norms.H:

Include dependency graph

Go to the source code of this file.

Functions

Real norm (const BoxLayoutData< NodeFArrayBox > &a_layout, const Real a_dx, const int a_p, const Interval &a_interval, bool a_verbose=true)
 Computes L^p norm of a BoxLayoutData<NodeFArrayBox>.

Real norm (const BoxLayoutData< NodeFArrayBox > &a_layout, const BoxLayoutData< BaseFab< int > > &a_mask, const Real a_dx, const int a_p, const Interval &a_interval, bool a_verbose=true)
 Computes L^p norm of a BoxLayoutData<NodeFArrayBox>.

Real maxnorm (const BoxLayoutData< NodeFArrayBox > &a_layout, const BoxLayoutData< BaseFab< int > > &a_mask, const Interval &a_interval, bool a_verbose=true)
 Computes max norm of a BoxLayoutData<NodeFArrayBox>.

Real maxnorm (const BoxLayoutData< NodeFArrayBox > &a_layout, const Real a_dx, const Interval &a_interval, bool a_verbose=true)
 Computes max norm of a BoxLayoutData<NodeFArrayBox>.

Real norm (const Vector< LevelData< NodeFArrayBox > * > &a_phi, const Vector< ProblemDomain > &a_domain, const Vector< int > &a_nRefFine, const Real a_dxCrse, const Interval a_comps, const int a_p, const int a_lBase, bool a_verbose=true)
 Computes norm of multilevel array, counting only valid nodes at each level.

Real norm (const Vector< LevelData< NodeFArrayBox > * > &a_phi, const Vector< Box > &a_domain, const Vector< int > &a_nRefFine, const Real a_dxCrse, const Interval a_comps, const int a_p, const int a_lBase, bool a_verbose=true)
Real norm (const LevelData< NodeFArrayBox > &a_phi, const ProblemDomain &a_domain, const DisjointBoxLayout *a_finerGridsPtr, const int a_nRefFine, const Real a_dx, const Interval a_comps, const int a_p, bool a_verbose=true)
 Computes norm of single-level array, counting only valid nodes.

Real norm (const LevelData< NodeFArrayBox > &a_phi, const Box &a_domain, const DisjointBoxLayout *a_finerGridsPtr, const int a_nRefFine, const Real a_dx, const Interval a_comps, const int a_p, bool a_verbose=true)
Real norm (const LevelData< NodeFArrayBox > &a_phi, const ProblemDomain &a_domain, const DisjointBoxLayout &a_finerGridsCoarsened, const LayoutData< Vector< IntVectSet > > &a_IVSVext, const LayoutData< Vector< IntVectSet > > &a_IVSVintFinerCoarsened, const int a_nRefFine, const Real a_dx, const Interval a_comps, const int a_p, bool a_verbose=true)
 Computes norm of single-level array, counting only valid nodes.

Real norm (const LevelData< NodeFArrayBox > &a_phi, const Box &a_domain, const DisjointBoxLayout &a_finerGridsCoarsened, const LayoutData< Vector< IntVectSet > > &a_IVSVext, const LayoutData< Vector< IntVectSet > > &a_IVSVintFinerCoarsened, const int a_nRefFine, const Real a_dx, const Interval a_comps, const int a_p, bool a_verbose=true)
Real norm (const LevelData< NodeFArrayBox > &a_phi, const ProblemDomain &a_domain, const LayoutData< Vector< IntVectSet > > &a_IVSVext, const Real a_dx, const Interval a_comps, const int a_p, bool a_verbose=true)
 Computes norm of single-level array, counting only valid nodes, with no finer level.

Real norm (const LevelData< NodeFArrayBox > &a_phi, const Box &a_domain, const LayoutData< Vector< IntVectSet > > &a_IVSVext, const Real a_dx, const Interval a_comps, const int a_p, bool a_verbose=true)
Real norm (const LevelData< NodeFArrayBox > &a_phi, const BoxLayoutData< BaseFab< int > > &a_mask, const ProblemDomain &a_domain, const LayoutData< Vector< IntVectSet > > &a_IVSVext, const Real a_dx, const Interval a_comps, const int a_p, bool a_verbose=true)
Real maxnorm (const Vector< LevelData< NodeFArrayBox > * > &a_phi, const Vector< ProblemDomain > &a_domain, const Vector< int > &a_nRefFine, const Interval a_comps, const int a_lBase, bool a_verbose=true)
 Computes max norm of multilevel array, counting only valid nodes at each level.

Real maxnorm (const Vector< LevelData< NodeFArrayBox > * > &a_phi, const Vector< Box > &a_domain, const Vector< int > &a_nRefFine, const Interval a_comps, const int a_lBase, bool a_verbose=true)
Real maxnorm (const LevelData< NodeFArrayBox > &a_phi, const ProblemDomain &a_domain, const DisjointBoxLayout *a_finerGridsPtr, const int a_nRefFine, const Interval a_comps, bool a_verbose=true)
 Computes max norm of single-level array, counting only valid nodes.

Real maxnorm (const LevelData< NodeFArrayBox > &a_phi, const Box &a_domain, const DisjointBoxLayout *a_finerGridsPtr, const int a_nRefFine, const Interval a_comps, bool a_verbose=true)
Real maxnorm (const LevelData< NodeFArrayBox > &a_phi, const ProblemDomain &a_domain, const DisjointBoxLayout &a_finerGridsCoarsened, const LayoutData< Vector< IntVectSet > > &a_IVSVext, const LayoutData< Vector< IntVectSet > > &a_IVSVintFinerCoarsened, const int a_nRefFine, const Interval a_comps, bool a_verbose=true)
 Computes max norm of single-level array, counting only valid nodes.

Real maxnorm (const LevelData< NodeFArrayBox > &a_phi, const Box &a_domain, const DisjointBoxLayout &a_finerGridsCoarsened, const LayoutData< Vector< IntVectSet > > &a_IVSVext, const LayoutData< Vector< IntVectSet > > &a_IVSVintFinerCoarsened, const int a_nRefFine, const Interval a_comps, bool a_verbose=true)
Real maxnorm (const LevelData< NodeFArrayBox > &a_phi, const ProblemDomain &a_domain, const LayoutData< Vector< IntVectSet > > &a_IVSVext, const Interval a_comps, bool a_verbose=true)
 Computes max norm of single-level array, counting only valid nodes, with no finer level.

Real maxnorm (const LevelData< NodeFArrayBox > &a_phi, const Box &a_domain, const LayoutData< Vector< IntVectSet > > &a_IVSVext, const Interval a_comps, bool a_verbose=true)
Real maxnorm (const LevelData< NodeFArrayBox > &a_phi, const BoxLayoutData< BaseFab< int > > &a_mask, const ProblemDomain &a_domain, const LayoutData< Vector< IntVectSet > > &a_IVSVext, const Interval a_comps, bool a_verbose=true)
Real integral (const BoxLayoutData< NodeFArrayBox > &a_layout, const Real a_dx, const Interval &a_interval, bool a_verbose=true)
 Computes integral of a BoxLayoutData<NodeFArrayBox>.

Real integral (const Vector< LevelData< NodeFArrayBox > * > &a_phi, const Vector< ProblemDomain > &a_domain, const Vector< int > &a_nRefFine, const Real a_dxCrse, const Interval a_comps, const int a_lBase, bool a_verbose=true)
 Computes integral of multilevel array, counting only valid nodes at each level.

Real integral (const Vector< LevelData< NodeFArrayBox > * > &a_phi, const Vector< Box > &a_domain, const Vector< int > &a_nRefFine, const Real a_dxCrse, const Interval a_comps, const int a_lBase, bool a_verbose=true)
Real integral (const LevelData< NodeFArrayBox > &a_phi, const ProblemDomain &a_domain, const DisjointBoxLayout *a_finerGridsPtr, const int a_nRefFine, const Real a_dx, const Interval a_comps, bool a_verbose=true)
 Computes integral of single-level array, counting only valid nodes.

Real integral (const LevelData< NodeFArrayBox > &a_phi, const Box &a_domain, const DisjointBoxLayout *a_finerGridsPtr, const int a_nRefFine, const Real a_dx, const Interval a_comps, bool a_verbose=true)
Real integral (const LevelData< NodeFArrayBox > &a_phi, const ProblemDomain &a_domain, const DisjointBoxLayout &a_finerGridsCoarsened, const LayoutData< Vector< IntVectSet > > &a_IVSVext, const LayoutData< Vector< IntVectSet > > &a_IVSVintFinerCoarsened, const int a_nRefFine, const Real a_dx, const Interval a_comps, bool a_verbose=true)
 Computes integral of single-level array, counting only valid nodes.

Real integral (const LevelData< NodeFArrayBox > &a_phi, const Box &a_domain, const DisjointBoxLayout &a_finerGridsCoarsened, const LayoutData< Vector< IntVectSet > > &a_IVSVext, const LayoutData< Vector< IntVectSet > > &a_IVSVintFinerCoarsened, const int a_nRefFine, const Real a_dx, const Interval a_comps, bool a_verbose=true)
Real integral (const LevelData< NodeFArrayBox > &a_phi, const ProblemDomain &a_domain, const LayoutData< Vector< IntVectSet > > &a_IVSVext, const Real a_dx, const Interval a_comps, bool a_verbose=true)
 Computes integral of single-level array, counting only valid nodes, with no finer level.

Real integral (const LevelData< NodeFArrayBox > &a_phi, const Box &a_domain, const LayoutData< Vector< IntVectSet > > &a_IVSVext, const Real a_dx, const Interval a_comps, bool a_verbose=true)


Function Documentation

Real integral const LevelData< NodeFArrayBox > &    a_phi,
const Box &    a_domain,
const LayoutData< Vector< IntVectSet > > &    a_IVSVext,
const Real    a_dx,
const Interval    a_comps,
bool    a_verbose = true
 

Real integral const LevelData< NodeFArrayBox > &    a_phi,
const ProblemDomain &    a_domain,
const LayoutData< Vector< IntVectSet > > &    a_IVSVext,
const Real    a_dx,
const Interval    a_comps,
bool    a_verbose = true
 

Computes integral of single-level array, counting only valid nodes, with no finer level.

Computes integral of single-level array a_phi, where there is no finer level.

Only the valid nodes at this level are counted. The valid nodes are the interior nodes of this level.

The a_IVSVext object is obtained from the calls: \ interiorBoundaryNodes(IVSVint, a_phi.getBoxes(), a_domain); \ exteriorBoundaryNodes(a_IVSVext, IVSVint, a_phi.getBoxes(); \

{\bf Arguments:}\ a_phi: the data on which to take the integral.\ a_domain: CELL-centered physical domain on each level.\ a_IVSVext: exterior boundary nodes of this level.\ a_dx: mesh spacing at this level.\ a_comps: interval of components to use.\ a_verbose: verbosity.

Real integral const LevelData< NodeFArrayBox > &    a_phi,
const Box &    a_domain,
const DisjointBoxLayout &    a_finerGridsCoarsened,
const LayoutData< Vector< IntVectSet > > &    a_IVSVext,
const LayoutData< Vector< IntVectSet > > &    a_IVSVintFinerCoarsened,
const int    a_nRefFine,
const Real    a_dx,
const Interval    a_comps,
bool    a_verbose = true
 

Real integral const LevelData< NodeFArrayBox > &    a_phi,
const ProblemDomain &    a_domain,
const DisjointBoxLayout &    a_finerGridsCoarsened,
const LayoutData< Vector< IntVectSet > > &    a_IVSVext,
const LayoutData< Vector< IntVectSet > > &    a_IVSVintFinerCoarsened,
const int    a_nRefFine,
const Real    a_dx,
const Interval    a_comps,
bool    a_verbose = true
 

Computes integral of single-level array, counting only valid nodes.

Computes integral of single-level array a_phi. Only the valid nodes at this level are counted. The valid nodes are the interior nodes of this level that are not projections of interior nodes of the finer level, if any.

The a_IVSVext object is obtained from the calls: \ interiorBoundaryNodes(IVSVint, a_phi.getBoxes(), a_domain); \ exteriorBoundaryNodes(a_IVSVext, IVSVint, a_phi.getBoxes(); \

The a_IVSVintFinerCoarsened object is obtained from the calls: \ interiorBoundaryNodes(a_IVSVintFinerCoarsened, a_phi.getBoxes(), a_finerGridsCoarsened, a_domain);

{\bf Arguments:}\ a_phi: the data on which to take the integral.\ a_domain: CELL-centered physical domain on each level.\ a_finerGridsCoarsened: CELL-centered grids on the next finer level.\ a_IVSVext: exterior boundary nodes of this level.\ a_IVSVintFinerCoarsened: interior boundary nodes of coarsened finer-level grids.\ a_nRefFine: refinement ratio to next finer level.\ a_dx: mesh spacing at this level.\ a_comps: interval of components to use.\ a_verbose: verbosity.

Real integral const LevelData< NodeFArrayBox > &    a_phi,
const Box &    a_domain,
const DisjointBoxLayout *    a_finerGridsPtr,
const int    a_nRefFine,
const Real    a_dx,
const Interval    a_comps,
bool    a_verbose = true
 

Real integral const LevelData< NodeFArrayBox > &    a_phi,
const ProblemDomain &    a_domain,
const DisjointBoxLayout *    a_finerGridsPtr,
const int    a_nRefFine,
const Real    a_dx,
const Interval    a_comps,
bool    a_verbose = true
 

Computes integral of single-level array, counting only valid nodes.

Computes integral of single-level array a_phi. Only the valid nodes at this level are counted. The valid nodes are the interior nodes of this level that are not projections of interior nodes of the finer level, if any.

This function computes exterior boundary nodes, and interior boundary nodes of the coarsened finer level, if any. It is more efficient to precompute these boundary-node objects and call one of the other integral functions below.

{\bf Arguments:}\ a_phi: the data on which to take the integral.\ a_domain: CELL-centered physical domain on each level.\ a_finerGridsPtr: pointer to CELL-centered grids on the next finer level, or NULL if there is none.\ a_nRefFine: refinement ratio to next finer level.\ a_dx: mesh spacing at this level.\ a_comps: interval of components to use.\ a_verbose: verbosity.

Real integral const Vector< LevelData< NodeFArrayBox > * > &    a_phi,
const Vector< Box > &    a_domain,
const Vector< int > &    a_nRefFine,
const Real    a_dxCrse,
const Interval    a_comps,
const int    a_lBase,
bool    a_verbose = true
 

Real integral const Vector< LevelData< NodeFArrayBox > * > &    a_phi,
const Vector< ProblemDomain > &    a_domain,
const Vector< int > &    a_nRefFine,
const Real    a_dxCrse,
const Interval    a_comps,
const int    a_lBase,
bool    a_verbose = true
 

Computes integral of multilevel array, counting only valid nodes at each level.

Computes integral of multilevel array a_phi. Only the valid nodes at each level are counted. The valid nodes at a level are those that are not covered by the interior of any finer level. Adapted from cell-centered computeNorm by dMartin.

{\bf Arguments:}\ a_phi: multilevel data on which to take the integral.\ a_domain: CELL-centered physical domain on each level.\ a_nRefFine: refinement ratios between successive levels.\ a_dxCrse: mesh spacing at level a_lBase.\ a_comps: components to use in computing integral.\ a_lBase: index of base level to use in Vectors.\ a_verbose: verbosity.

Real integral const BoxLayoutData< NodeFArrayBox > &    a_layout,
const Real    a_dx,
const Interval &    a_interval,
bool    a_verbose = true
 

Computes integral of a BoxLayoutData<NodeFArrayBox>.

Computes integral of a_layout. Ignores ghost cells for LevelData.

This is an internal function that should NOT normally be called by the user.

{\bf Arguments:}\ a_layout: the data on which to take the integral.\ a_dx: mesh spacing at this level.\ a_interval: interval of components to use.\ a_verbose: verbosity.\

Real maxnorm const LevelData< NodeFArrayBox > &    a_phi,
const BoxLayoutData< BaseFab< int > > &    a_mask,
const ProblemDomain &    a_domain,
const LayoutData< Vector< IntVectSet > > &    a_IVSVext,
const Interval    a_comps,
bool    a_verbose = true
 

Real maxnorm const LevelData< NodeFArrayBox > &    a_phi,
const Box &    a_domain,
const LayoutData< Vector< IntVectSet > > &    a_IVSVext,
const Interval    a_comps,
bool    a_verbose = true
 

Real maxnorm const LevelData< NodeFArrayBox > &    a_phi,
const ProblemDomain &    a_domain,
const LayoutData< Vector< IntVectSet > > &    a_IVSVext,
const Interval    a_comps,
bool    a_verbose = true
 

Computes max norm of single-level array, counting only valid nodes, with no finer level.

Computes max norm of single-level array a_phi, where there is no finer level.

Only the valid nodes at this level are counted. The valid nodes are the interior nodes of this level.

The a_IVSVext object is obtained from the calls: \ interiorBoundaryNodes(IVSVint, a_phi.getBoxes(), a_domain); \ exteriorBoundaryNodes(a_IVSVext, IVSVint, a_phi.getBoxes(); \

{\bf Arguments:}\ a_phi: the data on which to take the norm.\ a_domain: CELL-centered physical domain on each level.\ a_IVSVext: exterior boundary nodes of this level.\ a_dx: mesh spacing at this level.\ a_comps: interval of components to use.\ a_p: norm to take, or 0 for max norm.\ a_verbose: verbosity, whether to print norms of each box.

Real maxnorm const LevelData< NodeFArrayBox > &    a_phi,
const Box &    a_domain,
const DisjointBoxLayout &    a_finerGridsCoarsened,
const LayoutData< Vector< IntVectSet > > &    a_IVSVext,
const LayoutData< Vector< IntVectSet > > &    a_IVSVintFinerCoarsened,
const int    a_nRefFine,
const Interval    a_comps,
bool    a_verbose = true
 

Real maxnorm const LevelData< NodeFArrayBox > &    a_phi,
const ProblemDomain &    a_domain,
const DisjointBoxLayout &    a_finerGridsCoarsened,
const LayoutData< Vector< IntVectSet > > &    a_IVSVext,
const LayoutData< Vector< IntVectSet > > &    a_IVSVintFinerCoarsened,
const int    a_nRefFine,
const Interval    a_comps,
bool    a_verbose = true
 

Computes max norm of single-level array, counting only valid nodes.

Computes max norm of single-level array a_phi. Only the valid nodes at this level are counted. The valid nodes are the interior nodes of this level that are not projections of interior nodes of the finer level, if any.

The a_IVSVext object is obtained from the calls: \ interiorBoundaryNodes(IVSVint, a_phi.getBoxes(), a_domain); \ exteriorBoundaryNodes(a_IVSVext, IVSVint, a_phi.getBoxes(); \

The a_IVSVintFinerCoarsened object is obtained from the calls: \ interiorBoundaryNodes(a_IVSVintFinerCoarsened, a_phi.getBoxes(), a_finerGridsCoarsened, a_domain);

{\bf Arguments:}\ a_phi: the data on which to take the norm.\ a_domain: CELL-centered physical domain on each level.\ a_finerGridsCoarsened: CELL-centered grids on the next finer level.\ a_IVSVext: exterior boundary nodes of this level.\ a_IVSVintFinerCoarsened: interior boundary nodes of coarsened finer-level grids.\ a_nRefFine: refinement ratio to next finer level.\ a_dx: mesh spacing at this level.\ a_comps: interval of components to use.\ a_p: norm to take, or 0 for max norm.\ a_verbose: verbosity, whether to print norms of each box.

Real maxnorm const LevelData< NodeFArrayBox > &    a_phi,
const Box &    a_domain,
const DisjointBoxLayout *    a_finerGridsPtr,
const int    a_nRefFine,
const Interval    a_comps,
bool    a_verbose = true
 

Real maxnorm const LevelData< NodeFArrayBox > &    a_phi,
const ProblemDomain &    a_domain,
const DisjointBoxLayout *    a_finerGridsPtr,
const int    a_nRefFine,
const Interval    a_comps,
bool    a_verbose = true
 

Computes max norm of single-level array, counting only valid nodes.

Computes max norm of single-level array a_phi. Only the valid nodes at this level are counted. The valid nodes are the interior nodes of this level that are not projections of interior nodes of the finer level, if any.

This function computes exterior boundary nodes, and interior boundary nodes of the coarsened finer level, if any. It is more efficient to precompute these boundary-node objects and call one of the other maxnorm functions below.

{\bf Arguments:}\ a_phi: the data on which to take the norm.\ a_domain: CELL-centered physical domain on each level.\ a_finerGridsPtr: pointer to CELL-centered grids on the next finer level, or NULL if there is none.\ a_nRefFine: refinement ratio to next finer level.\ a_comps: interval of components to use.\ a_verbose: verbosity, whether to print norms of each box.

Real maxnorm const Vector< LevelData< NodeFArrayBox > * > &    a_phi,
const Vector< Box > &    a_domain,
const Vector< int > &    a_nRefFine,
const Interval    a_comps,
const int    a_lBase,
bool    a_verbose = true
 

Real maxnorm const Vector< LevelData< NodeFArrayBox > * > &    a_phi,
const Vector< ProblemDomain > &    a_domain,
const Vector< int > &    a_nRefFine,
const Interval    a_comps,
const int    a_lBase,
bool    a_verbose = true
 

Computes max norm of multilevel array, counting only valid nodes at each level.

Computes max norm of multilevel array a_phi. Only the valid nodes at each level are counted. The valid nodes at a level are those that are not covered by the interior of any finer level.

{\bf Arguments:}\ a_phi: multilevel data on which to take the norm.\ a_domain: CELL-centered physical domain on each level.\ a_nRefFine: refinement ratios between successive levels.\ a_comps: components to use in computing norm.\ a_lBase: index of base level to use in Vectors.\ a_verbose: verbosity, whether to print norms of each box.

Real maxnorm const BoxLayoutData< NodeFArrayBox > &    a_layout,
const Real    a_dx,
const Interval &    a_interval,
bool    a_verbose = true
 

Computes max norm of a BoxLayoutData<NodeFArrayBox>.

Computes max norm of a_layout. Ignores ghost cells for LevelData.\

This is an internal function that should NOT normally be called by the user.

{\bf Arguments:}\ a_layout: the data on which to take the norm.\ a_interval: components to use in computing norm.\ a_verbose: verbosity, whether to print norms of each box.

Real maxnorm const BoxLayoutData< NodeFArrayBox > &    a_layout,
const BoxLayoutData< BaseFab< int > > &    a_mask,
const Interval &    a_interval,
bool    a_verbose = true
 

Computes max norm of a BoxLayoutData<NodeFArrayBox>.

Computes max norm of a_layout. Ignores ghost cells for LevelData.

{\bf Arguments:}\ a_layout: the data on which to take the norm.\ a_mask: mask arrays from REACHABLENODES.\ a_interval: interval of components to use.\ a_verbose: verbosity, whether to print norms of each box.

Real norm const LevelData< NodeFArrayBox > &    a_phi,
const BoxLayoutData< BaseFab< int > > &    a_mask,
const ProblemDomain &    a_domain,
const LayoutData< Vector< IntVectSet > > &    a_IVSVext,
const Real    a_dx,
const Interval    a_comps,
const int    a_p,
bool    a_verbose = true
 

Real norm const LevelData< NodeFArrayBox > &    a_phi,
const Box &    a_domain,
const LayoutData< Vector< IntVectSet > > &    a_IVSVext,
const Real    a_dx,
const Interval    a_comps,
const int    a_p,
bool    a_verbose = true
 

Real norm const LevelData< NodeFArrayBox > &    a_phi,
const ProblemDomain &    a_domain,
const LayoutData< Vector< IntVectSet > > &    a_IVSVext,
const Real    a_dx,
const Interval    a_comps,
const int    a_p,
bool    a_verbose = true
 

Computes norm of single-level array, counting only valid nodes, with no finer level.

Computes norm of single-level array a_phi, where there is no finer level.

Only the valid nodes at this level are counted. The valid nodes are the interior nodes of this level.

The a_IVSVext object is obtained from the calls: \ interiorBoundaryNodes(IVSVint, a_phi.getBoxes(), a_domain); \ exteriorBoundaryNodes(a_IVSVext, IVSVint, a_phi.getBoxes(); \

{\bf Arguments:}\ a_phi: the data on which to take the norm.\ a_domain: CELL-centered physical domain on each level.\ a_IVSVext: exterior boundary nodes of this level.\ a_dx: mesh spacing at this level.\ a_comps: interval of components to use.\ a_p: norm to take, or 0 for max norm.\ a_verbose: verbosity, whether to print norms of each box.

Real norm const LevelData< NodeFArrayBox > &    a_phi,
const Box &    a_domain,
const DisjointBoxLayout &    a_finerGridsCoarsened,
const LayoutData< Vector< IntVectSet > > &    a_IVSVext,
const LayoutData< Vector< IntVectSet > > &    a_IVSVintFinerCoarsened,
const int    a_nRefFine,
const Real    a_dx,
const Interval    a_comps,
const int    a_p,
bool    a_verbose = true
 

Real norm const LevelData< NodeFArrayBox > &    a_phi,
const ProblemDomain &    a_domain,
const DisjointBoxLayout &    a_finerGridsCoarsened,
const LayoutData< Vector< IntVectSet > > &    a_IVSVext,
const LayoutData< Vector< IntVectSet > > &    a_IVSVintFinerCoarsened,
const int    a_nRefFine,
const Real    a_dx,
const Interval    a_comps,
const int    a_p,
bool    a_verbose = true
 

Computes norm of single-level array, counting only valid nodes.

Computes norm of single-level array a_phi. Only the valid nodes at this level are counted. The valid nodes are the interior nodes of this level that are not projections of interior nodes of the finer level, if any.

The a_IVSVext object is obtained from the calls: \ interiorBoundaryNodes(IVSVint, a_phi.getBoxes(), a_domain); \ exteriorBoundaryNodes(a_IVSVext, IVSVint, a_phi.getBoxes(); \

The a_IVSVintFinerCoarsened object is obtained from the calls: \ interiorBoundaryNodes(a_IVSVintFinerCoarsened, a_phi.getBoxes(), a_finerGridsCoarsened, a_domain);

{\bf Arguments:}\ a_phi: the data on which to take the norm.\ a_domain: CELL-centered physical domain on each level.\ a_finerGridsCoarsened: CELL-centered grids on the next finer level.\ a_IVSVext: exterior boundary nodes of this level.\ a_IVSVintFinerCoarsened: interior boundary nodes of coarsened finer-level grids.\ a_nRefFine: refinement ratio to next finer level.\ a_dx: mesh spacing at this level.\ a_comps: interval of components to use.\ a_p: norm to take, or 0 for max norm.\ a_verbose: verbosity, whether to print norms of each box.

Real norm const LevelData< NodeFArrayBox > &    a_phi,
const Box &    a_domain,
const DisjointBoxLayout *    a_finerGridsPtr,
const int    a_nRefFine,
const Real    a_dx,
const Interval    a_comps,
const int    a_p,
bool    a_verbose = true
 

Real norm const LevelData< NodeFArrayBox > &    a_phi,
const ProblemDomain &    a_domain,
const DisjointBoxLayout *    a_finerGridsPtr,
const int    a_nRefFine,
const Real    a_dx,
const Interval    a_comps,
const int    a_p,
bool    a_verbose = true
 

Computes norm of single-level array, counting only valid nodes.

Computes norm of single-level array a_phi. Only the valid nodes at this level are counted. The valid nodes are the interior nodes of this level that are not projections of interior nodes of the finer level, if any.

This function computes exterior boundary nodes, and interior boundary nodes of the coarsened finer level, if any. It is more efficient to precompute these boundary-node objects and call one of the other norm functions below.

{\bf Arguments:}\ a_phi: the data on which to take the norm.\ a_domain: CELL-centered physical domain on each level.\ a_finerGridsPtr: pointer to CELL-centered grids on the next finer level, or NULL if there is none.\ a_nRefFine: refinement ratio to next finer level.\ a_dx: mesh spacing at this level.\ a_comps: interval of components to use.\ a_p: norm to take, or 0 for max norm.\ a_verbose: verbosity, whether to print norms of each box.

Real norm const Vector< LevelData< NodeFArrayBox > * > &    a_phi,
const Vector< Box > &    a_domain,
const Vector< int > &    a_nRefFine,
const Real    a_dxCrse,
const Interval    a_comps,
const int    a_p,
const int    a_lBase,
bool    a_verbose = true
 

Real norm const Vector< LevelData< NodeFArrayBox > * > &    a_phi,
const Vector< ProblemDomain > &    a_domain,
const Vector< int > &    a_nRefFine,
const Real    a_dxCrse,
const Interval    a_comps,
const int    a_p,
const int    a_lBase,
bool    a_verbose = true
 

Computes norm of multilevel array, counting only valid nodes at each level.

Computes norm of multilevel array a_phi. Only the valid nodes at each level are counted. The valid nodes at a level are those that are not covered by the interior of any finer level. Adapted from cell-centered computeNorm by dMartin.

{\bf Arguments:}\ a_phi: multilevel data on which to take the norm.\ a_domain: CELL-centered physical domain on each level.\ a_nRefFine: refinement ratios between successive levels.\ a_dxCrse: mesh spacing at level a_lBase.\ a_comps: components to use in computing norm.\ a_p: norm to take, or 0 for max norm.\ a_lBase: index of base level to use in Vectors.\ a_verbose: verbosity, whether to print norms of each box.

Real norm const BoxLayoutData< NodeFArrayBox > &    a_layout,
const BoxLayoutData< BaseFab< int > > &    a_mask,
const Real    a_dx,
const int    a_p,
const Interval &    a_interval,
bool    a_verbose = true
 

Computes L^p norm of a BoxLayoutData<NodeFArrayBox>.

Computes L^p norm of a_layout. Ignores ghost cells for LevelData.

This is an internal function that should NOT normally be called by the user.

{\bf Arguments:}\ a_layout: the data on which to take the norm.\ a_mask: mask arrays from REACHABLENODES.\ a_dx: mesh spacing at this level.\ a_p: norm to take, or 0 for max norm.\ a_interval: interval of components to use.\ a_verbose: verbosity, whether to print norms of each box.

Real norm const BoxLayoutData< NodeFArrayBox > &    a_layout,
const Real    a_dx,
const int    a_p,
const Interval &    a_interval,
bool    a_verbose = true
 

Computes L^p norm of a BoxLayoutData<NodeFArrayBox>.

Computes L^p norm of a_layout. Ignores ghost cells for LevelData.

This is an internal function that should NOT normally be called by the user.

{\bf Arguments:}\ a_layout: the data on which to take the norm.\ a_dx: mesh spacing at this level.\ a_p: norm to take, or 0 for max norm.\ a_interval: interval of components to use.\ a_verbose: verbosity, whether to print norms of each box.


Generated on Tue Apr 15 18:32:09 2003 for AMRNodeElliptic by doxygen1.2.16