Levenberg |
public class LevenbergMarquardtMinimizerNonAllocating : NonlinearMinimizerBaseNonAllocating
The LevenbergMarquardtMinimizerNonAllocating type exposes the following members.
| Name | Description | |
|---|---|---|
| LevenbergMarquardtMinimizerNonAllocating | Initializes a new instance of the LevenbergMarquardtMinimizerNonAllocating class |
| Name | Description | |
|---|---|---|
| FunctionTolerance |
Gets or sets the stopping threshold for the function value or L2 norm of the residuals.
(Inherited from NonlinearMinimizerBaseNonAllocating) | |
| GradientTolerance |
Gets or sets the stopping threshold for the infinity norm of the gradient.
(Inherited from NonlinearMinimizerBaseNonAllocating) | |
| InitialMu | Gets or sets the scale factor for the initial mu. | |
| IsBounded |
Gets a value indicating whether bounded optimization is active (bounds and/or scales are configured).
(Inherited from NonlinearMinimizerBaseNonAllocating) | |
| LowerBound |
Gets the lower bound of the parameters.
(Inherited from NonlinearMinimizerBaseNonAllocating) | |
| MaximumIterations |
Gets or sets the maximum number of iterations. If , the maximum number of iterations is determined automatically.
(Inherited from NonlinearMinimizerBaseNonAllocating) | |
| MinimalRSSImprovement |
Gets or sets the minimal RSS improvement.
(Inherited from NonlinearMinimizerBaseNonAllocating) | |
| ParameterScaleUpdatePeriod | Gets or sets the number of iterations after which the parameter scale is updated (if no user-provided scale was set). The default value is 1, which means the parameter scale is updated in each iteration. Set the value to MaxValue if no scale update is necessary. | |
| Scales |
Gets the scale factors for the parameters.
(Inherited from NonlinearMinimizerBaseNonAllocating) | |
| StepTolerance |
Gets or sets the stopping threshold for the L2 norm of the change of the parameters.
(Inherited from NonlinearMinimizerBaseNonAllocating) | |
| UpperBound |
Gets the upper bound of the parameters.
(Inherited from NonlinearMinimizerBaseNonAllocating) |
| Name | Description | |
|---|---|---|
| Equals | Determines whether the specified object is equal to the current object. (Inherited from Object) | |
| EvaluateFunction |
Evaluates the objective function at the provided internal parameter values.
(Inherited from NonlinearMinimizerBaseNonAllocating) | |
| EvaluateJacobian(IObjectiveModelNonAllocating, IReadOnlyListDouble) | Evaluates the Jacobian-derived gradient and Hessian of the objective function. | |
| EvaluateJacobian(IObjectiveModelNonAllocating, IReadOnlyListDouble, VectorDouble) |
Evaluates the Jacobian-derived gradient and the Hessian of the objective function.
(Inherited from NonlinearMinimizerBaseNonAllocating) | |
| Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object) | |
| FindMinimum(IObjectiveModelNonAllocating, IReadOnlyListDouble, CancellationToken, ActionInt32, Double, IReadOnlyListDouble) | Non-linear least squares fitting by the Levenberg-Marquardt algorithm. | |
| FindMinimum(IObjectiveModelNonAllocating, IReadOnlyListDouble, IReadOnlyListNullableDouble, IReadOnlyListNullableDouble, IReadOnlyListDouble, IReadOnlyListBoolean, CancellationToken, ActionInt32, Double, IReadOnlyListDouble) | Non-linear least squares fitting by the Levenberg-Marquardt algorithm. | |
| FindMinimum(IObjectiveModelNonAllocating, Double, NullableDouble, NullableDouble, Double, Boolean, CancellationToken, ActionInt32, Double, IReadOnlyListDouble) | Non-linear least squares fitting by the Levenberg-Marquardt algorithm. | |
| GetHashCode | Serves as the default hash function. (Inherited from Object) | |
| GetType | Gets the Type of the current instance. (Inherited from Object) | |
| MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object) | |
| Minimum | Non-linear least squares fitting by the Levenberg-Marquardt algorithm. | |
| ProjectToExternalParameters |
Projects internal to external parameters.
(Inherited from NonlinearMinimizerBaseNonAllocating) | |
| ProjectToInternalParameters |
Projects external to internal parameters.
(Inherited from NonlinearMinimizerBaseNonAllocating) | |
| ScaleFactorsOfJacobian |
Calculates the scale factor of the Jacobian, taking into account the parameter transformations and the parameter scales.
(Inherited from NonlinearMinimizerBaseNonAllocating) | |
| ToString | Returns a string that represents the current object. (Inherited from Object) | |
| ValidateBounds |
Validates and stores parameter bounds and scale factors.
(Inherited from NonlinearMinimizerBaseNonAllocating) |
| Name | Description | |
|---|---|---|
| DefaultInitialMu | The default scale factor for the initial mu. |
References:
[1]. Madsen, K., H. B. Nielsen, and O. Tingleff, "Methods for Non-Linear Least Squares Problems. Technical University of Denmark, 2004. Lecture notes." (2004), Available online from: http://orbit.dtu.dk/files/2721358/imm3215.pdf
[2]. Gavin, Henri, "The Levenberg-Marquardt method for nonlinear least squares curve-fitting problems." Department of Civil and Environmental Engineering, Duke University (2017): 1-19, Available online from: http://people.duke.edu/~hpgavin/ce281/lm.pdf