QuadCFInterp Class Reference

#include <QuadCFInterp.H>

Inheritance diagram for QuadCFInterp:

Inheritance graph
[legend]

List of all members.


Detailed Description

Quadratic coarse-fine interpolation utility.

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< QuadCFStencilm_loQCFS [SpaceDim]
LayoutData< QuadCFStencilm_hiQCFS [SpaceDim]
BoxLayoutData< FArrayBoxm_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


Constructor & Destructor Documentation

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]


Member Function Documentation

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]


Member Data Documentation

int QuadCFInterp::m_level [protected]

int QuadCFInterp::m_nComp [protected]

int QuadCFInterp::m_refRatio [protected]

bool QuadCFInterp::m_isDefined [protected]

has full define function been called?

Reimplemented in EBQuadCFInterp.


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

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