|
OOFEM 3.0
|
#include <diagpre.h>
Public Member Functions | |
| DiagPreconditioner (const SparseMtrx &, InputRecord &attributes) | |
| Constructor. Initializes the the receiver (constructs the precontioning matrix M) of given matrix. | |
| DiagPreconditioner () | |
| Constructor. The user should call initializeFrom and init services in this given order to ensure consistency. | |
| virtual | ~DiagPreconditioner (void) |
| Destructor. | |
| void | init (const SparseMtrx &a) override |
| void | solve (const FloatArray &rhs, FloatArray &solution) const override |
| void | trans_solve (const FloatArray &rhs, FloatArray &solution) const override |
| const char * | giveClassName () const override |
| Returns the preconditioner name. | |
| Public Member Functions inherited from oofem::Preconditioner | |
| Preconditioner (const SparseMtrx &a, InputRecord &attributes) | |
| Preconditioner () | |
| virtual | ~Preconditioner (void) |
| Destructor. | |
| FloatArray | solve (const FloatArray &rhs) const |
| FloatArray | trans_solve (const FloatArray &rhs) const |
| virtual void | initializeFrom (InputRecord &ir) |
| Initializes receiver from given record. Empty implementation. | |
Private Attributes | |
| FloatArray | diag |
| oofem::DiagPreconditioner::DiagPreconditioner | ( | const SparseMtrx & | C, |
| InputRecord & | attributes ) |
Constructor. Initializes the the receiver (constructs the precontioning matrix M) of given matrix.
Definition at line 35 of file diagpre.C.
References diag, and oofem::Preconditioner::Preconditioner().
|
inline |
Constructor. The user should call initializeFrom and init services in this given order to ensure consistency.
Definition at line 51 of file diagpre.h.
References oofem::Preconditioner::Preconditioner().
|
inlinevirtual |
|
inlineoverridevirtual |
Returns the preconditioner name.
Reimplemented from oofem::Preconditioner.
|
overridevirtual |
Initializes the receiver (constructs the preconditioning matrix M) of given matrix. Virtual service, to be implemented by derived classes. Should be called after initializeFrom service.
| a | Sparse matrix to be preconditioned. |
Reimplemented from oofem::Preconditioner.
Definition at line 41 of file diagpre.C.
References oofem::SparseMtrx::at(), diag, oofem::SparseMtrx::giveNumberOfRows(), and OOFEM_ERROR.
|
overridevirtual |
Solves the linear system.
| rhs | Right hand side. |
| solution | Solution. |
Implements oofem::Preconditioner.
Definition at line 61 of file diagpre.C.
References diag, oofem::FloatArray::giveSize(), and oofem::FloatArray::resize().
|
overridevirtual |
Solves the transposed system.
| rhs | Right hand side. |
| solution | Solution. |
Implements oofem::Preconditioner.
Definition at line 71 of file diagpre.C.
References diag, oofem::FloatArray::giveSize(), and oofem::FloatArray::resize().
|
private |
Definition at line 45 of file diagpre.h.
Referenced by DiagPreconditioner(), init(), solve(), and trans_solve().