Chombo + EB + MF  3.2
Public Member Functions | Protected Attributes | Private Member Functions | List of all members
FourthOrderPatchInterp Class Reference

Fourth-order interpolation in space on a single patch. More...

#include <FourthOrderPatchInterp.H>

Public Member Functions

 FourthOrderPatchInterp ()
 Default constructor. More...
 
virtual ~FourthOrderPatchInterp ()
 Destructor. More...
 
virtual void define (const ProblemDomain &a_domain, const int &a_refineCoarse, const int &a_maxStencilDist, Interval a_fixedDims=Interval())
 Actual constructor. More...
 
virtual void setCoarseBox (const Box &a_coarseBox)
 Set the coarse box before calling setStencil or interpToFine. More...
 
virtual void setStencil (BaseFab< IntVect > &a_stencil)
 Set stencil for current coarse box and domain. More...
 
virtual void interpToFine (FArrayBox &a_fine, const FArrayBox &a_coarse, const BaseFab< IntVect > &a_stencils)
 Interpolate in space. More...
 
virtual void interpToFine (FArrayBox &a_fine, const FArrayBox &a_coarse, const BaseFab< IntVect > &a_stencils, const IntVectSet &a_ivs)
 Interpolate in space. More...
 

Protected Attributes

BaseFab
< FourthOrderInterpStencil * > 
m_stencils
 all possible stencils, on (-m_maxStencilDist:+m_maxStencilDist)^SpaceDim More...
 
ProblemDomain m_domain
 Problem domain - index space for this level. More...
 
ProblemDomain m_coarseDomain
 
int m_refineCoarse
 Refinement ratio between this level and the next coarser. More...
 
int m_maxStencilDist
 maximum distance of stencil from domain boundary More...
 
int m_degree
 max degree of approximations More...
 
Interval m_fixedDims
 dimensions that are fixed, not interpolated More...
 
IntVect m_refineVect
 1 in m_fixedDims, m_refineCoarse in other dimensions More...
 
bool m_defined
 define() has been called More...
 
Box m_coarseBox
 current coarse box More...
 
bool m_isCoarseBoxSet
 m_coarseBox is set More...
 

Private Member Functions

void operator= (const FourthOrderPatchInterp &a_input)
 
 FourthOrderPatchInterp (const FourthOrderPatchInterp &a_input)
 

Detailed Description

Fourth-order interpolation in space on a single patch.

Constructor & Destructor Documentation

FourthOrderPatchInterp::FourthOrderPatchInterp ( )

Default constructor.

Object requires define() to be called before all other functions.

virtual FourthOrderPatchInterp::~FourthOrderPatchInterp ( )
virtual

Destructor.

Destroys all objects created by define(). Passed in data references of define() are left alone.

FourthOrderPatchInterp::FourthOrderPatchInterp ( const FourthOrderPatchInterp a_input)
inlineprivate

References MayDay::Error().

Member Function Documentation

virtual void FourthOrderPatchInterp::define ( const ProblemDomain a_domain,
const int &  a_refineCoarse,
const int &  a_maxStencilDist,
Interval  a_fixedDims = Interval() 
)
virtual

Actual constructor.

Set up object.

Parameters
a_domainproblem domain on this level
a_refineCoarserefinement ratio between this level and next coarser level
a_maxStencilDistmaximum distance of stencil from domain boundary
a_fixedDimsdimensions that are fixed, not interpolated
virtual void FourthOrderPatchInterp::setCoarseBox ( const Box a_coarseBox)
virtual

Set the coarse box before calling setStencil or interpToFine.

virtual void FourthOrderPatchInterp::setStencil ( BaseFab< IntVect > &  a_stencil)
virtual

Set stencil for current coarse box and domain.

Set a_stencil for m_coarseBox.

virtual void FourthOrderPatchInterp::interpToFine ( FArrayBox a_fine,
const FArrayBox a_coarse,
const BaseFab< IntVect > &  a_stencils 
)
virtual

Interpolate in space.

Interpolate in space to a_fine from a_coarse.

Parameters
a_fineinterpolated solution on this level
a_coarsecoarse solution
a_stencilsstencils
virtual void FourthOrderPatchInterp::interpToFine ( FArrayBox a_fine,
const FArrayBox a_coarse,
const BaseFab< IntVect > &  a_stencils,
const IntVectSet a_ivs 
)
virtual

Interpolate in space.

Interpolate in space to a_fine from a_coarse at fine cells within the coarse cells listed in a_ivs.

Parameters
a_fineinterpolated solution on this level
a_coarsecoarse solution
a_stencilsstencils
a_ivswe fill in fine cells within these coarse cells
void FourthOrderPatchInterp::operator= ( const FourthOrderPatchInterp a_input)
inlineprivate

References MayDay::Error().

Member Data Documentation

BaseFab<FourthOrderInterpStencil*> FourthOrderPatchInterp::m_stencils
protected

all possible stencils, on (-m_maxStencilDist:+m_maxStencilDist)^SpaceDim

ProblemDomain FourthOrderPatchInterp::m_domain
protected

Problem domain - index space for this level.

ProblemDomain FourthOrderPatchInterp::m_coarseDomain
protected
int FourthOrderPatchInterp::m_refineCoarse
protected

Refinement ratio between this level and the next coarser.

int FourthOrderPatchInterp::m_maxStencilDist
protected

maximum distance of stencil from domain boundary

int FourthOrderPatchInterp::m_degree
protected

max degree of approximations

Interval FourthOrderPatchInterp::m_fixedDims
protected

dimensions that are fixed, not interpolated

IntVect FourthOrderPatchInterp::m_refineVect
protected

1 in m_fixedDims, m_refineCoarse in other dimensions

bool FourthOrderPatchInterp::m_defined
protected

define() has been called

Box FourthOrderPatchInterp::m_coarseBox
protected

current coarse box

bool FourthOrderPatchInterp::m_isCoarseBoxSet
protected

m_coarseBox is set


The documentation for this class was generated from the following file: