
Public Types | |
| typedef MATRIX::value_type | number |
Public Member Functions | |
| PreconditionBlockSSOR () | |
| template<typename number2 > | |
| void | vmult (Vector< number2 > &, const Vector< number2 > &) const |
| template<typename number2 > | |
| void | Tvmult (Vector< number2 > &, const Vector< number2 > &) const |
| template<typename number2 > | |
| void | step (Vector< number2 > &dst, const Vector< number2 > &rhs) const |
| template<typename number2 > | |
| void | Tstep (Vector< number2 > &dst, const Vector< number2 > &rhs) const |
Block SSOR preconditioning.
The functions vmult and Tvmult execute a block-SSOR step, based on the implementation in PreconditionBlockSOR. This class requires storage of the diagonal blocks and their inverses.
See PreconditionBlock for requirements on the matrix. The blocks used in this class must be contiguous and non-overlapping. An overlapping Schwarz relaxation method can be found in RelaxationBlockSSOR; that class does not offer preconditioning, though.
<float> and <double>; others can be generated in application programs (see the section on Template instantiations in the manual).Definition at line 945 of file precondition_block.h.
| typedef MATRIX::value_type PreconditionBlockSSOR< MATRIX, inverse_type >::number |
Define number type of matrix.
Reimplemented from PreconditionBlockSOR< MATRIX, inverse_type >.
Definition at line 952 of file precondition_block.h.
| PreconditionBlockSSOR< MATRIX, inverse_type >::PreconditionBlockSSOR | ( | ) |
Constructor.
| void PreconditionBlockSSOR< MATRIX, inverse_type >::vmult | ( | Vector< number2 > & | , |
| const Vector< number2 > & | |||
| ) | const |
Execute block SSOR preconditioning.
This function will automatically use the inverse matrices if they exist, if not then BlockSOR will waste much time inverting the diagonal block matrices in each preconditioning step.
Reimplemented from PreconditionBlockSOR< MATRIX, inverse_type >.
| void PreconditionBlockSSOR< MATRIX, inverse_type >::Tvmult | ( | Vector< number2 > & | , |
| const Vector< number2 > & | |||
| ) | const |
Same as vmult()
Reimplemented from PreconditionBlockSOR< MATRIX, inverse_type >.
| void PreconditionBlockSSOR< MATRIX, inverse_type >::step | ( | Vector< number2 > & | dst, |
| const Vector< number2 > & | rhs | ||
| ) | const |
Perform one step of the SOR iteration.
Reimplemented from PreconditionBlockSOR< MATRIX, inverse_type >.
| void PreconditionBlockSSOR< MATRIX, inverse_type >::Tstep | ( | Vector< number2 > & | dst, |
| const Vector< number2 > & | rhs | ||
| ) | const |
Perform one step of the transposed SOR iteration.
Reimplemented from PreconditionBlockSOR< MATRIX, inverse_type >.
documentation generated on Fri Feb 3 2012 06:04:10 by
doxygen
1.7.2