EBViscousTensorOpFactory Class Reference

#include <EBViscousTensorOpFactory.H>

Inheritance diagram for EBViscousTensorOpFactory:

Inheritance graph
[legend]

List of all members.


Detailed Description

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

Public Member Functions

virtual ~EBViscousTensorOpFactory ()
 EBViscousTensorOpFactory (const Vector< EBLevelGrid > &a_eblgs, const Real &a_alpha, const Real &a_beta, const Vector< RefCountedPtr< LevelData< EBCellFAB > > > &a_acoef, const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &a_eta, const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &a_lambda, const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &a_etaIrreg, const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &a_lambdaIrreg, 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, int a_numLevels=-1, bool a_noMG=false)
 EBViscousTensorOpFactory (const Vector< EBLevelGrid > &a_eblgs, const Real &a_alpha, const Real &a_beta, const Vector< RefCountedPtr< LevelData< EBCellFAB > > > &a_acoef0, const Vector< RefCountedPtr< LevelData< EBCellFAB > > > &a_acoef1, const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &a_eta, const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &a_lambda, const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &a_etaIrreg, const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &a_lambdaIrreg, 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, int a_numLevels=-1, bool a_noMG=false)
virtual EBViscousTensorOpMGnewOp (const ProblemDomain &a_FineindexSpace, int a_depth, bool a_homoOnly=true)
EBViscousTensorOpcreateOperator (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 EBViscousTensorOpAMRnewOp (const ProblemDomain &a_FineindexSpace)
virtual void AMRreclaim (EBViscousTensorOp *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_eta, const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &a_lambda, const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &a_etaIrreg, const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &a_lambdaIrreg)

Protected Attributes

Vector< Vector< EBLevelGrid > > m_eblgsMG
Vector< Vector< RefCountedPtr
< LevelData< EBCellFAB > > > > 
m_acoefMG
 Time-independent a multigrid coefficients.
Vector< Vector< RefCountedPtr
< LevelData< EBFluxFAB > > > > 
m_etaMG
Vector< Vector< RefCountedPtr
< LevelData< EBFluxFAB > > > > 
m_lambdaMG
Vector< Vector< RefCountedPtr
< LevelData< BaseIVFAB< Real > > > > > 
m_etaIrregMG
Vector< Vector< RefCountedPtr
< LevelData< BaseIVFAB< Real > > > > > 
m_lambdaIrregMG
Vector< Vector
< EBViscousTensorOp * > > 
m_MGops
std::vector< bool > m_hasMGObjects
Vector< EBLevelGridm_eblgs
Real m_alpha
Real m_beta
Vector< RefCountedPtr
< LevelData< EBCellFAB > > > 
m_acoef
 Time-independent a coefficients.
Vector< RefCountedPtr
< LevelData< EBCellFAB > > > 
m_acoef0
 Beginning-of-step (time-dependent) a coefficients.
Vector< RefCountedPtr
< LevelData< EBCellFAB > > > 
m_acoef1
 End-of-step (time-dependent) a coefficient.
Vector< RefCountedPtr
< LevelData< EBFluxFAB > > > 
m_eta
Vector< RefCountedPtr
< LevelData< EBFluxFAB > > > 
m_lambda
Vector< RefCountedPtr
< LevelData< BaseIVFAB< Real > > > > 
m_etaIrreg
Vector< RefCountedPtr
< LevelData< BaseIVFAB< Real > > > > 
m_lambdaIrreg
Real m_dxCoarse
Vector< int > m_refRatio
RefCountedPtr
< BaseDomainBCFactory
m_domainBCFactory
RefCountedPtr< BaseEBBCFactorym_ebBCFactory
IntVect m_ghostCellsPhi
IntVect m_ghostCellsRhs
int m_numLevels
Vector< Realm_dx
bool m_noMG

Private Member Functions

 EBViscousTensorOpFactory ()
 weak construction bad
 EBViscousTensorOpFactory (const EBViscousTensorOpFactory &a_opin)
void operator= (const EBViscousTensorOpFactory &a_opin)

Constructor & Destructor Documentation

virtual EBViscousTensorOpFactory::~EBViscousTensorOpFactory (  )  [virtual]

EBViscousTensorOpFactory::EBViscousTensorOpFactory ( const Vector< EBLevelGrid > &  a_eblgs,
const Real a_alpha,
const Real a_beta,
const Vector< RefCountedPtr< LevelData< EBCellFAB > > > &  a_acoef,
const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &  a_eta,
const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &  a_lambda,
const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &  a_etaIrreg,
const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &  a_lambdaIrreg,
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,
int  a_numLevels = -1,
bool  a_noMG = false 
)

Constructs a factory that builds EBViscousTensorOps with time-independent A and B coefficients.

EBViscousTensorOpFactory::EBViscousTensorOpFactory ( const Vector< EBLevelGrid > &  a_eblgs,
const Real a_alpha,
const Real a_beta,
const Vector< RefCountedPtr< LevelData< EBCellFAB > > > &  a_acoef0,
const Vector< RefCountedPtr< LevelData< EBCellFAB > > > &  a_acoef1,
const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &  a_eta,
const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &  a_lambda,
const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &  a_etaIrreg,
const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &  a_lambdaIrreg,
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,
int  a_numLevels = -1,
bool  a_noMG = false 
)

Constructs a factory that builds EBConductivityOps with a time-dependent A coefficient and a time-independent B coefficient. The A coefficient is interpolated between its beginning-of-step and end-of-step values.

EBViscousTensorOpFactory::EBViscousTensorOpFactory (  )  [inline, private]

weak construction bad

References MayDay::Error().

EBViscousTensorOpFactory::EBViscousTensorOpFactory ( const EBViscousTensorOpFactory a_opin  )  [inline, private]

References MayDay::Error().


Member Function Documentation

virtual EBViscousTensorOp* EBViscousTensorOpFactory::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 > >.

EBViscousTensorOp* EBViscousTensorOpFactory::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 EBViscousTensorOpFactory::reclaim ( MGLevelOp< LevelData< EBCellFAB > > *  a_reclaim  )  [virtual]

virtual EBViscousTensorOp* EBViscousTensorOpFactory::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 EBViscousTensorOpFactory::AMRreclaim ( EBViscousTensorOp a_reclaim  )  [virtual]

virtual int EBViscousTensorOpFactory::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 EBViscousTensorOpFactory::resetCoefficients ( const Real a_alpha,
const Real a_beta,
const Vector< RefCountedPtr< LevelData< EBCellFAB > > > &  a_acoef,
const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &  a_eta,
const Vector< RefCountedPtr< LevelData< EBFluxFAB > > > &  a_lambda,
const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &  a_etaIrreg,
const Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &  a_lambdaIrreg 
) [inline]

void EBViscousTensorOpFactory::operator= ( const EBViscousTensorOpFactory a_opin  )  [inline, private]

References MayDay::Error().


Member Data Documentation

Time-independent a multigrid coefficients.

std::vector< bool > EBViscousTensorOpFactory::m_hasMGObjects [protected]

Referenced by resetCoefficients().

Referenced by resetCoefficients().

Time-independent a coefficients.

Referenced by resetCoefficients().

Beginning-of-step (time-dependent) a coefficients.

End-of-step (time-dependent) a coefficient.

Referenced by resetCoefficients().

Referenced by resetCoefficients().

Referenced by resetCoefficients().

Referenced by resetCoefficients().


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

Generated on Fri Jun 23 04:03:44 2017 for Chombo + EB by  doxygen 1.5.5