public final class JacobiSolver extends Object
| Modifier and Type | Class and Description |
|---|---|
static class |
IterativeSolverTask.Configurator |
SolverTask.Factory<N extends Number>BIG, COMPLEX, PRIMITIVE, QUATERNION, RATIONAL| Constructor and Description |
|---|
JacobiSolver() |
| Modifier and Type | Method and Description |
|---|---|
IterativeSolverTask.Configurator |
configurator() |
protected void |
debug(int iteration,
Access1D<?> current) |
protected NumberContext |
getAccuracyContext() |
protected int |
getIterationsLimit() |
double |
getRelaxationFactor() |
protected boolean |
isDebugPrinterSet() |
PhysicalStore<Double> |
preallocate(Structure2D templateBody,
Structure2D templateRHS)
Will create a PhysicalStore instance suitable for use with
SolverTask.solve(Access2D, Access2D, PhysicalStore). |
protected void |
setAccuracyContext(NumberContext accuracyContext) |
protected void |
setDebugPrinter(BasicLogger.Printer debugPrinter) |
protected void |
setIterationsLimit(int iterationsLimit) |
void |
setRelaxationFactor(double relaxation) |
MatrixStore<Double> |
solve(Access2D<?> body,
Access2D<?> rhs,
PhysicalStore<Double> current)
Exactly how (if at all) a specific implementation makes use of
preallocated is not
specified by this interface. |
Optional<MatrixStore<Double>> |
solve(MatrixStore<Double> body,
MatrixStore<Double> rhs) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitpreallocate, solvepublic final MatrixStore<Double> solve(Access2D<?> body, Access2D<?> rhs, PhysicalStore<Double> current) throws RecoverableCondition
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 suitbale preallocated.
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/final/correct solution.RecoverableConditionpublic final double getRelaxationFactor()
public final void setRelaxationFactor(double relaxation)
public final IterativeSolverTask.Configurator configurator()
public final PhysicalStore<Double> preallocate(Structure2D templateBody, Structure2D templateRHS)
SolverTask
Will create a PhysicalStore instance suitable for use with
SolverTask.solve(Access2D, Access2D, PhysicalStore). The dimensions of the returned instance is not
specified by this interface - it is specified by the behaviour/requirements of each implementation.
When solving an equation system [A][X]=[B] ([mxn][nxb]=[mxb]) the preallocated memory/matrix will typically be either mxb or nxb.
preallocate in interface SolverTask<Double>public final Optional<MatrixStore<Double>> solve(MatrixStore<Double> body, MatrixStore<Double> rhs)
protected final void debug(int iteration,
Access1D<?> current)
protected final NumberContext getAccuracyContext()
protected final int getIterationsLimit()
protected final boolean isDebugPrinterSet()
protected void setAccuracyContext(NumberContext accuracyContext)
protected void setDebugPrinter(BasicLogger.Printer debugPrinter)
protected void setIterationsLimit(int iterationsLimit)
Copyright © 2018 Optimatika. All rights reserved.