Package org.ojalgo.matrix.task.iterative
Class GaussSeidelSolver
- java.lang.Object
-
- org.ojalgo.matrix.task.iterative.IterativeSolverTask
-
- org.ojalgo.matrix.task.iterative.StationaryIterativeSolver
-
- org.ojalgo.matrix.task.iterative.GaussSeidelSolver
-
- All Implemented Interfaces:
IterativeSolverTask.SparseDelegate
,MatrixTask<java.lang.Double>
,SolverTask<java.lang.Double>
public final class GaussSeidelSolver extends StationaryIterativeSolver implements IterativeSolverTask.SparseDelegate
For solving [A][x]=[b] where [A] has non-zero elements on the diagonal.To guarantee convergence [A] needs to be either strictly diagonally dominant, or symmetric and positive definite.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.ojalgo.matrix.task.iterative.IterativeSolverTask
IterativeSolverTask.Configurator, IterativeSolverTask.SparseDelegate
-
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 double
resolve(java.util.List<Equation> equations, PhysicalStore<java.lang.Double> solution)
MatrixStore<java.lang.Double>
solve(Access2D<?> body, Access2D<?> rhs, PhysicalStore<java.lang.Double> current)
Exactly how (if at all) a specific implementation makes use ofpreallocated
is not specified by this interface.-
Methods inherited from class org.ojalgo.matrix.task.iterative.StationaryIterativeSolver
getRelaxationFactor, setRelaxationFactor
-
Methods inherited from class org.ojalgo.matrix.task.iterative.IterativeSolverTask
configurator, debug, getAccuracyContext, getIterationsLimit, isDebugPrinterSet, preallocate, setAccuracyContext, setDebugPrinter, setIterationsLimit, solve, toListOfRows
-
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.iterative.IterativeSolverTask.SparseDelegate
resolve
-
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:
resolve
in interfaceIterativeSolverTask.SparseDelegate
-
solve
public MatrixStore<java.lang.Double> solve(Access2D<?> body, Access2D<?> rhs, PhysicalStore<java.lang.Double> current) throws RecoverableCondition
Description copied from interface:SolverTask
Exactly how (if at all) a specific implementation makes use of
preallocated
is not specified by this interface. It must be documented for each implementation.Should produce the same results as calling
SolverTask.solve(Access2D, Access2D)
.Use
SolverTask.preallocate(Structure2D, Structure2D)
to obtain a suitbalepreallocated
.- Specified by:
solve
in interfaceSolverTask<java.lang.Double>
rhs
- The Right Hand Side, wont be modfiedcurrent
- Preallocated memory for the results, possibly some intermediate results. You must assume this is modified, but you cannot assume it will contain the full/ /correct solution.- Returns:
- The solution
- Throws:
RecoverableCondition
-
-