PreconditionBlockSSOR< MATRIX, inverse_type > Class Template Reference
[Preconditioners]

Inheritance diagram for PreconditionBlockSSOR< MATRIX, inverse_type >:
Inheritance graph
[legend]

List of all members.

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

Detailed Description

template<class MATRIX, typename inverse_type = typename MATRIX::value_type>
class PreconditionBlockSSOR< MATRIX, inverse_type >

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.

Note:
Instantiations for this template are provided for <float> and <double>; others can be generated in application programs (see the section on Template instantiations in the manual).
Author:
Ralf Hartmann, Guido Kanschat, 1999, 2000

Member Typedef Documentation

template<class MATRIX, typename inverse_type = typename MATRIX::value_type>
typedef MATRIX::value_type PreconditionBlockSSOR< MATRIX, inverse_type >::number

Define number type of matrix.

Reimplemented from PreconditionBlockSOR< MATRIX, inverse_type >.


Constructor & Destructor Documentation

template<class MATRIX, typename inverse_type = typename MATRIX::value_type>
PreconditionBlockSSOR< MATRIX, inverse_type >::PreconditionBlockSSOR (  ) 

Constructor.


Member Function Documentation

template<class MATRIX, typename inverse_type = typename MATRIX::value_type>
template<typename number2 >
void PreconditionBlockSSOR< MATRIX, inverse_type >::vmult ( Vector< number2 > &  ,
const Vector< number2 > &   
) const [inline]

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 >.

template<class MATRIX, typename inverse_type = typename MATRIX::value_type>
template<typename number2 >
void PreconditionBlockSSOR< MATRIX, inverse_type >::Tvmult ( Vector< number2 > &  ,
const Vector< number2 > &   
) const [inline]

The documentation for this class was generated from the following file:

deal.II documentation generated on Mon Nov 23 22:58:00 2009 by doxygen 1.6.1