Chombo + EB  3.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
CFStencil Class Reference

Class to encapsulate coarse-fine information for AMR operations. More...

#include <CFStencil.H>

Public Member Functions

bool isDefined () const
 { Access functions} More...
 
bool isEmpty () const
 
bool isPacked () const
 
const BoxpackedBox () const
 
const IntVectSetgetFineIVS () const
 
const IntVectSetgetCoarIVS () const
 
CFStenciloperator= (const CFStencil &cfs_in)
 
 CFStencil (const CFStencil &cfs_in)
 
 CFStencil (const Box &a_b, int a_nComp)
 
void define (const Box &a_b, int a_nComp)
 
 CFStencil ()
 
 ~CFStencil ()
 
 CFStencil (const Box &FineDomain, const Box &grid, const DisjointBoxLayout &Levboxes, const DisjointBoxLayout &LevCBoxes, int RefRatio, int Direction, Side::LoHiSide hiorlo)
 
 CFStencil (const ProblemDomain &FineDomain, const Box &grid, const DisjointBoxLayout &Levboxes, const DisjointBoxLayout &LevCBoxes, int RefRatio, int Direction, Side::LoHiSide hiorlo)
 
void define (const Box &FineDomain, const Box &grid, const DisjointBoxLayout &fine_boxes, const DisjointBoxLayout &coar_boxes, int Refratio, int Direction, Side::LoHiSide hiorlo)
 
void define (const ProblemDomain &FineDomain, const Box &grid, const DisjointBoxLayout &fine_boxes, const DisjointBoxLayout &coar_boxes, int Refratio, int Direction, Side::LoHiSide hiorlo)
 
void define (const ProblemDomain &a_fineDomain, const Box &a_grid, const Vector< Box > &a_periodicVector, int a_refRatio, int a_direction, Side::LoHiSide a_hiorlo)
 faster define function that uses a sorted periodic vector More...
 
void clear ()
 

Static Public Member Functions

static void buildPeriodicVector (Vector< Box > &a_periodicVector, const ProblemDomain &a_fineDomain, const DisjointBoxLayout &a_fineBoxes)
 

Protected Member Functions

void setDefaultValues ()
 

Protected Attributes

int m_direction
 
Side::LoHiSide m_hiorlo
 
DataIndex m_dataIndex
 
IntVectSet m_fineIVS
 
IntVectSet m_coarIVS
 
bool m_isDefined
 
bool m_isPacked
 
Box m_packedBox
 

Detailed Description

Class to encapsulate coarse-fine information for AMR operations.

CFStencil is a wrapper around a bunch of things that allow one to do coarse-fine interpolation. This class should be considered internal to QuadCFInterp and should not be considered part of the Chombo API.

Constructor & Destructor Documentation

CFStencil::CFStencil ( const CFStencil cfs_in)
CFStencil::CFStencil ( const Box a_b,
int  a_nComp 
)
CFStencil::CFStencil ( )
CFStencil::~CFStencil ( )
CFStencil::CFStencil ( const Box FineDomain,
const Box grid,
const DisjointBoxLayout Levboxes,
const DisjointBoxLayout LevCBoxes,
int  RefRatio,
int  Direction,
Side::LoHiSide  hiorlo 
)
CFStencil::CFStencil ( const ProblemDomain FineDomain,
const Box grid,
const DisjointBoxLayout Levboxes,
const DisjointBoxLayout LevCBoxes,
int  RefRatio,
int  Direction,
Side::LoHiSide  hiorlo 
)

Member Function Documentation

void CFStencil::setDefaultValues ( )
protected
bool CFStencil::isDefined ( ) const

{ Access functions}

returns true if CFStencil is defined

Referenced by QuadCFStencil::getCoarIVS(), QuadCFStencil::getFineIVS(), and QuadCFStencil::isEmpty().

bool CFStencil::isEmpty ( ) const

are there any interpolation points? \ returns false if so.

Referenced by QuadCFStencil::isEmpty().

bool CFStencil::isPacked ( ) const
inline

References m_isPacked.

Referenced by QuadCFStencil::finePacked().

const Box& CFStencil::packedBox ( ) const
inline

References m_packedBox.

Referenced by QuadCFStencil::packedBox().

const IntVectSet& CFStencil::getFineIVS ( ) const

get fine intvects which need to be interpolated \ This will be empty if isEmpty() returns true

Referenced by QuadCFStencil::getFineIVS().

const IntVectSet& CFStencil::getCoarIVS ( ) const

get coarse intvects that underly fiinterpivs. This will be empty if isEmpty() returns true this is the same as getCoarInterpIVS

Referenced by QuadCFStencil::getCoarIVS().

CFStencil& CFStencil::operator= ( const CFStencil cfs_in)
void CFStencil::define ( const Box a_b,
int  a_nComp 
)
void CFStencil::define ( const Box FineDomain,
const Box grid,
const DisjointBoxLayout fine_boxes,
const DisjointBoxLayout coar_boxes,
int  Refratio,
int  Direction,
Side::LoHiSide  hiorlo 
)
void CFStencil::define ( const ProblemDomain FineDomain,
const Box grid,
const DisjointBoxLayout fine_boxes,
const DisjointBoxLayout coar_boxes,
int  Refratio,
int  Direction,
Side::LoHiSide  hiorlo 
)
void CFStencil::define ( const ProblemDomain a_fineDomain,
const Box a_grid,
const Vector< Box > &  a_periodicVector,
int  a_refRatio,
int  a_direction,
Side::LoHiSide  a_hiorlo 
)

faster define function that uses a sorted periodic vector

user calls the helper function "buildPeriodicVector", then uses that returned Vector<Box> in the subsequent calls to this define.

void CFStencil::clear ( )
static void CFStencil::buildPeriodicVector ( Vector< Box > &  a_periodicVector,
const ProblemDomain a_fineDomain,
const DisjointBoxLayout a_fineBoxes 
)
static

Member Data Documentation

int CFStencil::m_direction
protected
Side::LoHiSide CFStencil::m_hiorlo
protected
DataIndex CFStencil::m_dataIndex
protected
IntVectSet CFStencil::m_fineIVS
protected
IntVectSet CFStencil::m_coarIVS
protected
bool CFStencil::m_isDefined
protected
bool CFStencil::m_isPacked
protected

Referenced by isPacked().

Box CFStencil::m_packedBox
protected

Referenced by packedBox().


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