#include <EBPoissonOpFactory.H>
Public Member Functions | |
virtual | ~EBPoissonOpFactory () |
EBPoissonOpFactory (const EBLevelGrid &a_eblgs, const RealVect &a_dx, const RealVect &a_origin, const int &a_orderEB, const int &a_numPreCondIters, const int &a_relaxType, RefCountedPtr< BaseDomainBCFactory > a_domainBCFactory, RefCountedPtr< BaseEBBCFactory > a_ebBcFactory, const Real &a_alpha, const Real &a_beta, const IntVect &a_ghostCellsPhi, const IntVect &a_ghostCellsRhs) | |
virtual EBPoissonOp * | MGnewOp (const ProblemDomain &a_FineindexSpace, int a_depth, bool a_homoOnly=true) |
EBPoissonOp * | createOperator (const EBLevelGrid &a_eblgMGLevel, const EBLevelGrid &a_eblgCoarMG, const bool &a_hasMGObjects, const RealVect &a_dxMGLevel) |
Protected Attributes | |
int | m_orderEB |
int | m_numPreCondIters |
int | m_relaxType |
EBLevelGrid | m_eblg |
Vector< EBLevelGrid > | m_eblgVecMG |
RealVect | m_dx |
RealVect | m_origin |
Real | m_alpha |
Real | m_beta |
const IntVect | m_ghostCellsPhi |
const IntVect | m_ghostCellsRHS |
RefCountedPtr < BaseDomainBCFactory > | m_domainBCFactory |
RefCountedPtr< BaseEBBCFactory > | m_ebBCFactory |
Private Member Functions | |
EBPoissonOpFactory () | |
weak construction bad | |
EBPoissonOpFactory (const EBPoissonOpFactory &a_opin) | |
void | operator= (const EBPoissonOpFactory &a_opin) |
virtual EBPoissonOpFactory::~EBPoissonOpFactory | ( | ) | [virtual] |
EBPoissonOpFactory::EBPoissonOpFactory | ( | const EBLevelGrid & | a_eblgs, | |
const RealVect & | a_dx, | |||
const RealVect & | a_origin, | |||
const int & | a_orderEB, | |||
const int & | a_numPreCondIters, | |||
const int & | a_relaxType, | |||
RefCountedPtr< BaseDomainBCFactory > | a_domainBCFactory, | |||
RefCountedPtr< BaseEBBCFactory > | a_ebBcFactory, | |||
const Real & | a_alpha, | |||
const Real & | a_beta, | |||
const IntVect & | a_ghostCellsPhi, | |||
const IntVect & | a_ghostCellsRhs | |||
) |
a_eblgs : layouts at each AMR level \ a_domainFactory : domain boundary conditions \ a_ebBCFactory: eb boundary conditions \ a_dxCoarse: grid spacing at coarsest level \ a_origin: offset to lowest corner of the domain \ a_refRatio: refinement ratios. refRatio[i] is between levels i and i+1 \ a_preCondIters: number of iterations to do for pre-conditioning \ a_relaxType: 0 means point Jacobi, 1 is Gauss-Seidel, 2 is line solver. \ a_orderEB: 0 to not do flux interpolation at cut faces. \ a_alpha: coefficent of identity \ a_beta: coefficient of laplacian.\ a_ghostCellsPhi: Number of ghost cells in phi, correction (typically one)\ a_ghostCellsRhs: Number of ghost cells in RHS, residual, lphi (typically zero)\ Ghost cell arguments are there for caching reasons. Once you set them, an error is thrown if you send in data that does not match.
EBPoissonOpFactory::EBPoissonOpFactory | ( | ) | [inline, private] |
EBPoissonOpFactory::EBPoissonOpFactory | ( | const EBPoissonOpFactory & | a_opin | ) | [inline, private] |
References MayDay::Error().
virtual EBPoissonOp* EBPoissonOpFactory::MGnewOp | ( | const ProblemDomain & | a_FineindexSpace, | |
int | a_depth, | |||
bool | a_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< EBCellFAB > >.
EBPoissonOp* EBPoissonOpFactory::createOperator | ( | const EBLevelGrid & | a_eblgMGLevel, | |
const EBLevelGrid & | a_eblgCoarMG, | |||
const bool & | a_hasMGObjects, | |||
const RealVect & | a_dxMGLevel | |||
) |
void EBPoissonOpFactory::operator= | ( | const EBPoissonOpFactory & | a_opin | ) | [inline, private] |
References MayDay::Error().
int EBPoissonOpFactory::m_orderEB [protected] |
int EBPoissonOpFactory::m_numPreCondIters [protected] |
int EBPoissonOpFactory::m_relaxType [protected] |
EBLevelGrid EBPoissonOpFactory::m_eblg [protected] |
Vector<EBLevelGrid> EBPoissonOpFactory::m_eblgVecMG [protected] |
RealVect EBPoissonOpFactory::m_dx [protected] |
RealVect EBPoissonOpFactory::m_origin [protected] |
Real EBPoissonOpFactory::m_alpha [protected] |
Real EBPoissonOpFactory::m_beta [protected] |
const IntVect EBPoissonOpFactory::m_ghostCellsPhi [protected] |
const IntVect EBPoissonOpFactory::m_ghostCellsRHS [protected] |