Class SecondOrderApproximation<N extends Comparable<N>>

java.lang.Object
org.ojalgo.function.multiary.ApproximateFunction<N>
org.ojalgo.function.multiary.SecondOrderApproximation<N>
All Implemented Interfaces:
BasicFunction, BasicFunction.PlainUnary<Access1D<N>,N>, MultiaryFunction<N>, MultiaryFunction.TwiceDifferentiable<N>

public final class SecondOrderApproximation<N extends Comparable<N>> extends ApproximateFunction<N>
  • Field Details

  • Constructor Details

  • Method Details

    • arity

      public int arity()
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class ApproximateFunction<N extends Comparable<N>>
    • getGradient

      public MatrixStore<N> getGradient(Access1D<N> point)
      Description copied from interface: MultiaryFunction.TwiceDifferentiable

      The gradient of a scalar field is a vector field that points in the direction of the greatest rate of increase of the scalar field, and whose magnitude is that rate of increase.

      The Jacobian is a generalization of the gradient. Gradients are only defined on scalar-valued functions, but Jacobians are defined on vector- valued functions. When f is real-valued (i.e., f : Rn → R) the derivative Df(x) is a 1 × n matrix, i.e., it is a row vector. Its transpose is called the gradient of the function: ∇f(x) = Df(x)T , which is a (column) vector, i.e., in Rn. Its components are the partial derivatives of f:

      The first-order approximation of f at a point x ∈ int dom f can be expressed as (the affine function of z) f(z) = f(x) + ∇f(x)T (z − x).

    • getHessian

      public MatrixStore<N> getHessian(Access1D<N> point)
      Description copied from interface: MultiaryFunction.TwiceDifferentiable

      The Hessian matrix or Hessian is a square matrix of second-order partial derivatives of a function. It describes the local curvature of a function of many variables. The Hessian is the Jacobian of the gradient.

      The second-order approximation of f, at or near x, is the quadratic function of z defined by f(z) = f(x) + ∇f(x)T (z − x) + (1/2)(z − x)T ∇2f(x)(z − x)

    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class ApproximateFunction<N extends Comparable<N>>
    • invoke

      public N invoke(Access1D<N> arg)
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • factory

      PhysicalStore.Factory<N,?> factory()
      Specified by:
      factory in class ApproximateFunction<N extends Comparable<N>>