Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

AMRPoissonOpFactory Class Reference

#include <AMRPoissonOp.H>

Inheritance diagram for AMRPoissonOpFactory:

Inheritance graph
[legend]
Collaboration diagram for AMRPoissonOpFactory:

Collaboration graph
[legend]
List of all members.

Detailed Description

Factory to create AMRPoissonOps


Public Member Functions

virtual ~AMRPoissonOpFactory ()
void define (const ProblemDomain &a_coarseDomain, const Vector< DisjointBoxLayout > &a_grids, const Vector< int > &a_refRatios, const Real &a_coarsedx, BCFunction a_bc, Real a_alpha=0., Real a_beta=1.)
void define (const ProblemDomain &a_domain, const DisjointBoxLayout &a_grid, const Real &a_dx, BCFunction a_bc, int maxDepth=-1, Real a_alpha=0., Real a_beta=1.)
virtual AMRPoissonOpMGnewOp (const ProblemDomain &a_FineindexSpace, int depth, bool homoOnly=true)
virtual AMRPoissonOpAMRnewOp (const ProblemDomain &a_indexSpace)
virtual int refToFiner (const ProblemDomain &) const

Private Attributes

Vector< ProblemDomainm_domains
Vector< DisjointBoxLayoutm_boxes
Vector< Copierm_exchangeCopiers
Vector< CFRegionm_cfivs
Vector< Realm_dx
Vector< int > m_refRatios
BCFunction m_bc
Real m_alpha
Real m_beta


Constructor & Destructor Documentation

virtual AMRPoissonOpFactory::~AMRPoissonOpFactory  )  [inline, virtual]
 


Member Function Documentation

void AMRPoissonOpFactory::define const ProblemDomain a_coarseDomain,
const Vector< DisjointBoxLayout > &  a_grids,
const Vector< int > &  a_refRatios,
const Real a_coarsedx,
BCFunction  a_bc,
Real  a_alpha = 0.,
Real  a_beta = 1.
 

a_coarseDomain is the domain at the coarsest level. a_grids is the AMR hierarchy. a_refRatios are the refinement ratios between levels. The ratio lives with the coarser level so a_refRatios[ilev] is the ratio between ilev and ilev+1 a_coarseDx is the grid spacing at the coarsest level. BCFunction holds the boundary conditions. a_alpha is the identity coefficient a_beta is the laplacian coefficient.

void AMRPoissonOpFactory::define const ProblemDomain a_domain,
const DisjointBoxLayout a_grid,
const Real a_dx,
BCFunction  a_bc,
int  maxDepth = -1,
Real  a_alpha = 0.,
Real  a_beta = 1.
 

virtual AMRPoissonOp* AMRPoissonOpFactory::MGnewOp const ProblemDomain a_FineindexSpace,
int  depth,
bool  homoOnly = true
[virtual]
 

Create an operator at an index space = coarsen(a_fineIndexSpace, 2^a_depth) Return NULL if no such Multigrid level can be created at this a_depth. If a_homoOnly = true, then only homogeneous boundary conditions will be needed.

Implements MGLevelOpFactory< LevelData< FArrayBox > >.

virtual AMRPoissonOp* AMRPoissonOpFactory::AMRnewOp const ProblemDomain a_indexSpace  )  [virtual]
 

return a new operator. this is done with a new call. caller is responsible for deletion

Implements AMRLevelOpFactory< LevelData< FArrayBox > >.

virtual int AMRPoissonOpFactory::refToFiner const ProblemDomain  )  const [virtual]
 

return refinement ratio to next finer level.

Implements AMRLevelOpFactory< LevelData< FArrayBox > >.


Member Data Documentation

Vector<ProblemDomain> AMRPoissonOpFactory::m_domains [private]
 

Vector<DisjointBoxLayout> AMRPoissonOpFactory::m_boxes [private]
 

Vector<Copier> AMRPoissonOpFactory::m_exchangeCopiers [private]
 

Vector<CFRegion> AMRPoissonOpFactory::m_cfivs [private]
 

Vector<Real> AMRPoissonOpFactory::m_dx [private]
 

Vector<int> AMRPoissonOpFactory::m_refRatios [private]
 

BCFunction AMRPoissonOpFactory::m_bc [private]
 

Real AMRPoissonOpFactory::m_alpha [private]
 

Real AMRPoissonOpFactory::m_beta [private]
 


The documentation for this class was generated from the following file:
Generated on Fri May 4 13:31:31 2007 for Chombo by doxygen 1.3.6