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_ITER
The default maximum number of iterations.
Protected fieldStatic memberDEFAULT_TAU
Used in initializing mu.
Protected fieldStatic memberDEFAULT_TOLERANCE
The 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