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 Type
    Method
    Description
    double[]
    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.
  • 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.