CFStencil Class Reference

#include <CFStencil.H>

List of all members.


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.

Public Member Functions

bool isDefined () const
 { Access functions}
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
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


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]

bool CFStencil::m_isDefined [protected]

bool CFStencil::m_isPacked [protected]

Referenced by isPacked().

Referenced by packedBox().


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

Generated on Mon Nov 20 03:42:55 2017 for Chombo + EB by  doxygen 1.5.5