This package holds the main interfaces and basic building block classes
dealing with differentiation.
The core class is
DerivativeStructure which holds the value and the differentials of a function. This class
handles some arbitrary number of free parameters and arbitrary differentiation order. It is used
both as the input and the output type for the
UnivariateDifferentiableFunction interface. Any differentiable function should implement this
Similar interfaces also exist for multivariate functions and for vector or matrix valued functions.
Interface Summary Interface Description MultivariateDifferentiableFunctionExtension of
MultivariateFunctionrepresenting a multivariate differentiable real function.
MultivariateVectorFunctionrepresenting a multivariate differentiable vectorial function.
UnivariateDifferentiableFunctionInterface for univariate functions derivatives. UnivariateDifferentiableMatrixFunctionExtension of
UnivariateMatrixFunctionrepresenting a univariate differentiable matrix function.
UnivariateVectorFunctionrepresenting a univariate differentiable vectorial function.
UnivariateFunctionDifferentiatorInterface defining the function differentiation operation. UnivariateMatrixFunctionDifferentiatorInterface defining the function differentiation operation. UnivariateVectorFunctionDifferentiatorInterface defining the function differentiation operation.
Class Summary Class Description DerivativeStructureClass representing both the value and the differentials of a function. DSCompilerClass holding "compiled" computation rules for derivative structures. FiniteDifferencesDifferentiatorUnivariate functions differentiator using finite differences. GradientFunctionClass representing the gradient of a multivariate function. JacobianFunctionClass representing the Jacobian of a multivariate vector function. SparseGradientFirst derivative computation with large number of variables.