SuanShu, a Java numerical and statistical library

com.numericalmethod.suanshu.matrix.doubles.matrixtype.sparse.solver.iterative.preconditioner
Interface Preconditioner

All Known Implementing Classes:
IdentityPreconditioner, JacobiPreconditioner, SsorPreconditioner

public interface Preconditioner

Preconditioning is usually used to reduce the condition number of the coefficient matrix of a linear system, so as to accelerate the convergence when the system is solved by an iterative method.

See Also:
Wikipedia: Preconditioner

Method Summary
 Vector solve(Vector x)
          Solve Mv = x, where M is the preconditioner matrix.
 Vector transposeSolve(Vector x)
          Solve Mtv = x, where M is the preconditioner matrix.
 

Method Detail

solve

Vector solve(Vector x)
Solve Mv = x, where M is the preconditioner matrix. In effect, this method returns v as the product M-1x.

Parameters:
x - the input Vector
Returns:
M-1x

transposeSolve

Vector transposeSolve(Vector x)
Solve Mtv = x, where M is the preconditioner matrix. In effect, this method returns v as the product M-tx. This method is usually called by a IterativeSolver which also solves a dual system Atx* = b*. BiconjugateGradientSolver is an example of such solvers.

Parameters:
x - the input Vector
Returns:
M-tx

SuanShu, a Java numerical and statistical library

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