FourthOrderCFInterp Class Reference

#include <FourthOrderCFInterp.H>

List of all members.


Detailed Description

Fourth-order interpolation in time and space to ghost cells.

Public Member Functions

 FourthOrderCFInterp ()
 Default constructor.
 FourthOrderCFInterp (const DisjointBoxLayout &a_thisDisjointBoxLayout, const DisjointBoxLayout &a_coarserDisjointBoxLayout, const int &a_numStates, const ProblemDomain &a_coarseDomain, const int &a_refineCoarse, const int &a_interpRadius)
 Full constructor.
 ~FourthOrderCFInterp ()
 Destructor.
void homogeneousCoarseFineInterp (LevelData< FArrayBox > &a_fineData, int a_srcComp, int a_dstComp, int a_numComp)
 fill ghostcells as if all the coarse data were zero (useful for multigrid)
void define (const DisjointBoxLayout &a_thisDisjointBoxLayout, const DisjointBoxLayout &a_coarserDisjointBoxLayout, const int &a_numStates, const ProblemDomain &a_coarseDomain, const int &a_refineCoarse, const int &a_interpRadius)
 Actual constructor.
void coarseFineInterp (LevelData< FArrayBox > &a_fineData, const LevelData< FArrayBox > &a_coarseData, int a_srcComp, int a_dstComp, int a_numComp)
 Interpolate in space only.

Protected Member Functions

void fillInterpSpaceFromCoarsened (LevelData< FArrayBox > &a_fineData, int a_srcComp, int a_dstComp, int a_numComp)
 Interpolate in space only, from coarsened fine grids.

Protected Attributes

bool m_defined
 whether define() has been called
DisjointBoxLayout m_layout
 box layout for this level
DisjointBoxLayout m_layoutCoarsened
 this level's layout coarsened
DisjointBoxLayout m_coarseLayout
 box layout for the coarse level
int m_interpRadius
 number of layers of fine ghost cells to fill by interpolation
ProblemDomain m_coarseDomain
 problem domain at the coarser level
int m_refineCoarse
 refinement ratio between this level and the next coarser
IntVect m_refineVect
 1 in m_fixedDims, m_refineCoarse in other dimensions
int m_numStates
 number of variables
LevelData< FArrayBoxm_coarsenedFineData
 data on ghosted coarsened fine grids at intermediate time in fillInterp
LayoutData< IntVectSetm_coarsenedGhosts
 coarsened ghost cells of fine patches
FourthOrderFineInterp m_spaceInterpolator
 interpolator in space

Private Member Functions

void operator= (const FourthOrderCFInterp &)
 FourthOrderCFInterp (const FourthOrderCFInterp &)

Constructor & Destructor Documentation

FourthOrderCFInterp::FourthOrderCFInterp (  )  [inline]

Default constructor.

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

References m_defined.

FourthOrderCFInterp::FourthOrderCFInterp ( const DisjointBoxLayout a_thisDisjointBoxLayout,
const DisjointBoxLayout a_coarserDisjointBoxLayout,
const int &  a_numStates,
const ProblemDomain a_coarseDomain,
const int &  a_refineCoarse,
const int &  a_interpRadius 
) [inline]

Full constructor.

Parameters:
a_thisDisjointBoxLayout  layout at this level
a_coarserDisjointBoxLayout  layout at coarser level
a_numStates  number of variables
a_coarseDomain  problem domain on the coarser level
a_refineCoarse  refinement ratio between this level and the coarser level
a_interpRadius  number of layers of ghost cells to fill by interpolation

References define().

FourthOrderCFInterp::~FourthOrderCFInterp (  )  [inline]

Destructor.

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

FourthOrderCFInterp::FourthOrderCFInterp ( const FourthOrderCFInterp  )  [private]


Member Function Documentation

void FourthOrderCFInterp::homogeneousCoarseFineInterp ( LevelData< FArrayBox > &  a_fineData,
int  a_srcComp,
int  a_dstComp,
int  a_numComp 
)

fill ghostcells as if all the coarse data were zero (useful for multigrid)

Parameters:
a_fineData  interpolated solution on this level
a_srcComp  solution on coarser level
a_dstComp  starting fine data component
a_numComp  number of data components to interpolate

void FourthOrderCFInterp::define ( const DisjointBoxLayout a_thisDisjointBoxLayout,
const DisjointBoxLayout a_coarserDisjointBoxLayout,
const int &  a_numStates,
const ProblemDomain a_coarseDomain,
const int &  a_refineCoarse,
const int &  a_interpRadius 
)

Actual constructor.

Set up object.

Parameters:
a_thisDisjointBoxLayout  layout at this level
a_coarserDisjointBoxLayout  layout at coarser level
a_numStates  number of variables
a_coarseDomain  problem domain on the coarser level
a_refineCoarse  refinement ratio between this level and the coarser level
a_interpRadius  number of layers of ghost cells to fill by interpolation

Referenced by FourthOrderCFInterp().

void FourthOrderCFInterp::coarseFineInterp ( LevelData< FArrayBox > &  a_fineData,
const LevelData< FArrayBox > &  a_coarseData,
int  a_srcComp,
int  a_dstComp,
int  a_numComp 
)

Interpolate in space only.

At a fixed time, interpolate in space to ghost cells of a_fine from a_coarse.

Parameters:
a_fineData  interpolated solution on this level
a_coarseData  solution on coarser level
a_srcComp  starting coarse data component
a_dstComp  starting fine data component
a_numComp  number of data components to interpolate

void FourthOrderCFInterp::fillInterpSpaceFromCoarsened ( LevelData< FArrayBox > &  a_fineData,
int  a_srcComp,
int  a_dstComp,
int  a_numComp 
) [protected]

Interpolate in space only, from coarsened fine grids.

Parameters:
a_fineData  interpolated solution on this level
a_srcComp  starting coarse data component
a_dstComp  starting fine data component
a_numComp  number of data components to interpolate

void FourthOrderCFInterp::operator= ( const FourthOrderCFInterp  )  [private]


Member Data Documentation

whether define() has been called

Referenced by FourthOrderCFInterp().

box layout for this level

this level's layout coarsened

box layout for the coarse level

number of layers of fine ghost cells to fill by interpolation

problem domain at the coarser level

refinement ratio between this level and the next coarser

1 in m_fixedDims, m_refineCoarse in other dimensions

number of variables

data on ghosted coarsened fine grids at intermediate time in fillInterp

coarsened ghost cells of fine patches

interpolator in space


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

Generated on Fri Apr 5 04:25:05 2019 for Chombo + EB by  doxygen 1.5.5