- java.lang.Object
-
- org.ojalgo.matrix.task.iterative.IterativeSolverTask
-
- org.ojalgo.matrix.task.iterative.GaussSeidelSolver
-
- All Implemented Interfaces:
MatrixTask<java.lang.Double>,SolverTask<java.lang.Double>
public final class GaussSeidelSolver extends IterativeSolverTask
Stationary Gauss–Seidel iteration for solving [A][x]=[b] with non-zero diagonal entries.Convergence
- Converges for strictly diagonally dominant systems and for symmetric positive-definite (SPD) matrices.
- Behaviour depends on ordering and scaling; preconditioning is not applied in this stationary method.
- Ignores any configured
Preconditioner; use the relaxation factor to control convergence speed.
When to use
- As a simple in-place fixed-point iteration when sequential updates are acceptable.
- Prefer over fully synchronous updates when in-place coupling improves convergence.
- For large SPD problems needing faster convergence, Krylov methods often perform better.
- If fully synchronous updates or trivial parallelism are required, consider a synchronous fixed-point method.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.ojalgo.matrix.task.iterative.IterativeSolverTask
IterativeSolverTask.Configurator
-
Nested classes/interfaces inherited from interface org.ojalgo.matrix.task.SolverTask
SolverTask.Factory<N extends java.lang.Comparable<N>>
-
-
Field Summary
-
Fields inherited from class org.ojalgo.matrix.task.iterative.IterativeSolverTask
DEFAULT
-
-
Constructor Summary
Constructors Constructor Description GaussSeidelSolver()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description doubleresolve(java.util.List<Equation> equations, PhysicalStore<java.lang.Double> solution)-
Methods inherited from class org.ojalgo.matrix.task.iterative.IterativeSolverTask
configurator, debug, getAccuracyContext, getIterationsLimit, getPreconditioner, getRelaxationFactor, isDebugPrinterSet, preallocate, resolve, setAccuracyContext, setDebugPrinter, setIterationsLimit, setPreconditioner, setRelaxationFactor, solve, solve, toListOfRows, worker
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.ojalgo.matrix.task.SolverTask
preallocate, solve, toSolutionProvider
-
-
-
-
Method Detail
-
resolve
public double resolve(java.util.List<Equation> equations, PhysicalStore<java.lang.Double> solution)
- Specified by:
resolvein classIterativeSolverTask
-
-