#include <EBLevelCCProjector.H>

Public Member Functions | |
| ~EBLevelCCProjector () | |
| EBLevelCCProjector (const DisjointBoxLayout &a_grids, const DisjointBoxLayout &a_gridsCoar, const EBISLayout &a_ebisl, const EBISLayout &a_ebislCoar, const ProblemDomain &a_domain, const RealVect &a_dx, const RealVect &a_origin, const int &a_refToCoar, const bool &a_hasCoarser, const LinearSolver< LevelData< EBCellFAB > > &a_bottomSolver, const RefCountedPtr< BaseEBBCFactory > &a_ebbcPhi, const RefCountedPtr< BaseDomainBCFactory > &a_domainbcPhi, const RefCountedPtr< BaseDomainBCFactory > &a_domainbcVel, const int &a_numSmooths, const int &a_mgCycle, const int &a_maxIterations, const Real &a_tolerance, const int &a_maxDepth, const Real &a_time, const bool &a_doEBCFCrossing, const IntVect &a_nghostPhi, const IntVect &a_nghostRhs) | |
| void | project (LevelData< EBCellFAB > &a_velocity, LevelData< EBCellFAB > &a_gradient, const LevelData< EBCellFAB > &a_velCoar, const LevelData< BaseIVFAB< Real > > *const a_boundaryVel=NULL) |
| void | kappaDivergence (LevelData< EBCellFAB > &a_divergence, LevelData< EBCellFAB > &a_velocity, const LevelData< EBCellFAB > &a_velCoar, const LevelData< BaseIVFAB< Real > > *const a_boundaryVel=NULL) |
Protected Attributes | |
| DisjointBoxLayout | m_grids |
| EBISLayout | m_ebisl |
| DisjointBoxLayout | m_gridsCoar |
| EBISLayout | m_ebislCoar |
| ProblemDomain | m_domain |
| RealVect | m_dx |
| EBLevelMACProjector * | m_macProjector |
| EBQuadCFInterp | m_patcher |
| bool | m_doEBCFCrossing |
| int | m_refToCoar |
| bool | m_hasCoarser |
| IntVect | m_nghostPhi |
| IntVect | m_nghostRhs |
| LayoutData< IntVectSet > | m_cfivs |
Private Member Functions | |
| EBLevelCCProjector () | |
| EBLevelCCProjector (const EBLevelCCProjector &a_input) | |
| void | operator= (const EBLevelCCProjector &a_input) |
| EBLevelCCProjector::~EBLevelCCProjector | ( | ) |
| EBLevelCCProjector::EBLevelCCProjector | ( | const DisjointBoxLayout & | a_grids, | |
| const DisjointBoxLayout & | a_gridsCoar, | |||
| const EBISLayout & | a_ebisl, | |||
| const EBISLayout & | a_ebislCoar, | |||
| const ProblemDomain & | a_domain, | |||
| const RealVect & | a_dx, | |||
| const RealVect & | a_origin, | |||
| const int & | a_refToCoar, | |||
| const bool & | a_hasCoarser, | |||
| const LinearSolver< LevelData< EBCellFAB > > & | a_bottomSolver, | |||
| const RefCountedPtr< BaseEBBCFactory > & | a_ebbcPhi, | |||
| const RefCountedPtr< BaseDomainBCFactory > & | a_domainbcPhi, | |||
| const RefCountedPtr< BaseDomainBCFactory > & | a_domainbcVel, | |||
| const int & | a_numSmooths, | |||
| const int & | a_mgCycle, | |||
| const int & | a_maxIterations, | |||
| const Real & | a_tolerance, | |||
| const int & | a_maxDepth, | |||
| const Real & | a_time, | |||
| const bool & | a_doEBCFCrossing, | |||
| const IntVect & | a_nghostPhi, | |||
| const IntVect & | a_nghostRhs | |||
| ) |
a_grids: boxes on the level \ a_ebisl: ebislayout at this level \ a_domain: domain of compuation at this refinement \ a_dx: grid spacing \ a_origin: physical location of the lower corner of the domain \\ a_bottomSolver: bottom solver for multigrid \ a_ebbcPhi: boundary conditions for phi at embedded boundary \ a_refToCoar: refinement ratio to next coarser AMR level \ a_hasCoaser true if there is a coarser AMR level \ a_domainbcPhi: boundary conditons for phi at domain boundary \ a_domainbcVel: boundary conditons for velocity at domain boundary \ a_numSmooths: number of smoothings that multigrid uses \ a_mgCycle: 1 for v cycle, 2 for w cycle \ a_maxIterations: max number of multigrid iterations \ a_tolerance: factor to reduce residual by in solve \ a_maxDepth: maximum multigrid depth. -1 for all the way down. \ a_time: time for boundary conditions \ a_doEBCFCrossing: true to enable EB Coarse-Fine interface code. \
| EBLevelCCProjector::EBLevelCCProjector | ( | ) | [inline, private] |
References MayDay::Error().
| EBLevelCCProjector::EBLevelCCProjector | ( | const EBLevelCCProjector & | a_input | ) | [inline, private] |
References MayDay::Error().
| void EBLevelCCProjector::project | ( | LevelData< EBCellFAB > & | a_velocity, | |
| LevelData< EBCellFAB > & | a_gradient, | |||
| const LevelData< EBCellFAB > & | a_velCoar, | |||
| const LevelData< BaseIVFAB< Real > > *const | a_boundaryVel = NULL | |||
| ) |
velocity--input and output as divergence-free gradient--pure gradient component of input velocity. Coarse-Fine Boundary conditions for the velocity are interpolated from the coarser level. For no-flow through eb, leave boundaryvel = NULL.
| void EBLevelCCProjector::kappaDivergence | ( | LevelData< EBCellFAB > & | a_divergence, | |
| LevelData< EBCellFAB > & | a_velocity, | |||
| const LevelData< EBCellFAB > & | a_velCoar, | |||
| const LevelData< BaseIVFAB< Real > > *const | a_boundaryVel = NULL | |||
| ) |
| void EBLevelCCProjector::operator= | ( | const EBLevelCCProjector & | a_input | ) | [inline, private] |
References MayDay::Error().
DisjointBoxLayout EBLevelCCProjector::m_grids [protected] |
EBISLayout EBLevelCCProjector::m_ebisl [protected] |
DisjointBoxLayout EBLevelCCProjector::m_gridsCoar [protected] |
EBISLayout EBLevelCCProjector::m_ebislCoar [protected] |
ProblemDomain EBLevelCCProjector::m_domain [protected] |
RealVect EBLevelCCProjector::m_dx [protected] |
EBLevelMACProjector* EBLevelCCProjector::m_macProjector [protected] |
EBQuadCFInterp EBLevelCCProjector::m_patcher [protected] |
bool EBLevelCCProjector::m_doEBCFCrossing [protected] |
int EBLevelCCProjector::m_refToCoar [protected] |
bool EBLevelCCProjector::m_hasCoarser [protected] |
IntVect EBLevelCCProjector::m_nghostPhi [protected] |
IntVect EBLevelCCProjector::m_nghostRhs [protected] |
LayoutData<IntVectSet> EBLevelCCProjector::m_cfivs [protected] |
1.5.5