Chombo + EB  3.2
Public Member Functions | Private Attributes | List of all members
AMRPoissonOpFactory Class Reference

#include <AMRPoissonOp.H>

Inheritance diagram for AMRPoissonOpFactory:
Inheritance graph

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, BCHolder a_bc, Real a_alpha=0.0, Real a_beta=1.0)
void define (const ProblemDomain &a_domain, const DisjointBoxLayout &a_grid, const Real &a_dx, BCHolder a_bc, int a_maxDepth=-1, Real a_alpha=0.0, Real a_beta=1.0)
virtual MGLevelOp< LevelData< FArrayBox > > * MGnewOp (const ProblemDomain &a_FineindexSpace, int a_depth, bool a_homoOnly=true)
virtual AMRLevelOp< LevelData< FArrayBox > > * AMRnewOp (const ProblemDomain &a_indexSpace)
virtual int refToFiner (const ProblemDomain &a_domain) const
- Public Member Functions inherited from AMRLevelOpFactory< LevelData< FArrayBox > >
virtual ~AMRLevelOpFactory ()
- Public Member Functions inherited from MGLevelOpFactory< LevelData< FArrayBox > >
 MGLevelOpFactory ()
 Base class constructor. More...
virtual ~MGLevelOpFactory ()
 Destructor. More...

Private Attributes

Vector< ProblemDomainm_domains
Vector< DisjointBoxLayoutm_boxes
Vector< Realm_dx
Vector< int > m_refRatios
BCHolder m_bc
Real m_alpha
Real m_beta
Vector< Copierm_exchangeCopiers
Vector< CFRegionm_cfregion

Detailed Description

Factory to create AMRPoissonOps

Constructor & Destructor Documentation

◆ ~AMRPoissonOpFactory()

virtual AMRPoissonOpFactory::~AMRPoissonOpFactory ( )

Member Function Documentation

◆ define() [1/2]

void AMRPoissonOpFactory::define ( const ProblemDomain a_coarseDomain,
const Vector< DisjointBoxLayout > &  a_grids,
const Vector< int > &  a_refRatios,
const Real a_coarsedx,
BCHolder  a_bc,
Real  a_alpha = 0.0,
Real  a_beta = 1.0 

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. a_bc holds the boundary conditions. a_alpha is the identity coefficient a_beta is the laplacian coefficient.

◆ define() [2/2]

void AMRPoissonOpFactory::define ( const ProblemDomain a_domain,
const DisjointBoxLayout a_grid,
const Real a_dx,
BCHolder  a_bc,
int  a_maxDepth = -1,
Real  a_alpha = 0.0,
Real  a_beta = 1.0 

◆ MGnewOp()

virtual MGLevelOp<LevelData<FArrayBox> >* AMRPoissonOpFactory::MGnewOp ( const ProblemDomain a_FineindexSpace,
int  a_depth,
bool  a_homoOnly = true 

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 > >.

◆ AMRnewOp()

virtual AMRLevelOp<LevelData<FArrayBox> >* AMRPoissonOpFactory::AMRnewOp ( const ProblemDomain a_indexSpace)

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

Implements AMRLevelOpFactory< LevelData< FArrayBox > >.

◆ refToFiner()

virtual int AMRPoissonOpFactory::refToFiner ( const ProblemDomain a_indexSpace) const

return refinement ratio to next finer level.

Implements AMRLevelOpFactory< LevelData< FArrayBox > >.

Member Data Documentation

◆ m_domains

Vector<ProblemDomain> AMRPoissonOpFactory::m_domains

◆ m_boxes

Vector<DisjointBoxLayout> AMRPoissonOpFactory::m_boxes

◆ m_dx

Vector<Real> AMRPoissonOpFactory::m_dx

◆ m_refRatios

Vector<int> AMRPoissonOpFactory::m_refRatios

◆ m_bc

BCHolder AMRPoissonOpFactory::m_bc

◆ m_alpha

Real AMRPoissonOpFactory::m_alpha

◆ m_beta

Real AMRPoissonOpFactory::m_beta

◆ m_exchangeCopiers

Vector<Copier> AMRPoissonOpFactory::m_exchangeCopiers

◆ m_cfregion

Vector<CFRegion> AMRPoissonOpFactory::m_cfregion

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