cern.colt.matrix.tfloat.algo.solver
Class FloatChebyshev
java.lang.Object
cern.colt.matrix.tfloat.algo.solver.AbstractFloatIterativeSolver
cern.colt.matrix.tfloat.algo.solver.FloatChebyshev
- All Implemented Interfaces:
- FloatIterativeSolver
public class FloatChebyshev
- extends AbstractFloatIterativeSolver
Chebyshev solver. Solves the symmetric positive definite linear system
Ax = b
using the Preconditioned Chebyshev Method. Chebyshev
requires an acurate estimate on the bounds of the spectrum of the matrix.
- Author:
- Templates
FloatChebyshev
public FloatChebyshev(FloatMatrix1D template,
float eigmin,
float eigmax)
- Constructor for Chebyshev. Uses the given vector as template for creating
scratch vectors. Typically, the solution or the right hand side vector
can be passed, and the template is not modified. Eigenvalue estimates
must also be provided
- Parameters:
template
- Vector to use as template for the work vectors needed in the
solution processeigmin
- Smallest eigenvalue. Must be positiveeigmax
- Largest eigenvalue. Must be positive
setEigenvalues
public void setEigenvalues(float eigmin,
float eigmax)
- Sets the eigenvalue estimates.
- Parameters:
eigmin
- Smallest eigenvalue. Must be positiveeigmax
- Largest eigenvalue. Must be positive
solve
public FloatMatrix1D solve(FloatMatrix2D A,
FloatMatrix1D b,
FloatMatrix1D x)
throws IterativeSolverFloatNotConvergedException
- Description copied from interface:
FloatIterativeSolver
- Solves the given problem, writing result into the vector.
- Parameters:
A
- Matrix of the problemb
- Right hand sidex
- Solution is stored here. Also used as initial guess
- Returns:
- The solution vector x
- Throws:
IterativeSolverFloatNotConvergedException
Jump to the Parallel Colt Homepage