#include <QuadCFInterp.H>
Class to fill ghost cells on coarse-fine interface using quadratic interpolation
Public Member Functions | |
QuadCFInterp (const DisjointBoxLayout &a_fineBoxes, const DisjointBoxLayout *a_coarBoxes, Real a_dxFine, int a_refRatio, int a_nComp, const Box &a_domf) | |
constructors, destructors, defines | |
QuadCFInterp (const DisjointBoxLayout &a_fineBoxes, const DisjointBoxLayout *a_coarBoxes, Real a_dxFine, int a_refRatio, int a_nComp, const ProblemDomain &a_domf) | |
void | define (const DisjointBoxLayout &a_fineBoxes, const DisjointBoxLayout *a_coarBoxes, Real a_dxFine, int a_refRatio, int a_nComp, const ProblemDomain &a_domf) |
QuadCFInterp () | |
virtual | ~QuadCFInterp () |
void | clear () |
void | coarseFineInterp (LevelData< FArrayBox > &a_phif, const LevelData< FArrayBox > &a_phic) |
bool | isDefined () const |
Static Public Member Functions | |
static void | homogeneousCFInterp (LevelData< FArrayBox > &a_phif, LevelData< FArrayBox > &a_tanGrad, LayoutData< CFIVS > a_loCFIVS[SpaceDim], LayoutData< CFIVS > a_hiCFIVS[SpaceDim], Real a_dxLevel, Real a_dxCrse, int a_ncomp, LayoutData< TensorFineStencilSet > a_loTanStencilSets[SpaceDim], LayoutData< TensorFineStencilSet > a_hiTanStencilSets[SpaceDim]) |
static void | homogeneousCFInterpTanGrad (LevelData< FArrayBox > &a_tanGrad, const LevelData< FArrayBox > &a_phi, const DataIndex &a_DatInd, int a_idir, Side::LoHiSide a_hiorlo, Real a_dxLevel, Real a_dxCrse, int a_ncomp, LayoutData< TensorFineStencilSet > a_loTanStencilSets[SpaceDim], LayoutData< TensorFineStencilSet > a_hiTanStencilSets[SpaceDim]) |
static void | homogeneousCFInterpPhi (LevelData< FArrayBox > &a_phif, const DataIndex &a_datInd, int a_idir, Side::LoHiSide a_hiorlo, LayoutData< CFIVS > a_loCFIVS[SpaceDim], LayoutData< CFIVS > a_hiCFIVS[SpaceDim], Real a_dxLevel, Real a_dxCrse, int a_ncomp) |
static void | interpPhiOnIVS (LevelData< FArrayBox > &a_phif, const FArrayBox &a_phistar, const DataIndex &a_datInd, const int a_idir, const Side::LoHiSide a_hiorlo, const IntVectSet &a_interpIVS, Real a_dxLevel, Real a_dxCrse, int a_ncomp) |
Static Public Attributes | |
static bool | newCFInterMode |
Protected Member Functions | |
void | coarseFineInterp (BaseFab< Real > &a_phif, const BaseFab< Real > &a_phic, const QuadCFStencil &a_qcfs, const Side::LoHiSide a_hiorlo, const int a_idir, const Interval &a_variables) const |
void | getPhiStar (BaseFab< Real > &a_phistar, const BaseFab< Real > &a_phic, const QuadCFStencil &a_qcfs, const Side::LoHiSide a_hiorlo, const int a_idir, const Interval &a_variables) const |
void | interpOnIVS (BaseFab< Real > &a_phif, const BaseFab< Real > &a_phiStar, const QuadCFStencil &a_qcfs, const Side::LoHiSide a_hiorlo, const int a_idir, const Interval &a_variables) const |
Protected Attributes | |
BoxLayout | m_coarBoxes |
int | m_level |
int | m_nComp |
int | m_refRatio |
Real | m_dxFine |
LayoutData< QuadCFStencil > | m_loQCFS [SpaceDim] |
LayoutData< QuadCFStencil > | m_hiQCFS [SpaceDim] |
BoxLayoutData< FArrayBox > | m_coarBuffer |
Copier | m_copier |
DisjointBoxLayout | m_inputFineLayout |
DisjointBoxLayout | m_inputCoarLayout |
bool | m_isDefined |
has full define function been called? | |
bool | m_fineCoversCoarse |
ProblemDomain | m_domainFine |
QuadCFInterp::QuadCFInterp | ( | const DisjointBoxLayout & | a_fineBoxes, | |
const DisjointBoxLayout * | a_coarBoxes, | |||
Real | a_dxFine, | |||
int | a_refRatio, | |||
int | a_nComp, | |||
const Box & | a_domf | |||
) |
constructors, destructors, defines
Full Constructor. makes all coarse-fine information and sets internal variables calls full define
QuadCFInterp::QuadCFInterp | ( | const DisjointBoxLayout & | a_fineBoxes, | |
const DisjointBoxLayout * | a_coarBoxes, | |||
Real | a_dxFine, | |||
int | a_refRatio, | |||
int | a_nComp, | |||
const ProblemDomain & | a_domf | |||
) |
Full Constructor. makes all coarse-fine information and sets internal variables calls full define
QuadCFInterp::QuadCFInterp | ( | ) |
Default constructor leaves QCFI undefined.
virtual QuadCFInterp::~QuadCFInterp | ( | ) | [virtual] |
static void QuadCFInterp::homogeneousCFInterp | ( | LevelData< FArrayBox > & | a_phif, | |
LevelData< FArrayBox > & | a_tanGrad, | |||
LayoutData< CFIVS > | a_loCFIVS[SpaceDim], | |||
LayoutData< CFIVS > | a_hiCFIVS[SpaceDim], | |||
Real | a_dxLevel, | |||
Real | a_dxCrse, | |||
int | a_ncomp, | |||
LayoutData< TensorFineStencilSet > | a_loTanStencilSets[SpaceDim], | |||
LayoutData< TensorFineStencilSet > | a_hiTanStencilSets[SpaceDim] | |||
) | [static] |
static void QuadCFInterp::homogeneousCFInterpTanGrad | ( | LevelData< FArrayBox > & | a_tanGrad, | |
const LevelData< FArrayBox > & | a_phi, | |||
const DataIndex & | a_DatInd, | |||
int | a_idir, | |||
Side::LoHiSide | a_hiorlo, | |||
Real | a_dxLevel, | |||
Real | a_dxCrse, | |||
int | a_ncomp, | |||
LayoutData< TensorFineStencilSet > | a_loTanStencilSets[SpaceDim], | |||
LayoutData< TensorFineStencilSet > | a_hiTanStencilSets[SpaceDim] | |||
) | [static] |
static void QuadCFInterp::homogeneousCFInterpPhi | ( | LevelData< FArrayBox > & | a_phif, | |
const DataIndex & | a_datInd, | |||
int | a_idir, | |||
Side::LoHiSide | a_hiorlo, | |||
LayoutData< CFIVS > | a_loCFIVS[SpaceDim], | |||
LayoutData< CFIVS > | a_hiCFIVS[SpaceDim], | |||
Real | a_dxLevel, | |||
Real | a_dxCrse, | |||
int | a_ncomp | |||
) | [static] |
static void QuadCFInterp::interpPhiOnIVS | ( | LevelData< FArrayBox > & | a_phif, | |
const FArrayBox & | a_phistar, | |||
const DataIndex & | a_datInd, | |||
const int | a_idir, | |||
const Side::LoHiSide | a_hiorlo, | |||
const IntVectSet & | a_interpIVS, | |||
Real | a_dxLevel, | |||
Real | a_dxCrse, | |||
int | a_ncomp | |||
) | [static] |
void QuadCFInterp::define | ( | const DisjointBoxLayout & | a_fineBoxes, | |
const DisjointBoxLayout * | a_coarBoxes, | |||
Real | a_dxFine, | |||
int | a_refRatio, | |||
int | a_nComp, | |||
const ProblemDomain & | a_domf | |||
) |
Full define function. makes all coarse-fine information and sets internal variables
void QuadCFInterp::clear | ( | ) |
return QCFI to undefined state
void QuadCFInterp::coarseFineInterp | ( | LevelData< FArrayBox > & | a_phif, | |
const LevelData< FArrayBox > & | a_phic | |||
) |
Coarse / Fine interpolation operator.
bool QuadCFInterp::isDefined | ( | ) | const |
has full define function been called? return true if so
Reimplemented in EBQuadCFInterp.
void QuadCFInterp::coarseFineInterp | ( | BaseFab< Real > & | a_phif, | |
const BaseFab< Real > & | a_phic, | |||
const QuadCFStencil & | a_qcfs, | |||
const Side::LoHiSide | a_hiorlo, | |||
const int | a_idir, | |||
const Interval & | a_variables | |||
) | const [protected] |
void QuadCFInterp::getPhiStar | ( | BaseFab< Real > & | a_phistar, | |
const BaseFab< Real > & | a_phic, | |||
const QuadCFStencil & | a_qcfs, | |||
const Side::LoHiSide | a_hiorlo, | |||
const int | a_idir, | |||
const Interval & | a_variables | |||
) | const [protected] |
void QuadCFInterp::interpOnIVS | ( | BaseFab< Real > & | a_phif, | |
const BaseFab< Real > & | a_phiStar, | |||
const QuadCFStencil & | a_qcfs, | |||
const Side::LoHiSide | a_hiorlo, | |||
const int | a_idir, | |||
const Interval & | a_variables | |||
) | const [protected] |
bool QuadCFInterp::newCFInterMode [static] |
BoxLayout QuadCFInterp::m_coarBoxes [protected] |
int QuadCFInterp::m_level [protected] |
int QuadCFInterp::m_nComp [protected] |
int QuadCFInterp::m_refRatio [protected] |
Real QuadCFInterp::m_dxFine [protected] |
LayoutData<QuadCFStencil> QuadCFInterp::m_loQCFS[SpaceDim] [protected] |
LayoutData<QuadCFStencil> QuadCFInterp::m_hiQCFS[SpaceDim] [protected] |
BoxLayoutData<FArrayBox> QuadCFInterp::m_coarBuffer [protected] |
Copier QuadCFInterp::m_copier [protected] |
DisjointBoxLayout QuadCFInterp::m_inputFineLayout [protected] |
DisjointBoxLayout QuadCFInterp::m_inputCoarLayout [protected] |
bool QuadCFInterp::m_isDefined [protected] |
has full define function been called?
bool QuadCFInterp::m_fineCoversCoarse [protected] |
ProblemDomain QuadCFInterp::m_domainFine [protected] |
Reimplemented in EBQuadCFInterp.