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

#include <slowEBCOFactory.H>

Inheritance diagram for slowEBCOFactory:
Inheritance graph
[legend]

Public Member Functions

virtual ~slowEBCOFactory ()
 
 slowEBCOFactory (const Vector< EBLevelGrid > &a_eblgs, const Vector< RefCountedPtr< EBQuadCFInterp > > &a_quadCFI, const Real &a_alpha, const Real &a_beta, const Vector< RefCountedPtr< LevelData< EBCellFAB > > > &a_acoef, const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &a_bcoef, const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &a_bcoefIrreg, const Real &a_dxCoarse, const Vector< int > &a_refRatio, const RefCountedPtr< BaseDomainBCFactory > &a_domainBCFactory, const RefCountedPtr< BaseEBBCFactory > &a_ebBcFactory, const IntVect &a_ghostCellsPhi, const IntVect &a_ghostCellsRhs, const int &a_relaxType, int a_numLevels=-1)
 
virtual slowEBCOMGnewOp (const ProblemDomain &a_FineindexSpace, int a_depth, bool a_homoOnly=true)
 
slowEBCOcreateOperator (const EBLevelGrid &a_eblgMGLevel, const EBLevelGrid &a_eblgCoarMG, const bool &a_hasMGObjects, const RealVect &a_dxMGLevel, const RealVect &a_dxCoar, const int &a_whichLevel)
 
virtual void reclaim (MGLevelOp< LevelData< EBCellFAB > > *a_reclaim)
 
virtual slowEBCOAMRnewOp (const ProblemDomain &a_FineindexSpace)
 
virtual void AMRreclaim (slowEBCO *a_reclaim)
 
virtual int refToFiner (const ProblemDomain &a_domain) const
 
void resetCoefficients (const Real &a_alpha, const Real &a_beta, const Vector< RefCountedPtr< LevelData< EBCellFAB > > > &a_acoef, const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &a_bcoef, const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &a_bcoefIrreg)
 
- Public Member Functions inherited from AMRLevelOpFactory< LevelData< EBCellFAB > >
virtual ~AMRLevelOpFactory ()
 
- Public Member Functions inherited from MGLevelOpFactory< LevelData< EBCellFAB > >
 MGLevelOpFactory ()
 Base class constructor. More...
 
virtual ~MGLevelOpFactory ()
 Destructor. More...
 

Protected Attributes

Vector< Vector< EBLevelGrid > > m_eblgsMG
 
Vector< Vector< RefCountedPtr
< LevelData< EBCellFAB > > > > 
m_acoefMG
 
Vector< Vector< RefCountedPtr
< LevelData< EBFluxFAB > > > > 
m_bcoefMG
 
Vector< Vector< RefCountedPtr
< LevelData< BaseIVFAB< Real > > > > > 
m_bcoefIrregMG
 
int m_relaxType
 
Vector< EBLevelGridm_eblgs
 
Vector< RefCountedPtr
< EBQuadCFInterp > > 
m_quadCFI
 
Real m_alpha
 
Real m_beta
 
Vector< RefCountedPtr
< LevelData< EBCellFAB > > > 
m_acoef
 
Vector< RefCountedPtr
< LevelData< EBFluxFAB > > > 
m_bcoef
 
Vector< RefCountedPtr
< LevelData< BaseIVFAB< Real > > > > 
m_bcoefIrreg
 
Real m_dxCoarse
 
Vector< int > m_refRatio
 
RefCountedPtr
< BaseDomainBCFactory
m_domainBCFactory
 
RefCountedPtr< BaseEBBCFactorym_ebBCFactory
 
IntVect m_ghostCellsPhi
 
IntVect m_ghostCellsRhs
 
int m_numLevels
 
std::vector< bool > m_hasMGObjects
 
Vector< Realm_dx
 

Private Member Functions

 slowEBCOFactory ()
 weak construction bad More...
 
 slowEBCOFactory (const slowEBCOFactory &a_opin)
 
void operator= (const slowEBCOFactory &a_opin)
 

Detailed Description

Factory class to generate slowEBCOs. This follows the AMRLevelOpFactory interface.

Constructor & Destructor Documentation

