TrilinosWrappers::PreconditionSOR Class Reference
[TrilinosWrappersPreconditioners]

Inheritance diagram for TrilinosWrappers::PreconditionSOR:

Inheritance graph
[legend]

List of all members.

Classes

struct  AdditionalData

Public Member Functions

void initialize (const SparseMatrix &matrix, const AdditionalData &additional_data=AdditionalData())

Private Attributes

Teuchos::RCP
< Ifpack_Preconditioner > 
ifpack


Detailed Description

A wrapper class for a (pointwise) SOR preconditioner for Trilinos matrices. This preconditioner works both in serial and in parallel, depending on the matrix it is based on.

The AdditionalData data structure allows to set preconditioner options. For the SOR preconditioner, these options are the damping/relaxation parameter omega, a min_diagonal argument that can be used to make the preconditioner work even if the matrix contains some zero elements on the diagonal, and a parameter overlap that determines if and how much overlap there should be between the matrix partitions on the various MPI processes. The default settings are 1 for the relaxation parameter, 0 for the diagonal augmentation and 0 for the overlap.

Note that a parallel applicatoin of the SOR preconditioner is actually a block-Jacobi preconditioner with block size equal to the local matrix size. Spoken more technically, this parallel operation is an additive Schwarz method with an SOR approximate solve as inner solver, based on the outer parallel partitioning.

Author:
Martin Kronbichler, 2008

Member Function Documentation

void TrilinosWrappers::PreconditionSOR::initialize ( const SparseMatrix matrix,
const AdditionalData additional_data = AdditionalData() 
)

Take the sparse matrix the preconditioner object should be built of, and additional flags (damping parameter, overlap in parallel computations etc.) if there are any.


Member Data Documentation

Teuchos::RCP<Ifpack_Preconditioner> TrilinosWrappers::PreconditionSOR::ifpack [private]

This is a pointer to the Ifpack data contained in this preconditioner.


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

deal.II documentation generated on Sat Aug 15 16:52:52 2009 by doxygen 1.5.9