Chombo + EB
3.0
|
#include <AMRPoissonOp.H>
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< ProblemDomain > | m_domains |
Vector< DisjointBoxLayout > | m_boxes |
Vector< Real > | m_dx |
Vector< int > | m_refRatios |
BCHolder | m_bc |
Real | m_alpha |
Real | m_beta |
Vector< Copier > | m_exchangeCopiers |
Vector< CFRegion > | m_cfregion |
Factory to create AMRPoissonOps
|
inlinevirtual |
References AMRPoissonOp::define().
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.
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 |
||
) |
|
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 |
return a new operator. this is done with a new call. caller is responsible for deletion
Implements AMRLevelOpFactory< LevelData< FArrayBox > >.
|
virtual |
return refinement ratio to next finer level.
Implements AMRLevelOpFactory< LevelData< FArrayBox > >.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |