|
| | PETSC (const SolverParameters *aParams) |
| | ~PETSC () override |
| void | set (const Preconditioner aPreconditioner, const KrylovMethod aKrylovMethod, const real aEpsilon=1e-8) |
| void | solve (SpMatrix &aMatrix, Vector< real > &aLHS, Vector< real > &aRHS) override |
| void | free () override |
| | Wrapper (const string &aLabel, const bool aUsesMPI) |
| virtual | ~Wrapper () |
| const string & | label () const |
| | returns the name of the solver as string
|
| void | set_soft_fail (const bool aFlag) |
| | arm/disarm the soft-fail contract ( see the member note )
|
| bool | failed () const |
| | true if the last factorization/solve failed softly
|
| void | clear_failure () |
| | clear a recorded soft failure before the next solve
|
| virtual void | solve (SpMatrix &aMatrix, Matrix< real > &aLHS, Matrix< real > &aRHS) |
| bool | is_initialized () const |
| | tells if the initialitzation routine has already been called
|
| proc_t | rank () const |
| | returns the communication rank of this proc
|
| proc_t | comm_size () const |
| | returns the communication size of this proc
|
| bool | uses_mpi () const |
| void | free () override |
| virtual real | get_determinant () const |
| | returns the determinant, if supported by the solver and computation was requested
|
| virtual real | get_cond1 () const |
| | returns the conditioning numbner, if supported by the solver and computation was requested
|
| virtual real | get_cond2 () const |
| | returns the conditioning numbner, if supported by the solver and computation was requested
|
| virtual real | get_forward_error () const |
| | estimated FORWARD error of the last solve, || dx || / || x ||, if supported by the solver and computation was requested.
|
| virtual real | get_backward_error () const |
| | componentwise BACKWARD error of the last solve, if supported by the solver and computation was requested: the smallest relative perturbation of A and b for which the computed x is exact.
|
| virtual real | get_omega2 () const |
| | the SECOND half of that backward error on its own, if supported.
|
| virtual bool | supports_factorization_reuse () const |
| | true if this wrapper can solve against an EXISTING factorization rather than rebuilding it.
|
| virtual void | freeze_factorization (const SpMatrix &aMatrix) |
| | arm the frozen state: subsequent solves reuse the factorization that the LAST SUCCESSFUL solve built, instead of rebuilding it.
|
| virtual void | unfreeze_factorization () |
| | drop the frozen state and return to ordinary re-factorizing solves.
|
| virtual bool | factorization_is_frozen () const |
| | true while the frozen scope is armed
|
| | CommunicationObject () |
| | ~CommunicationObject () |
| index_t | index () const |