#include <LevelSolver.H>
Collaboration diagram for LevelSolver:

Public Methods | |
| LevelSolver () | |
| virtual | ~LevelSolver () |
| LevelSolver (const DisjointBoxLayout &a_grids, const DisjointBoxLayout *a_baseGrids, const Box &a_domain, Real a_dxLevel, int a_nRefCrse, const LevelOp *const a_opin, int a_ncomp=1) | |
| LevelSolver (const DisjointBoxLayout &a_grids, const DisjointBoxLayout *a_baseGrids, const ProblemDomain &a_domain, Real a_dxLevel, int a_nRefCrse, const LevelOp *const a_opin, int a_ncomp) | |
| virtual void | define (const DisjointBoxLayout &a_grids, const DisjointBoxLayout *a_baseGrids, const Box &a_domain, Real a_dxLevel, int a_nRefCrse, const LevelOp *const a_opin, int a_ncomp=1) |
| Full define function. | |
| virtual void | define (const DisjointBoxLayout &a_grids, const DisjointBoxLayout *a_baseGrids, const ProblemDomain &a_domain, Real a_dxLevel, int a_nRefCrse, const LevelOp *const a_opin, int a_ncomp=1) |
| Full define function. | |
| bool | isDefined () const |
| void | clearMemory () |
| void | setDefaultValues () |
| void | levelSolveH (LevelData< FArrayBox > &phi, const LevelData< FArrayBox > &rhs, bool initializePhiToZero=true) |
| void | levelSolve (LevelData< FArrayBox > &phi, const LevelData< FArrayBox > *phic, const LevelData< FArrayBox > &rhs, bool initializePhiToZero=true) |
| void | setTolerance (Real a_tolerance) |
| set solution tolerance | |
| void | setVerbose (bool a_verbose) |
| void | setMaxIter (int a_maxIter) |
| set max number multigrid vcycles to use in solution | |
Protected Attributes | |
| LevelMG | m_levelMG |
| LevelOp * | m_levelOpPtr |
| bool | m_isDefined |
| DisjointBoxLayout | m_grids |
| ProblemDomain | m_domain |
| LevelData< FArrayBox > | m_resid |
| LevelData< FArrayBox > | m_scratch |
| LevelData< FArrayBox > | m_corr |
| int | m_nRefCrse |
| Real | m_dxLevel |
| int | m_maxIter |
| Real | m_tolerance |
| bool | m_verbose |
Private Methods | |
| void | operator= (const LevelSolver &) |
| LevelSolver (const LevelSolver &) | |
LevelSolver Solves elliptic equations on a level using multigrid.
|
|
Default constructor leaves LevelSolver undefined. |
|
|
|
|
||||||||||||||||||||||||||||||||
|
Full constructor. Calls full define function.\ {\bf Inputs:} \ a_grids: Grid on which solution will be computed. \ a_baseGrids: pointer to next coarser grids. Should be == NULL if there is no coarser level. \ a_domain: domain of solution level \ a_dxLevel: grid spacing at solution level \ a_nRefCrse: refinement ratio between two levels. Not used if there is no finer level \ a_opin: operator L used in solution of Lphi=rho |
|
||||||||||||||||||||||||||||||||
|
Full constructor. Calls full define function.\ {\bf Inputs:} \ a_grids: Grid on which solution will be computed. \ a_baseGrids: pointer to next coarser grids. Should be == NULL if there is no coarser level. \ a_domain: domain of solution level \ a_dxLevel: grid spacing at solution level \ a_nRefCrse: refinement ratio between two levels. Not used if there is no finer level \ a_opin: operator L used in solution of Lphi=rho |
|
|
|
|
|
|
|
||||||||||||||||||||||||||||||||
|
Full define function. Full define function.\ {\bf Inputs:} \ a_grids: Grid on which solution will be computed. \ a_baseGrids: pointer to next coarser grids. Should be == NULL if there is no coarser level. \ a_domain: domain of solution level \ a_dxLevel: grid spacing at solution level \ a_nRefCrse: refinement ratio between two levels. Not used if there is no finer level \ a_opin: operator L used in solution of Lphi=rho |
|
||||||||||||||||||||||||||||||||
|
Full define function. Full define function.\ {\bf Inputs:} \ a_grids: Grid on which solution will be computed. \ a_baseGrids: pointer to next coarser grids. Should be == NULL if there is no coarser level. \ a_domain: domain of solution level \ a_dxLevel: grid spacing at solution level \ a_nRefCrse: refinement ratio between two levels. Not used if there is no finer level \ a_opin: operator L used in solution of Lphi=rho |
|
|
|
|
||||||||||||||||||||
|
do a level solve on this level using multigrid uses inhomogeneous bcs at interfaces\ {\bf Inputs:} \ phi: initial guess at solution. phic: solution at next coarser level. should be == NULL if there is no coarser level. rhs: right-hand side. \ {\bf Outputs:} \ phi: solution. |
|
||||||||||||||||
|
do a level solve on this level using multigrid uses homogeneous bcs at coarse/fine interfaces \ {\bf Inputs:} \ phi: initial guess at solution. rhs: right-hand side. \ {\bf Outputs:} \ phi: solution. |
|
|
|
|
|
|
|
|
set max number multigrid vcycles to use in solution
|
|
|
set solution tolerance
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1.2.16