NWOEBConductivityOpFactory Class Reference

#include <NWOEBConductivityOpFactory.H>

Inheritance diagram for NWOEBConductivityOpFactory:

Inheritance graph
[legend]

List of all members.


Detailed Description

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

Public Member Functions

 NWOEBConductivityOpFactory (const Vector< EBLevelGrid > &a_eblgs, const Vector< RefCountedPtr< NWOEBQuadCFInterp > > &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 ~NWOEBConductivityOpFactory ()
 Destructor.
virtual void setData (Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &a_data)
virtual NWOEBConductivityOpMGnewOp (const ProblemDomain &a_FineindexSpace, int a_depth, bool a_homoOnly=true)
NWOEBConductivityOpcreateOperator (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 NWOEBConductivityOpAMRnewOp (const ProblemDomain &a_FineindexSpace)
virtual void AMRreclaim (NWOEBConductivityOp *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)
 Reset the coefficients for the conductivity operator (time-independent).

Static Public Member Functions

static void setTestRef (int a_testRef)
static void setMaxBoxSize (int a_maxBoxSize)

Static Public Attributes

static int s_testRef
static int s_maxBoxSize

Protected Attributes

Vector< RefCountedPtr
< LevelData< BaseIVFAB< Real > > > > 
m_data
bool m_dataBased
Vector< Vector< EBLevelGrid > > m_eblgsMG
Vector< Vector< RefCountedPtr
< LevelData< EBCellFAB > > > > 
m_acoefMG
 Time-independent A multigrid coefficients.
Vector< Vector< RefCountedPtr
< LevelData< EBCellFAB > > > > 
m_acoefMG0
 Beginning-of-step (time-dependent) A multigrid coefficients.
Vector< Vector< RefCountedPtr
< LevelData< EBCellFAB > > > > 
m_acoefMG1
 End-of-step (time-dependent) A multigrid coefficients.
Vector< Vector< RefCountedPtr
< LevelData< EBFluxFAB > > > > 
m_bcoefMG
Vector< Vector< RefCountedPtr
< LevelData< BaseIVFAB< Real > > > > > 
m_bcoefIrregMG
int m_relaxType
Vector< EBLevelGridm_eblgs
Vector< RefCountedPtr
< NWOEBQuadCFInterp > > 
m_quadCFI
Real m_alpha
Real m_beta
Vector< RefCountedPtr
< LevelData< EBCellFAB > > > 
m_acoef
 Time-independent A coefficients.
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

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

Constructor & Destructor Documentation

NWOEBConductivityOpFactory::NWOEBConductivityOpFactory ( const Vector< EBLevelGrid > &  a_eblgs,
const Vector< RefCountedPtr< NWOEBQuadCFInterp > > &  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 
)

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

virtual NWOEBConductivityOpFactory::~NWOEBConductivityOpFactory (  )  [virtual]

Destructor.

NWOEBConductivityOpFactory::NWOEBConductivityOpFactory (  )  [inline, private]

weak construction bad

References MayDay::Error().

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

References MayDay::Error().


Member Function Documentation

virtual void NWOEBConductivityOpFactory::setData ( Vector< RefCountedPtr< LevelData< BaseIVFAB< Real > > > > &  a_data  )  [inline, virtual]

References m_data, and m_dataBased.

virtual NWOEBConductivityOp* NWOEBConductivityOpFactory::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 > >.

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

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

virtual int NWOEBConductivityOpFactory::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 > >.

static void NWOEBConductivityOpFactory::setTestRef ( int  a_testRef  )  [inline, static]

testRef is the size of the coarsest domain allowed in multigrid. If testRef=2, then the coarsest domain in multigrid will be 2x2(x2)

References s_testRef.

static void NWOEBConductivityOpFactory::setMaxBoxSize ( int  a_maxBoxSize  )  [inline, static]

References s_maxBoxSize.

void NWOEBConductivityOpFactory::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]

Reset the coefficients for the conductivity operator (time-independent).

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

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

References MayDay::Error().


Member Data Documentation

Referenced by setTestRef().

Referenced by setMaxBoxSize().

Referenced by setData().

Referenced by setData().

Time-independent A multigrid coefficients.

Beginning-of-step (time-dependent) A multigrid coefficients.

End-of-step (time-dependent) A multigrid coefficients.

Referenced by resetCoefficients().

Referenced by resetCoefficients().

Time-independent A coefficients.

Referenced by resetCoefficients().

Referenced by resetCoefficients().

Referenced by resetCoefficients().

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


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

Generated on Fri Apr 5 04:25:14 2019 for Chombo + EB by  doxygen 1.5.5