Click or drag to resize

LevenbergMarquardtMinimizerWithConstraintsNonAllocatingMinimum Method

Core Levenberg-Marquardt minimization with linear constraint projection.

Namespace: Altaxo.Calc.Optimization
Assembly: AltaxoCore (in AltaxoCore.dll) Version: 4.8.3618.0 (4.8.3618.0)
Syntax
C#
public NonlinearMinimizationResult Minimum(
	IObjectiveModelNonAllocating objective,
	IReadOnlyList<double> initialGuess,
	IReadOnlyList<double>? scales,
	IReadOnlyList<bool>? isFixedByUser,
	CancellationToken cancellationToken,
	Action<int, double, IReadOnlyList<double>>? reportChi2Progress,
	double initialMu,
	double gradientTolerance,
	double stepTolerance,
	double functionTolerance,
	double minimalRSSImprovement,
	int? maximumIterations
)

Parameters

objective  IObjectiveModelNonAllocating
The objective function.
initialGuess  IReadOnlyListDouble
Initial parameter values.
scales  IReadOnlyListDouble
Parameter scales, or for automatic scaling.
isFixedByUser  IReadOnlyListBoolean
Per-parameter fixed flags, or if none are fixed.
cancellationToken  CancellationToken
Cancellation token.
reportChi2Progress  ActionInt32, Double, IReadOnlyListDouble
Progress callback (may be ).
initialMu  Double
Initial LM damping factor.
gradientTolerance  Double
Stopping threshold: infinity norm of gradient.
stepTolerance  Double
Stopping threshold: relative parameter change.
functionTolerance  Double
Stopping threshold: RSS value.
minimalRSSImprovement  Double
Minimum relative RSS improvement over 8 iterations before stopping.
maximumIterations  NullableInt32
Maximum iterations. = auto. 0 = evaluation only.

Return Value

NonlinearMinimizationResult

[Missing <returns> documentation for "M:Altaxo.Calc.Optimization.LevenbergMarquardtMinimizerWithConstraintsNonAllocating.Minimum(Altaxo.Calc.Optimization.IObjectiveModelNonAllocating,System.Collections.Generic.IReadOnlyList{System.Double},System.Collections.Generic.IReadOnlyList{System.Double},System.Collections.Generic.IReadOnlyList{System.Boolean},System.Threading.CancellationToken,System.Action{System.Int32,System.Double,System.Collections.Generic.IReadOnlyList{System.Double}},System.Double,System.Double,System.Double,System.Double,System.Double,System.Nullable{System.Int32})"]

See Also