Version 2.0.0
23rd May 2022 User documentation
 Recent Changes

Code Download
 Double
NS23: Sparse nonlinear overdetermined equations: Marquardt method
To solve a system of \(m\) nonlinear equations in \(n\) unknowns, \(\boldsymbol x = x_1 , x_2 ,\ldots, x_n\) of the form \[r_i (\boldsymbol x) = f_i (\boldsymbol x) + \sum_{j=1}^n a_{ij} x_j = 0 \qquad i=1,2,..., m \qquad m\ge n\] where the matrices \(\boldsymbol A = \left\{a_{ij} \right\}_{m \times n}\) and \(\boldsymbol J = \left\{\partial f_i / \partial x_j \right\}_{m\times n}\) are sparse.
The overdetermined case, \(m>n\), is handled by taking the solution to be that which minimizes the sum of squares \[S = \sum_{i=1}^m {r_i (\boldsymbol x)}^2.\] his makes the routine suitable for the nonlinear data fitting problem and parameter variances and covariances can be generated. Derivatives are optional and when not provided by the user are estimated using a definite difference approximation.
The algorithm is based on Fletcherâ€™s version of the Marquardt method.
The user must supply the matrix \(\boldsymbol A\) in a condensed form, an initial estimate of \(\boldsymbol x\), and code to calculate \(f_i (\boldsymbol x)\) and optionally the matrix \(\boldsymbol J\).