![]() |
Reference documentation for deal.II version 8.1.0
|
#include <matrix_lib.h>
Public Member Functions | |
| InverseMatrixRichardson (SolverControl &control, VectorMemory< VECTOR > &mem) | |
| ~InverseMatrixRichardson () | |
| template<class MATRIX , class PRECONDITION > | |
| void | initialize (const MATRIX &, const PRECONDITION &) |
| SolverControl & | control () const |
| void | vmult (VECTOR &, const VECTOR &) const |
| void | vmult_add (VECTOR &, const VECTOR &) const |
| void | Tvmult (VECTOR &, const VECTOR &) const |
| void | Tvmult_add (VECTOR &, const VECTOR &) const |
Public Member Functions inherited from Subscriptor | |
| Subscriptor () | |
| Subscriptor (const Subscriptor &) | |
| virtual | ~Subscriptor () |
| Subscriptor & | operator= (const Subscriptor &) |
| void | subscribe (const char *identifier=0) const |
| void | unsubscribe (const char *identifier=0) const |
| unsigned int | n_subscriptions () const |
| void | list_subscribers () const |
| DeclException3 (ExcInUse, int, char *, std::string &,<< "Object of class "<< arg2<< " is still used by "<< arg1<< " other objects.\n"<< "(Additional information: "<< arg3<< ")\n"<< "Note the entry in the Frequently Asked Questions of "<< "deal.II (linked to from http://www.dealii.org/) for "<< "more information on what this error means.") | |
| DeclException2 (ExcNoSubscriber, char *, char *,<< "No subscriber with identifier \""<< arg2<< "\" did subscribe to this object of class "<< arg1) | |
| template<class Archive > | |
| void | serialize (Archive &ar, const unsigned int version) |
Private Attributes | |
| VectorMemory< VECTOR > & | mem |
| SolverRichardson< VECTOR > | solver |
| PointerMatrixBase< VECTOR > * | matrix |
| PointerMatrixBase< VECTOR > * | precondition |
Inverse matrix computed approximately by using the SolverRichardson iterative solver. In particular, the function SolverRichardson::Tsolve() allows for the implementation of transpose matrix vector products.
The functions vmult() and Tvmult() appoximate the inverse iteratively starting with the vector dst. Functions vmult_add() and Tvmult_add() start the iteration with a zero vector.
<float> and <double>; others can be generated in application programs (see the section on Template instantiations in the manual).Definition at line 431 of file matrix_lib.h.
| InverseMatrixRichardson< VECTOR >::InverseMatrixRichardson | ( | SolverControl & | control, |
| VectorMemory< VECTOR > & | mem | ||
| ) |
Constructor, initializing the solver with a control and memory object. The inverted matrix and the preconditioner are added in initialize().
Definition at line 129 of file matrix_lib.templates.h.
| InverseMatrixRichardson< VECTOR >::~InverseMatrixRichardson | ( | ) |
Since we use two pointers, we must implement a destructor.
Definition at line 141 of file matrix_lib.templates.h.
|
inline |
Initialization function. Provide a solver object, a matrix, and another preconditioner for this.
Definition at line 756 of file matrix_lib.h.
| SolverControl& InverseMatrixRichardson< VECTOR >::control | ( | ) | const |
Access to the SolverControl object used by the solver.
| void InverseMatrixRichardson< VECTOR >::vmult | ( | VECTOR & | dst, |
| const VECTOR & | src | ||
| ) | const |
Execute solver.
Definition at line 150 of file matrix_lib.templates.h.
| void InverseMatrixRichardson< VECTOR >::vmult_add | ( | VECTOR & | dst, |
| const VECTOR & | src | ||
| ) | const |
Execute solver.
Definition at line 167 of file matrix_lib.templates.h.
| void InverseMatrixRichardson< VECTOR >::Tvmult | ( | VECTOR & | dst, |
| const VECTOR & | src | ||
| ) | const |
Execute transpose solver.
Definition at line 187 of file matrix_lib.templates.h.
| void InverseMatrixRichardson< VECTOR >::Tvmult_add | ( | VECTOR & | dst, |
| const VECTOR & | src | ||
| ) | const |
Execute transpose solver.
Definition at line 204 of file matrix_lib.templates.h.
|
private |
A reference to the provided VectorMemory object.
Definition at line 489 of file matrix_lib.h.
|
mutableprivate |
The solver object.
Definition at line 494 of file matrix_lib.h.
|
private |
The matrix in use.
Definition at line 499 of file matrix_lib.h.
|
private |
The preconditioner to use.
Definition at line 504 of file matrix_lib.h.
1.8.6