Package com.irurueta.numerical.fitting
Interface LevenbergMarquardtMultiDimensionFunctionEvaluator
public interface LevenbergMarquardtMultiDimensionFunctionEvaluator
Interface to evaluate non-linear multidimensional functions.
Evaluation of functions requires both function value at provided point x and
function gradient respect to its parameters (i.e. derivatives respect to its
parameters).
-
Method Summary
Modifier and TypeMethodDescriptiondouble[]
Creates array where estimated parameters will be stored.double
evaluate
(int i, double[] point, double[] params, double[] derivatives) Evaluates a non-linear multi dimension function at provided point using provided parameters and returns its evaluation and derivatives of the function respect the function parameters.int
Number of dimensions of points (i.e. length of arrays) evaluated by this function evaluator.
-
Method Details
-
getNumberOfDimensions
int getNumberOfDimensions()Number of dimensions of points (i.e. length of arrays) evaluated by this function evaluator.- Returns:
- number of dimensions of points.
-
createInitialParametersArray
double[] createInitialParametersArray()Creates array where estimated parameters will be stored. This array MUST contain the initial guessed solution for the Levenberg- Marquardt algorithm.- Returns:
- array where estimated parameters will be stored.
-
evaluate
double evaluate(int i, double[] point, double[] params, double[] derivatives) throws EvaluationException Evaluates a non-linear multi dimension function at provided point using provided parameters and returns its evaluation and derivatives of the function respect the function parameters.- Parameters:
i
- number of sample being evaluated.point
- point where function will be evaluated.params
- initial parameters estimation to be tried. These will change as the Levenberg-Marquard algorithm iterates to the best solution. These are used as input parameters along with point to evaluate function.derivatives
- partial derivatives of the function respect to each provided parameter.- Returns:
- function evaluation at provided point.
- Throws:
EvaluationException
- raised if something failed during the evaluation.
-