public interface IterativeLinearSystemSolver
Preconditioner
can improve the rate of convergence of an
iterative method. A preconditioner transforms a linear system into one that
is equivalent in the sense that it has the same solution. The transformed
system has more favorable spectral properties which affect convergence rate.
In particular, a preconditioner M approximates the coefficient
matrix A, and the transformed system is easier to solve. For example,
M-1Ax = M-1bhas the same solution as the original system Ax = b. The spectral properties of its coefficient matrix M-1A may be more favorable. Another way of preconditioning a system is
M1-1AM2-1(M2x) = M1-1bThe matrices M1 and M2 are called left- and right preconditioners respectively. There are 3 kinds of preconditioning: left, right, or split. Left-preconditioning leaves M2 as
IdentityPreconditioner
. Similarly, right-preconditioning leaves
M1 as
IdentityPreconditioner
.Modifier and Type | Interface and Description |
---|---|
static interface |
IterativeLinearSystemSolver.Solution
This is the solution to a system of linear equations using an iterative
solver.
|
Modifier and Type | Method and Description |
---|---|
IterativeLinearSystemSolver.Solution |
solve(LSProblem problem,
IterationMonitor<Vector> monitor)
Solves iteratively
Ax = b
until the solution converges, i.e., the norm of residual
(b - Ax) is less than or equal to the threshold.
|
IterativeLinearSystemSolver.Solution solve(LSProblem problem, IterationMonitor<Vector> monitor) throws ConvergenceFailure
Ax = buntil the solution converges, i.e., the norm of residual (b - Ax) is less than or equal to the threshold.
problem
- a system of linear equationsmonitor
- an iteration monitorConvergenceFailure
- if the algorithm fails to convergeCopyright © 2010-2020 NM FinTech Ltd.. All Rights Reserved.