Click or drag to resize

LevenbergMarquardtMinimizer Class

Class for minimizing the L2 norm of a function using the Levenberg Marquardt algorithm.
Inheritance Hierarchy
SystemObject
  CenterSpace.NMath.CoreLevenbergMarquardtMinimizer

Namespace: CenterSpace.NMath.Core
Assembly: NMath (in NMath.dll) Version: 7.4
Syntax
[SerializableAttribute]
public class LevenbergMarquardtMinimizer : INonlinearLeastSqMinimizer, 
	ICloneable

The LevenbergMarquardtMinimizer type exposes the following members.

Constructors
 NameDescription
Public methodLevenbergMarquardtMinimizer Constructs a LevenbergMarquardtMinimizer object from the given information.
Public methodLevenbergMarquardtMinimizer(Double) Constructs a LevenbergMarquardtMinimizer object from the given information.
Public methodLevenbergMarquardtMinimizer(Int32) Constructs a LevenbergMarquardtMinimizer object from the given information.
Public methodLevenbergMarquardtMinimizer(Int32, Double, Double) Constructs a LevenbergMarquardtMinimizer object from the given information.
Top
Properties
 NameDescription
Public propertyStatic memberDefaultMaxIterations Gets and sets the default maximum number of iterations.
Public propertyStatic memberDefaultTau Gets and sets the default value of tau.
Public propertyStatic memberDefaultTolerance Gets and sets the default error tolerance.
Public propertyFinalResidual Gets the final L2 norm, or residual, of the function being minimized.
Public propertyGradientTolerance Gets and sets the gradient tolerance. Iteration will stop when the infinity norm of the gradient used in calculating the next step falls below this value.
Public propertyInitialResidual Gets the residual associated with the starting point.
Public propertyIterations Gets the number of iterations performed.
Public propertyMaxIterations Gets and sets the maximum number of iterations to perform.
Public propertyMaxIterationsMet Returns true if the minimum just computed stopped because the maximum number of iterations was reached; otherwise, false.
Public propertySolutionDeltaTolerance Gets and sets the solution tolerance. Iteration will stop when the L2 norm of the step size falls below this value.
Public propertyTau Gets and sets the value of tau.
Top
Methods
 NameDescription
Public methodClone Returns a deep copy of self.
Public methodMinimize Minimizes the L2 norm of the given function near the given starting point.
Public methodSetAllTolerances Sets both the gradient and solution delta tolerances to the given value.
Top
Fields
 NameDescription
Protected fieldStatic memberDEFAULT_MAX_ITERThe default maximum number of iterations.
Protected fieldStatic memberDEFAULT_TAU Used in initializing mu.
Protected fieldStatic memberDEFAULT_TOLERANCEThe default error tolerance to use for both gradient and solution delta
Protected fieldStatic memberMAX_JACOBAIN_DIAG Used in initializing mu. mu is a tau_ times the maximum diagonal element of the jacobian at the starting piont x0. To make sure this value does not get too large (resulting in a too small initial step size) cap its value.
Top
See Also