virtual slowEBCOFactory::~slowEBCOFactory ( )
virtual
slowEBCOFactory::slowEBCOFactory ( const Vector< EBLevelGrid > &  a_eblgs,
const Vector< RefCountedPtr< EBQuadCFInterp > > &  a_quadCFI,
const Real a_alpha,
const Real a_beta,
const Vector< RefCountedPtr< LevelData< EBCellFAB > > > &  a_acoef,
const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &  a_bcoef,
const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &  a_bcoefIrreg,
const Real a_dxCoarse,
const Vector< int > &  a_refRatio,
const RefCountedPtr< BaseDomainBCFactory > &  a_domainBCFactory,
const RefCountedPtr< BaseEBBCFactory > &  a_ebBcFactory,
const IntVect a_ghostCellsPhi,
const IntVect a_ghostCellsRhs,
const int &  a_relaxType,
int  a_numLevels = -1 
)
slowEBCOFactory::slowEBCOFactory ( )
inlineprivate

weak construction bad

References MayDay::Error().

slowEBCOFactory::slowEBCOFactory ( const slowEBCOFactory a_opin)
inlineprivate

References MayDay::Error().

Member Function Documentation

virtual slowEBCO* slowEBCOFactory::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 > >.

slowEBCO* slowEBCOFactory::createOperator ( const EBLevelGrid a_eblgMGLevel,
const EBLevelGrid a_eblgCoarMG,
const bool &  a_hasMGObjects,
const RealVect a_dxMGLevel,
const RealVect a_dxCoar,
const int &  a_whichLevel 
)
virtual void slowEBCOFactory::reclaim ( MGLevelOp< LevelData< EBCellFAB > > *  a_reclaim)
virtual
virtual slowEBCO* slowEBCOFactory::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< EBCellFAB > >.

virtual void slowEBCOFactory::AMRreclaim ( slowEBCO a_reclaim)
virtual
virtual int slowEBCOFactory::refToFiner ( const ProblemDomain a_domain) const
virtual

Refinement ratio between this level and coarser level. Returns 1 when there are no coarser AMRLevelOp objects

Implements AMRLevelOpFactory< LevelData< EBCellFAB > >.

void slowEBCOFactory::resetCoefficients ( const Real a_alpha,
const Real a_beta,
const Vector< RefCountedPtr< LevelData< EBCellFAB > > > &  a_acoef,
const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &  a_bcoef,
const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &  a_bcoefIrreg 
)
inline

References m_acoef, m_alpha, m_bcoef, m_bcoefIrreg, and m_beta.

void slowEBCOFactory::operator= ( const slowEBCOFactory a_opin)
inlineprivate

References MayDay::Error().

Member Data Documentation

Vector< Vector<EBLevelGrid> > slowEBCOFactory::m_eblgsMG
protected
Vector< Vector< RefCountedPtr<LevelData<EBCellFAB> > > > slowEBCOFactory::m_acoefMG
protected
Vector< Vector< RefCountedPtr<LevelData<EBFluxFAB> > > > slowEBCOFactory::m_bcoefMG
protected
Vector< Vector< RefCountedPtr<LevelData<BaseIVFAB<Real> > > > > slowEBCOFactory::m_bcoefIrregMG
protected
int slowEBCOFactory::m_relaxType
protected
Vector<EBLevelGrid> slowEBCOFactory::m_eblgs
protected
Vector<RefCountedPtr<EBQuadCFInterp> > slowEBCOFactory::m_quadCFI
protected
Real slowEBCOFactory::m_alpha
protected

Referenced by resetCoefficients().

Real slowEBCOFactory::m_beta
protected

Referenced by resetCoefficients().

Vector<RefCountedPtr<LevelData<EBCellFAB> > > slowEBCOFactory::m_acoef
protected

Referenced by resetCoefficients().

Vector<RefCountedPtr<LevelData<EBFluxFAB> > > slowEBCOFactory::m_bcoef
protected

Referenced by resetCoefficients().

Vector<RefCountedPtr<LevelData<BaseIVFAB<Real> > > > slowEBCOFactory::m_bcoefIrreg
protected

Referenced by resetCoefficients().

Real slowEBCOFactory::m_dxCoarse
protected
Vector<int> slowEBCOFactory::m_refRatio
protected
RefCountedPtr<BaseDomainBCFactory> slowEBCOFactory::m_domainBCFactory
protected
RefCountedPtr<BaseEBBCFactory> slowEBCOFactory::m_ebBCFactory
protected
IntVect slowEBCOFactory::m_ghostCellsPhi
protected
IntVect slowEBCOFactory::m_ghostCellsRhs
protected
int slowEBCOFactory::m_numLevels
protected
std::vector< bool > slowEBCOFactory::m_hasMGObjects
protected
Vector<Real> slowEBCOFactory::m_dx
protected

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