public abstract class MultivariableFunctionDifferentialSolver extends MultivariableFunctionSolver
MultivariableFunctionSolvers
that will solve a function
by iteration towards a solution. In each iteration, the change of the variable values will be evaluated, applied to the previous
variable values and repeated in the next iteration.
An instance of a type derived from this will pass in values of Variables
(get
) into a
SolvableMultivariableFunction
to drive them to satisfy this Constraints
(get
).Modifier | Constructor and Description |
---|---|
protected |
MultivariableFunctionDifferentialSolver()
Initializes a new instance.
|
protected |
MultivariableFunctionDifferentialSolver(MultivariableFunctionDifferentialSolver existingInstance,
CopyContext context)
Initializes a new instance as a copy of an existing instance.
|
Modifier and Type | Method and Description |
---|---|
abstract DifferentialCorrectorStepResult |
computeNextStep(double[] variableValues,
ITrackCalculationProgress progressTracker)
Computes the next differential step that this differential corrector should take.
|
boolean |
findSolution(int numberOfIterations,
boolean justFinalResult,
ITrackCalculationProgress progressTracker)
Solves the
function . |
checkConstraints, clone, dispose, dispose, findSolution, findSolution, getConstraints, getCurrentIteration, getFunction, getIsThreadSafe, getLastRunsResults, getMultithreaded, getVariables, reset, setCurrentIteration, setFunction, setLastRunsResults, setMultithreaded
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
close
protected MultivariableFunctionDifferentialSolver()
protected MultivariableFunctionDifferentialSolver(@Nonnull MultivariableFunctionDifferentialSolver existingInstance, @Nonnull CopyContext context)
See ICloneWithContext.clone(CopyContext)
for more information about how to implement this constructor
in a derived class.
existingInstance
- The existing instance to copy.context
- A CopyContext
that controls the depth of the copy.ArgumentNullException
- Thrown when existingInstance
or context
is null
.public boolean findSolution(int numberOfIterations, boolean justFinalResult, ITrackCalculationProgress progressTracker)
function
. This method must increment CurrentIteration
(get
/ set
)
as well as set LastRunsResults
(get
/ set
) before this method returns.findSolution
in class MultivariableFunctionSolver
numberOfIterations
- The number of iterations that may be performed while
attempting to find a solution.justFinalResult
- Tells this method to only include the final results, or
the results of each iteration.progressTracker
- An optional progress tracker.LastRunsResults
(get
/ set
)
for the results.public abstract DifferentialCorrectorStepResult computeNextStep(double[] variableValues, ITrackCalculationProgress progressTracker)
variableValues
- The current values of the variables.progressTracker
- An optional progress tracker.