Click or drag to resize

FindMinimumOfFunctionGradientHessian(FuncVectorDouble, Double, FuncVectorDouble, VectorDouble, FuncVectorDouble, MatrixDouble, VectorDouble, Double, Int32) Method

Find vector x that minimizes the function f(x) using the Newton algorithm. For more options and diagnostics consider to use NewtonMinimizer directly.

Namespace: Altaxo.Calc
Assembly: AltaxoCore (in AltaxoCore.dll) Version: 4.8.3179.0 (4.8.3179.0)
Syntax
C#
public static Vector<double> OfFunctionGradientHessian(
	Func<Vector<double>, double> function,
	Func<Vector<double>, Vector<double>> gradient,
	Func<Vector<double>, Matrix<double>> hessian,
	Vector<double> initialGuess,
	double gradientTolerance = 1E-08,
	int maxIterations = 1000
)

Parameters

function  FuncVectorDouble, Double

[Missing <param name="function"/> documentation for "M:Altaxo.Calc.FindMinimum.OfFunctionGradientHessian(System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},System.Double},System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},Altaxo.Calc.LinearAlgebra.Vector{System.Double}},System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},Altaxo.Calc.LinearAlgebra.Matrix{System.Double}},Altaxo.Calc.LinearAlgebra.Vector{System.Double},System.Double,System.Int32)"]

gradient  FuncVectorDouble, VectorDouble

[Missing <param name="gradient"/> documentation for "M:Altaxo.Calc.FindMinimum.OfFunctionGradientHessian(System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},System.Double},System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},Altaxo.Calc.LinearAlgebra.Vector{System.Double}},System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},Altaxo.Calc.LinearAlgebra.Matrix{System.Double}},Altaxo.Calc.LinearAlgebra.Vector{System.Double},System.Double,System.Int32)"]

hessian  FuncVectorDouble, MatrixDouble

[Missing <param name="hessian"/> documentation for "M:Altaxo.Calc.FindMinimum.OfFunctionGradientHessian(System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},System.Double},System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},Altaxo.Calc.LinearAlgebra.Vector{System.Double}},System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},Altaxo.Calc.LinearAlgebra.Matrix{System.Double}},Altaxo.Calc.LinearAlgebra.Vector{System.Double},System.Double,System.Int32)"]

initialGuess  VectorDouble

[Missing <param name="initialGuess"/> documentation for "M:Altaxo.Calc.FindMinimum.OfFunctionGradientHessian(System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},System.Double},System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},Altaxo.Calc.LinearAlgebra.Vector{System.Double}},System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},Altaxo.Calc.LinearAlgebra.Matrix{System.Double}},Altaxo.Calc.LinearAlgebra.Vector{System.Double},System.Double,System.Int32)"]

gradientTolerance  Double  (Optional)

[Missing <param name="gradientTolerance"/> documentation for "M:Altaxo.Calc.FindMinimum.OfFunctionGradientHessian(System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},System.Double},System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},Altaxo.Calc.LinearAlgebra.Vector{System.Double}},System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},Altaxo.Calc.LinearAlgebra.Matrix{System.Double}},Altaxo.Calc.LinearAlgebra.Vector{System.Double},System.Double,System.Int32)"]

maxIterations  Int32  (Optional)

[Missing <param name="maxIterations"/> documentation for "M:Altaxo.Calc.FindMinimum.OfFunctionGradientHessian(System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},System.Double},System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},Altaxo.Calc.LinearAlgebra.Vector{System.Double}},System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},Altaxo.Calc.LinearAlgebra.Matrix{System.Double}},Altaxo.Calc.LinearAlgebra.Vector{System.Double},System.Double,System.Int32)"]

Return Value

VectorDouble

[Missing <returns> documentation for "M:Altaxo.Calc.FindMinimum.OfFunctionGradientHessian(System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},System.Double},System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},Altaxo.Calc.LinearAlgebra.Vector{System.Double}},System.Func{Altaxo.Calc.LinearAlgebra.Vector{System.Double},Altaxo.Calc.LinearAlgebra.Matrix{System.Double}},Altaxo.Calc.LinearAlgebra.Vector{System.Double},System.Double,System.Int32)"]

See Also