# Newton's Method

This module demonstrates Newton's method for solving a system of
nonlinear equations *f* (*x*, *y*) =
**0** in two dimensions. Given an approximate solution,
Newton's method produces a new approximate solution based on local
linearization about the current point using the Jacobian matrix, which
results in a linear system to be solved for the step to the new
approximate solution. This process is repeated until convergence,
which is usually very rapid.

The user selects a problem either by choosing a preset example or
typing in desired functions *f*_{1}(*x*,
*y*) and *f*_{2}(*x*,
*y*). The user can also select a starting point
(*x*, *y*) or accept a default value. The
successive steps of Newton's method are then carried out sequentially
by repeatedly clicking on NEXT or on the currently highlighted step.
The current point (*x*, *y*) is indicated by a
bullet on the plot, and all values are also shown numerically in the
table below. At each iteration of Newton's method, the Newton step
*s* to the next approximate solution is given by the
solution to the approximating linear system *J*
*s* = − *f*, where *J*
is the Jacobian matrix of *f*, and the process is
then repeated. If the starting guess is close enough to the true
solution, then Newton's method converges to it, typically with a
quadratic convergence rate.

**Reference:** Michael T. Heath, *Scientific Computing,
An Introductory Survey*, 2nd edition, McGraw-Hill, New York,
2002. See Section 5.6.2, especially Algorithm 5.4 and Example 5.15.

**Developers:** Jeffrey Naisbitt and Michael Heath