#include <PoissonOp.H>
Inheritance diagram for PoissonOp:
Public Methods | |
PoissonOp () | |
Default constructor. | |
~PoissonOp () | |
Destructor. | |
virtual LevelOp * | new_levelop () const |
Virtual constructor workaround. | |
void | levelGSMC (LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > &a_rhs) |
virtual bool | isDefined () const |
Has this object been defined? | |
void | define (const DisjointBoxLayout &a_grids, const DisjointBoxLayout *a_baseBAPtr, Real a_dxLevel, int a_refRatio, const ProblemDomain &a_domain, bool a_homogeneousOnly=false, int a_ncomp=1) |
Full define function. | |
void | define (const LevelOp *a_opfine, int a_reftoFine) |
Full define function. Define from finer levelop. | |
void | define (const DisjointBoxLayout &a_grids, const DisjointBoxLayout *a_baseBAPtr, Real a_dxLevel, int a_refRatio, const Box &a_domain, bool a_homogeneousOnly=false, int a_ncomp=1) |
Full define function (Deprecated -- use ProblemDomain version). | |
void | smooth (LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > &a_rhs) |
Smoother. | |
virtual void | levelPreconditioner (LevelData< FArrayBox > &a_phihat, const LevelData< FArrayBox > &a_rhshat) |
Apply preconditioning to the solution on this level. | |
void | applyOpI (LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > *a_phicPtr, LevelData< FArrayBox > &a_lofPhi) |
Evaluate Operator, inhomogeneous boundary conditions. | |
void | applyOpIcfHphys (LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > *a_phicPtr, LevelData< FArrayBox > &a_lofPhi) |
Evaluate Operator, mixed boundary conditions. | |
void | applyOpH (LevelData< FArrayBox > &a_phi, LevelData< FArrayBox > &a_lofPhi) |
Evaluate Operator using homogeneous boundary conditions. | |
void | CFInterp (LevelData< FArrayBox > &a_phif, const LevelData< FArrayBox > &a_phic) |
Coarse / Fine interpolation operator. | |
void | applyOpHcfIphys (LevelData< FArrayBox > &a_phi, LevelData< FArrayBox > &a_lOfPhi) |
Evaluate Operator. | |
void | homogeneousCFInterp (LevelData< FArrayBox > &a_phif) |
Homogeneous coarse/fine interpolation operator. | |
void | setDomainGhostBC (const DomainGhostBC &a_dombcin) |
Set physical boundary condition types. | |
void | setBottomSmoother (const BaseBottomSmoother &a_bottomSmoother) |
Set the bottom smoother to use in solve. | |
void | homogeneousCFInterp (LevelData< FArrayBox > &a_phif, const DataIndex &a_datInd, int a_idir, Side::LoHiSide a_hiorlo) |
Does homogeneous coarse/fine interpolation. | |
void | bottomSmoother (LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > &a_rhs) |
This performs the smoothing at the bottom of a multigrid V-cycle. | |
void | getFlux (FArrayBox &a_fineFlux, const FArrayBox &a_data, const DataIndex &a_datInd, int a_dir) |
Get flux on this level in the direction dir on the given Box. | |
virtual void | setConvergenceMetric (Real a_metric, int a_comp) |
pass-through to bottom smoother | |
Protected Attributes | |
DomainGhostBC | m_domghostbc |
ProblemDomain | m_domain |
DisjointBoxLayout | m_grids |
Copier | m_exchangeCopier |
DisjointBoxLayout | m_baseBA |
int | m_ncomp |
int | m_refRatio |
Real | m_dxLevel |
Real | m_dxCrse |
QuadCFInterp | m_quadCFI |
BaseBottomSmoother * | m_bottomSmootherPtr |
bool | m_isDefined |
bool | m_isBCDefined |
bool | m_ihcfiEnabled |
LayoutData< CFIVS > | m_loCFIVS [SpaceDim] |
LayoutData< CFIVS > | m_hiCFIVS [SpaceDim] |
this class contains stuff to solve div (grad phi) = rhs
|
Default constructor.
|
|
Destructor.
|
|
Evaluate Operator using homogeneous boundary conditions. Uses homogeneous form of both coarse-fine and physical boundary conditions. Implements LevelOp. |
|
Evaluate Operator. Uses homogeneous form of C/F boundary conditions. with inhomogeneous physical boundary conditions Implements LevelOp. |
|
Evaluate Operator, inhomogeneous boundary conditions. Uses inhomogeneous C/F boundary conditions. and inhomogeneous phys boundary conditions Implements LevelOp. |
|
Evaluate Operator, mixed boundary conditions. Uses inhomogeneous form of C/F boundary conditions. and homogeneous physical boundary conditions Implements LevelOp. |
|
This performs the smoothing at the bottom of a multigrid V-cycle.
Implements LevelOp. |
|
Coarse / Fine interpolation operator.
Implements LevelOp. |
|
Full define function (Deprecated -- use ProblemDomain version). Full define function. makes all coarse-fine information and sets internal variables Implements LevelOp. |
|
Full define function. Define from finer levelop.
Implements LevelOp. |
|
Full define function. Makes all coarse-fine information and sets internal variables Implements LevelOp. |
|
Get flux on this level in the direction dir on the given Box. The fluxes live on the cell faces with direction a_dir. Fluxes are computed for all interior edges of a_data. The flux fab is resized inside the routine. Implements LevelOp. |
|
Does homogeneous coarse/fine interpolation.
|
|
Homogeneous coarse/fine interpolation operator.
Implements LevelOp. |
|
Has this object been defined?
Implements LevelOp. Reimplemented in VelocityPoissonOp. |
|
|
|
Apply preconditioning to the solution on this level. Given rhshat, returns phihat from M(phihat) = rhshat Implements LevelOp. |
|
Virtual constructor workaround.
Implements LevelOp. Reimplemented in VelocityPoissonOp. |
|
Set the bottom smoother to use in solve.
|
|
pass-through to bottom smoother
Implements LevelOp. |
|
Set physical boundary condition types.
|
|
Smoother. Assumes that problem has already been put in residual correction form, so that C/F boundary conditions are homogeneous. Implements LevelOp. |
|
DisjointBoxLayout for next coarser level this is == NULL if there is no coarser level |
|
Bottom smoother object |
|
Domain of fine grid |
|
Boundary conditons |
|
Mesh spacing at next coarser level |
|
Mesh spacing at this level |
|
Copier object that knows how to perform exchange operations on LevelData objects defined on m_grids |
|
The grids at the current level |
|
Coarse-fine stencils for homogeneous CFInterp |
|
Is inhomogeneous CF interpolation possible? |
|
Has bc been defined? |
|
Has full define function been called? |
|
Coarse-fine stencils for homogeneous CFInterp |
|
Number of components |
|
|
|
Refinement ratio between this and the next coarser level |