SuanShu, a Java numerical and statistical library

com.numericalmethod.suanshu.matrix.doubles.matrixtype.sparse.solver.iterative.preconditioner
Class SsorPreconditioner

java.lang.Object
  extended by com.numericalmethod.suanshu.matrix.doubles.matrixtype.sparse.solver.iterative.preconditioner.SsorPreconditioner
All Implemented Interfaces:
Preconditioner

public class SsorPreconditioner
extends java.lang.Object
implements Preconditioner

SSOR preconditioner is derived from the symmetric coefficient matrix A which is decomposed as

A = D + L + Lt
The SSOR preconditioning matrix is defined as
M = (D + L)D-1(D + L)t
or, parameterized by ω
M(ω) = (1/(2 - ω))(D / ω + L)(D / ω)-1(D / ω + L)t

The optimal value of ω will reduce the number of iterations to a lower order. However, in practice, the spectral information for computing the optimal ω is expensive to obtain.

See Also:
SymmetricSuccessiveOverrelaxationSolver

Constructor Summary
SsorPreconditioner(Matrix A, double omega)
          Create a SSOR preconditioner with a symmetric coefficient matrix.
 
Method Summary
 Vector solve(Vector x)
          Solve Mz = x using this SSOR preconditioner.
 Vector transposeSolve(Vector x)
          M-tx = M-1x because M is symmetric.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SsorPreconditioner

public SsorPreconditioner(Matrix A,
                          double omega)
Create a SSOR preconditioner with a symmetric coefficient matrix.

Parameters:
A - the symmetric coefficient matrix
omega - the extrapolation factor
Method Detail

solve

public Vector solve(Vector x)
Solve Mz = x using this SSOR preconditioner.

Specified by:
solve in interface Preconditioner
Parameters:
x -
Returns:
M-1x

transposeSolve

public Vector transposeSolve(Vector x)
M-tx = M-1x because M is symmetric.

Specified by:
transposeSolve in interface Preconditioner
Parameters:
x - the input Vector
Returns:
solve(x)

SuanShu, a Java numerical and statistical library

Copyright © 2011 Numerical Method Inc. Ltd. All Rights Reserved.