FunctionMath.GetNumericalJacobian(Func<Vector<Double>, Vector<Double>, Vector<Double>>, DifferencesDirection, Vector<Double>, Vector<Double>, Vector<Double>) Method

Returns a delegate that numerically evaluates the Jacobian of a multivariate vector function.

Definition

Namespace: Extreme.Mathematics
Assembly: Extreme.Numerics (in Extreme.Numerics.dll) Version: 8.1.23
C#
public static Func<Vector<double>, Matrix<double>, Matrix<double>> GetNumericalJacobian(
	this Func<Vector<double>, Vector<double>, Vector<double>> function,
	DifferencesDirection differencingMethod,
	Vector<double> lowerBounds,
	Vector<double> upperBounds,
	Vector<double> scale
)

Parameters

function  Func<Vector<Double>, Vector<Double>, Vector<Double>>
A delegate that represents a multivariate function returning a vector in its second argument.
differencingMethod  DifferencesDirection
The type of divided differences used to approximate the derivative.
lowerBounds  Vector<Double>
A vector containing lower bounds for the arguments. The function will not be evaluated past these bounds. May be null.
upperBounds  Vector<Double>
A vector containing upper bounds for the arguments. The function will not be evaluated past these bounds. May be null.
scale  Vector<Double>
A vector containing a scale factor for the step size for each argument.

Return Value

Func<Vector<Double>, Matrix<Double>, Matrix<Double>>
A delegate that represents a multivariate function returning a matrix in its second argument.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type Func<Vector<Double>, Vector<Double>, Vector<Double>>. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).

Remarks

If bounds are provided, the function is never evaluated outside these bounds. An alternative differencing method may be used if the bounds would be violated.

See Also