Class NumericalGradientFB

java.lang.Object
org.ddogleg.optimization.derivative.NumericalGradientFB
All Implemented Interfaces:
FunctionNtoN

public class NumericalGradientFB extends Object implements FunctionNtoN
Finite difference numerical gradient calculation using the forward+backwards equation. Difference equation, f'(x) = (f(x+h)-f(x-h))/(2*h). Scaling is taken in account by h based upon the magnitude of the elements in variable x.

NOTE: If multiple input parameters are modified by the function when a single one is changed numerical derivatives aren't reliable.

  • Constructor Details

    • NumericalGradientFB

      public NumericalGradientFB(FunctionNtoS function, double differenceScale)
    • NumericalGradientFB

      public NumericalGradientFB(FunctionNtoS function)
  • Method Details

    • getN

      public int getN()
      Description copied from interface: FunctionNtoN
      Returns the number of inputs and outputs for this function.
      Specified by:
      getN in interface FunctionNtoN
    • process

      public void process(double[] input, double[] output)
      Description copied from interface: FunctionNtoN
      Processes the function.
      Specified by:
      process in interface FunctionNtoN
      Parameters:
      input - Array with the inputs of length N. Not modified.
      output - Array for storing the output of length N. Modified.