| Chombo + EB
    3.2
    | 
#include <BiCGStabSolver.H>

| Public Member Functions | |
| BiCGStabSolver () | |
| virtual | ~BiCGStabSolver () | 
| virtual void | setHomogeneous (bool a_homogeneous) | 
| virtual void | define (LinearOp< T > *a_op, bool a_homogeneous) | 
| virtual void | solve (T &a_phi, const T &a_rhs) | 
| solve the equation.  More... | |
| virtual void | setConvergenceMetrics (Real a_metric, Real a_tolerance) | 
| Set a convergence metric, along with solver tolerance, if desired.  More... | |
|  Public Member Functions inherited from LinearSolver< T > | |
| virtual | ~LinearSolver () | 
| Public Attributes | |
| bool | m_homogeneous | 
| LinearOp< T > * | m_op | 
| int | m_imax | 
| int | m_verbosity | 
| Real | m_eps | 
| Real | m_reps | 
| Real | m_convergenceMetric | 
| Real | m_hang | 
| int | m_exitStatus | 
| int | m_iter | 
| Real | m_residual | 
| Real | m_initial_residual | 
| Real | m_small | 
| int | m_numRestarts | 
| int | m_normType | 
Elliptic solver using the BiCGStab algorithm.
| BiCGStabSolver< T >::BiCGStabSolver | ( | ) | 
| 
 | virtual | 
| 
 | inlinevirtual | 
reset whether the solver is homogeneous.
Implements LinearSolver< T >.
Reimplemented in MergeSolver< T >.
| 
 | virtual | 
define the solver. a_op is the linear operator. a_homogeneous is whether the solver uses homogeneous boundary conditions.
Implements LinearSolver< T >.
Reimplemented in MergeSolver< T >.
Referenced by BiCGStabSolver< LevelData< T > >::setHomogeneous().
| 
 | virtual | 
solve the equation.
Implements LinearSolver< T >.
Reimplemented in MergeSolver< T >.
Referenced by BiCGStabSolver< LevelData< T > >::setHomogeneous().
| 
 | virtual | 
Set a convergence metric, along with solver tolerance, if desired.
Default implementation does nothing, since there are probably cases (liked direct solves), where this has no real meaning.
Reimplemented from LinearSolver< T >.
Reimplemented in MergeSolver< T >.
Referenced by BiCGStabSolver< LevelData< T > >::setHomogeneous().
| bool BiCGStabSolver< T >::m_homogeneous | 
public member data: whether the solver is restricted to homogeneous boundary conditions
Referenced by BiCGStabSolver< LevelData< T > >::define(), BiCGStabSolver< LevelData< T > >::setHomogeneous(), and BiCGStabSolver< LevelData< T > >::solve().
| LinearOp<T>* BiCGStabSolver< T >::m_op | 
public member data: operator to solve.
Referenced by BiCGStabSolver< LevelData< T > >::define(), BiCGStabSolver< LevelData< T > >::solve(), and BiCGStabSolver< LevelData< T > >::~BiCGStabSolver().
| int BiCGStabSolver< T >::m_imax | 
public member data: maximum number of iterations
Referenced by BiCGStabSolver< LevelData< T > >::solve().
| int BiCGStabSolver< T >::m_verbosity | 
public member data: how much screen out put the user wants. set = 0 for no output.
Referenced by MultilevelLinearOp< T >::define(), and BiCGStabSolver< LevelData< T > >::solve().
| Real BiCGStabSolver< T >::m_eps | 
public member data: solver tolerance
Referenced by BiCGStabSolver< LevelData< T > >::setConvergenceMetrics(), and BiCGStabSolver< LevelData< T > >::solve().
| Real BiCGStabSolver< T >::m_reps | 
public member data: relative solver tolerance
Referenced by BiCGStabSolver< LevelData< T > >::solve().
| Real BiCGStabSolver< T >::m_convergenceMetric | 
public member data: solver convergence metric – if negative, use initial residual; if positive, then use m_convergenceMetric
Referenced by BiCGStabSolver< LevelData< T > >::setConvergenceMetrics(), and BiCGStabSolver< LevelData< T > >::solve().
| Real BiCGStabSolver< T >::m_hang | 
public member data: minium norm of solution should change per iterations
Referenced by BiCGStabSolver< LevelData< T > >::solve().
| int BiCGStabSolver< T >::m_exitStatus | 
public member data: set = -1 if solver exited for an unknown reason set = 1 if solver converged to tolerance set = 2 if rho = 0 set = 3 if max number of restarts was reached
Referenced by BiCGStabSolver< LevelData< T > >::solve().
| int BiCGStabSolver< T >::m_iter | 
public member data: iteration number. This is a member so that it can be queried after a solve, for example.
Referenced by BiCGStabSolver< LevelData< T > >::solve().
| Real BiCGStabSolver< T >::m_residual | 
public member data: current residual norm. This is a member so that it can be queried after a solve, for example
Referenced by BiCGStabSolver< LevelData< T > >::solve().
| Real BiCGStabSolver< T >::m_initial_residual | 
public member data: initial residual norm. This is a member so that it can be queried after a solve, for example
Referenced by BiCGStabSolver< LevelData< T > >::solve().
| Real BiCGStabSolver< T >::m_small | 
public member data: what the algorithm should consider "close to zero"
Referenced by BiCGStabSolver< LevelData< T > >::solve().
| int BiCGStabSolver< T >::m_numRestarts | 
public member data: number of times the algorithm can restart
Referenced by BiCGStabSolver< LevelData< T > >::solve().
| int BiCGStabSolver< T >::m_normType | 
public member data: norm to be used when evaluation convergence. 0 is max norm, 1 is L(1), 2 is L(2) and so on.
Referenced by BiCGStabSolver< LevelData< T > >::solve().
 1.8.13
 1.8.13