Solves a system of n nonlinear equations f(x) = 0 using a modified Powell hybrid algorithm.

Namespace: Imsl.Math
Assembly: ImslCS (in ImslCS.dll) Version: 6.5.0.0

Syntax

C#
[SerializableAttribute]
public class ZeroSystem
Visual Basic (Declaration)
<SerializableAttribute> _
Public Class ZeroSystem
Visual C++
[SerializableAttribute]
public ref class ZeroSystem

Remarks

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.

Inheritance Hierarchy

System..::.Object
Imsl.Math..::.ZeroSystem

See Also