ZeroSystem Class |
Namespace: Imsl.Math
The ZeroSystem type exposes the following members.
Name | Description | |
---|---|---|
ZeroSystem |
Creates an object to find the zeros of a system of n equations.
|
Name | Description | |
---|---|---|
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
GetHashCode | Serves as a hash function for a particular type. (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.) | |
SetGuess |
Sets initial guess for the the solution.
| |
Solve |
Solve a system of nonlinear equations using the Levenberg-Marquardt
algorithm.
| |
ToString | Returns a string that represents the current object. (Inherited from Object.) |
Name | Description | |
---|---|---|
Logger |
The Logger associated with this object.
| |
MaximumIterations |
The maximum number of iterations allowed.
| |
RelativeError |
The relative error tolerance.
|
ZeroSystem is based on the MINPACK subroutine HYBRD1, which uses a modification of M.J.D. Powell's hybrid algorithm. This algorithm is a variation of Newton's method, which uses a finite-difference approximation to the Jacobian and takes precautions to avoid large step sizes or increasing residuals. For further description, see More et al. (1980).
A finite-difference method is used to estimate the Jacobian. Whenever the exact Jacobian can be easily provided, f should implement ZeroSystem.IJacobian.
Note that one can use logging to generate intermediate output for the solver. Accumulated levels of detail correspond to Config, Fine, Finer, and Finest logging levels with Config yielding the smallest amount of information and Finest yielding the most. The levels of output yield the following:
Level | Output |
---|---|
Config | Iteration increments are printed. |
Fine | Prints convergence tests. |
Finer | Intermediate solution values are provided. |
Finest | Tracks progress through internal methods. |