{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Newton's Method for Solving Equations"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Revised on Wednesday April 25**, just adding some references."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**References:**\n",
    "\n",
    "- Sections 1.2 *Fixed-Point Iteration* and 1.4 *Newton's Method* of [Sauer](../references.html#Sauer)\n",
    "- Sections 2.2 *Fixed-Point Iteration* and 2.3 *Newton's Method and Its Extensions* of [Burden&Faires](../references.html#Burden-Faires)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Introduction\n",
    "\n",
    "Newton's method for solving equations has a number of advantages over the bisection method:\n",
    "- It is usually faster (but not always, and it can even fail completely!)\n",
    "- It can also compute complex roots, such as the non-real roots of polynomial equations.\n",
    "- It can even be adapted to solving systems of non-linear equations; that topic wil be visited later."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [],
   "source": [
    "# We will often need resources from the modules numpy and pyplot:\n",
    "import numpy as np\n",
    "from matplotlib import pyplot as plt\n",
    "\n",
    "# We can also import items from a module individually, so they can be used by \"first name only\";\n",
    "from numpy import cos, sin\n",
    "\n",
    "# Since we do a lot of graphics in this section, some more short-hands:\n",
    "from matplotlib.pyplot import figure, plot, title, legend, grid\n",
    "from numpy import linspace\n",
    "\n",
    "# Also, some from the module for this book:\n",
    "from numerical_methods_module import newton"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Derivation as a contraction mapping with \"very small contraction coefficient $C$\"\n",
    "\n",
    "You might have previously seen Newton's method derived using tangent line approximations.\n",
    "That derivation is presented below,\n",
    "but first we approach it another way: as a particularly nice contraction mapping.\n",
    "\n",
    "To compute a root $r$ of a differentiable function $f$, we design a contraction mapping for which the contraction constant $C$ becomes arbitrarily small when we restrict to iterations in a sufficiently small interval around the root: $|x - r| \\leq R$.\n",
    "\n",
    "That is, the error ratio $|E_{k+1}|/|E_k|$ becomes ever smaller as the iterations get closer to the exact solution;\n",
    "the error is thus reducing ever faster than the above geometric rate $C^k$.\n",
    "\n",
    "This effect is in turn achieved by getting $|g'(x)|$ arbitrarily small for $|x - r| \\leq R$ with $R$ small enough,\n",
    "and then using the above connection between $g'(x)$ and $C$.\n",
    "This can be achieved by ensuring that $g'(r) = 0$ at a root $r$ of $f$ — so long as thr root $r$ is *simple*:\n",
    "$f'(r) \\neq 0$ (which is generically true, but not always).\n",
    "\n",
    "To do so, seek $g$ in the above form $g(x) = x - w(x)f(x)$, and choose $w(x)$ appropriately.\n",
    "At the root $r$,\n",
    "\n",
    "$$g'(r) = 1 - w'(r)f(r) - w(r)f'(r) = 1 - w(r)f'(r) \\quad\\text{(using } f(r) = 0,)$$\n",
    "\n",
    "so we ensure $g'(r) = 0$ by requiring $w(r) = 1/f'(r)$ (hence the problem if $f'(r) = 0$).\n",
    "\n",
    "We do not know $r$, but that does not matter!\n",
    "We can just choose $w(x) = 1/f'(x)$ for all $x$ values.\n",
    "That gives\n",
    "\n",
    "$$g(x) = x - {f(x)}/{f'(x)}$$\n",
    "\n",
    "and thus the iteration formula\n",
    "\n",
    "$$x_{k+1} = x_k - {f(x_k)}/{f'(x_k)}$$\n",
    "\n",
    "(That is, $g(x) = x - {f(x)}/{f'(x)}$.)\n",
    "\n",
    "You might recognize this as the formula for Newton's method."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "To explore some examples of this, here is a Python function implementing Newton's method."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [],
   "source": [
    "def newton(f, Df, x0, errorTolerance, maxIterations=20, demoMode=False):\n",
    "    \"\"\"Basic usage is:\n",
    "    (rootApproximation, errorEstimate, iterations) = newton(f, Df, x0, errorTolerance)\n",
    "    There is an optional input parameter \"demoMode\" which controls whether to\n",
    "    - print intermediate results (for \"study\" purposes), or to\n",
    "    - work silently (for \"production\" use).\n",
    "    The default is silence.\n",
    "    \"\"\"\n",
    "    if demoMode: print(\"Solving by Newton's Method.\")\n",
    "    x = x0\n",
    "    for k in range(maxIterations):\n",
    "        fx = f(x)\n",
    "        Dfx = Df(x)\n",
    "        # Note: a careful, robust code would check for the possibility of division by zero here,\n",
    "        # but for now I just want a simple presentation of the basic mathematical idea.\n",
    "        dx = fx/Dfx\n",
    "        x -= dx  # Aside: this is shorthand for \"x = x - dx\"\n",
    "        errorEstimate = abs(dx)\n",
    "        if demoMode:\n",
    "            print(f\"At iteration {k+1} x = {x} with estimated error {errorEstimate:0.3}, backward error {abs(f(x)):0.3}\")\n",
    "        if errorEstimate <= errorTolerance:\n",
    "            iterations = k\n",
    "            return (x, errorEstimate, iterations)\n",
    "    # If we get here, it did not achieve the accuracy target:\n",
    "    iterations = k\n",
    "    return (x, errorEstimate, iterations)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Note:** From now on, all functions like this that implement numerical methods are also collected in the module file `numerical_methods_module.py`\n",
    "\n",
    "Thus, you could omit the above `def` and instead import `newton` with\n",
    "\n",
    "    from numerical_methods_module import newton"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Example 1. Solving $x = \\cos x$\n",
    "\n",
    "**Aside:** Since function names in Python (and most programming languages) must be alpha-numeric\n",
    "(with the underscore `_` as a \"special guest letter\"),\n",
    "I will avoid primes in notation for derivatives as much as possible:\n",
    "from now on, the derivative of $f$ is most often denoted as $Df$ rather than $f'$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "def f_1(x): return x - cos(x)\n",
    "def Df_1(x): return 1. + sin(x)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "At iteration 1 x = 1.0 with estimated error 1.0, backward error 0.4597\n",
      "At iteration 2 x = 0.7503638678402439 with estimated error 0.24963613215975608, backward error 0.01892\n",
      "At iteration 3 x = 0.7391128909113617 with estimated error 0.011250976928882236, backward error 4.646e-05\n",
      "At iteration 4 x = 0.7390851333852839 with estimated error 2.7757526077753238e-05, backward error 2.847e-10\n",
      "At iteration 5 x = 0.7390851332151606 with estimated error 1.7012334067709158e-10, backward error 1.11e-16\n",
      "\n",
      "The root is approximately 0.7390851332151606\n",
      "The estimated absolute error is 1.701e-10\n",
      "The backward error is 1.11e-16\n",
      "This required 5 iterations\n"
     ]
    }
   ],
   "source": [
    "(root, errorEstimate, iterations) = newton(f_1, Df_1, x0=0., errorTolerance=1e-8, demoMode=True)\n",
    "print()\n",
    "print(f\"The root is approximately {root}\")\n",
    "print(f\"The estimated absolute error is {errorEstimate:0.3}\")\n",
    "print(f\"The backward error is {abs(f_1(root)):0.3}\")\n",
    "print(f\"This required {iterations} iterations\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Here we have introduced another way of talking about errors and accuracy, which is further discussed in the section on\n",
    "[Measures of Error and Convergence Rates](error-measures-convergence-rates.ipynb)\n",
    "\n",
    "**Definitions: (Absolute) Backward Error.**\n",
    "- The backward error in $\\tilde x$ as an approximation to a root of a function $f$ is $f(\\tilde x)$.\n",
    "- The absolute backward error is its absolut value, $f(\\tilde x)$.\n",
    "However sometimes the latter is simply called the backward error — as the above Python code does.\n",
    "\n",
    "This has the advantage that we can actually compute it without knowing the exact solution!\n",
    "\n",
    "The backward error also has a useful geometrical meaning:\n",
    "if the function $f$ were changed by this much to a nearbly function $\\tilde f$\n",
    "then $\\tilde x$ could be an exact root of $\\tilde f$.\n",
    "Hence, if we only know the values of $f$ to within this backward error\n",
    "(for example due to rounding error in evaluating the function)\n",
    "then $\\tilde x$ could well be an exact root,\n",
    "so there is no point in striving for greater accuracy in the approximate root.\n",
    "\n",
    "We will see this in the next example."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Graphing Newton's method iterations as a fixed point iteration\n",
    "\n",
    "Since this is a fixed point iteration with $g(x) = x - (x - \\cos(x)/(1 + \\sin(x))$,\n",
    "let us compare its graph to the ones seen in the section on\n",
    "[Solving Equations by Fixed Point Iteration](fixed-point-iteration-python.ipynb)\n",
    "\n",
    "Now $g$ is neither increasing nor decreasing at the fixed point,\n",
    "so the graph has an unusual form."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "def g(x):\n",
    "    return x - (x - cos(x))/(1 + sin(x))\n",
    "a = 0\n",
    "b = 1\n",
    "\n",
    "# An array of x values for graphing\n",
    "x = linspace(a, b)\n",
    "\n",
    "iterations = 4  # Not so many are needed now!"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Starting near the left end of the domain\n",
      "x_0 = 0.1\n",
      "x_1 = 0.9137633861014282\n",
      "x_2 = 0.7446642419816996\n",
      "x_3 = 0.7390919659607759\n",
      "x_4 = 0.7390851332254692\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x720 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Starting near the right end of the domain\n",
      "x_0 = 0.9\n",
      "x_1 = 0.7438928778417369\n",
      "x_2 = 0.7390902113045812\n",
      "x_3 = 0.7390851332208545\n",
      "x_4 = 0.7390851332151607\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x720 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Start at left\n",
    "description = 'Starting near the left end of the domain'\n",
    "print(description)\n",
    "x_k = 0.1\n",
    "print(f\"x_0 = {x_k}\")\n",
    "plt.figure(figsize=(10,10))\n",
    "plt.title(description)\n",
    "plt.grid(True)\n",
    "plt.plot(x, x, 'g')\n",
    "plt.plot(x, g(x), 'r')\n",
    "for k in range(iterations):\n",
    "    g_x_k = g(x_k)\n",
    "    # Graph evalation of g(x_k) from x_k:\n",
    "    plt.plot([x_k, x_k], [x_k, g(x_k)], 'b')\n",
    "    x_k_plus_1 = g(x_k)\n",
    "    #Connect to the new x_k on the line y = x:\n",
    "    plt.plot([x_k, g(x_k)], [x_k_plus_1, x_k_plus_1], 'b')\n",
    "    # Update names: the old x_k+1 is the new x_k\n",
    "    x_k = x_k_plus_1\n",
    "    print(f\"x_{k+1} = {x_k}\")\n",
    "\n",
    "plt.show()\n",
    "\n",
    "# Start at right\n",
    "\n",
    "description = 'Starting near the right end of the domain'\n",
    "print(description)\n",
    "x_k = 0.9\n",
    "print(f\"x_0 = {x_k}\")\n",
    "plt.figure(figsize=(10,10))\n",
    "plt.title(description)\n",
    "plt.grid(True)\n",
    "plt.plot(x, x, 'g')\n",
    "plt.plot(x, g(x), 'r')\n",
    "for k in range(iterations):\n",
    "    g_x_k = g(x_k)\n",
    "    # Graph evalation of g(x_k) from x_k:\n",
    "    plt.plot([x_k, x_k], [x_k, g(x_k)], 'b')\n",
    "    x_k_plus_1 = g(x_k)\n",
    "    #Connect to the new x_k on the line y = x:\n",
    "    plt.plot([x_k, g(x_k)], [x_k_plus_1, x_k_plus_1], 'b')\n",
    "    # Update names: the old x_k+1 is the new x_k\n",
    "    x_k = x_k_plus_1\n",
    "    print(f\"x_{k+1} = {x_k}\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "In fact, wherever you start, all iterations take you to the right of the root, and then appoache the fixed point monotonically — and very fast.\n",
    "We will see an explanation for this in the section on\n",
    "[The Convergence Rate of Newton's Method](newtons-method-convergence-rate.ipynb)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Example 2. Pushing to the limits of standard 64-bit computer arithmetic\n",
    "\n",
    "Next demand more accuracy; this time silently.\n",
    "As we will see in a later section, $10^{-16}$ is about the limit of the precision of standard computer arithmetic with 64-bit numbers.\n",
    "\n",
    "So try to compute the root as accurately as we can within these limits:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "The root is approximately 0.7390851332151607\n",
      "The estimated absolute error is 6.633694101535508e-17\n",
      "The backward error is 0.0\n",
      "This required 6 iterations\n"
     ]
    }
   ],
   "source": [
    "(root, errorEstimate, iterations) = newton(f_1, Df_1, x0=0, errorTolerance=1e-16)\n",
    "print()\n",
    "print(f\"The root is approximately {root}\")\n",
    "print(f\"The estimated absolute error is {errorEstimate}\")\n",
    "print(f\"The backward error is {abs(f_1(root)):0.4}\")\n",
    "print(f\"This required {iterations} iterations\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Observations:\n",
    "- It only took one more iteration to meet the demand for twice as many decimal places of accuracy.\n",
    "- The result is \"exact\" as fas as the computer arithmeric can tell, as shown by the zero backward error:\n",
    "we have indeed reached the accuracy limits of computer arithmetic."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Newton's method works with complex numbers too\n",
    "\n",
    "We will work almost entirely with real values and vectors in $\\mathbb{R}^n$, but actually,\n",
    "everything above also works for complex numbers.\n",
    "In particular, Newton's method works for finding roots of functions $f:\\mathbb{C} \\to \\mathbb{C}$;\n",
    "for example when seeking all roots of a polynomial."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Aside: notation for complex number in Python\n",
    "Python uses `j` for the square root of -1 (as is also sometimes done in engineering) rather than `i`.\n",
    "\n",
    "In general, the complex number $a + b i$ is expressed as `a+bj` (note: `j` at the end, and no spaces).\n",
    "As you might expect, imaginary numbers can be written without the $a$, as `bj`.\n",
    "\n",
    "However, the coefficient `b` is always needed, even when $b=1$: the square roots of -1 are `1j` and `-1j`,\n",
    "not `j` and `-j`, and the latter pair still refer to a variable `j` and its negation."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(3+4j)\n",
      "5.0\n"
     ]
    }
   ],
   "source": [
    "z = 3+4j\n",
    "print(z)\n",
    "print(abs(z))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1j\n"
     ]
    }
   ],
   "source": [
    "print(1j)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(-0-1j)\n"
     ]
    }
   ],
   "source": [
    "print(-1j)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "but:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "ename": "NameError",
     "evalue": "name 'j' is not defined",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mNameError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-12-325732b9e9c9>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mj\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;31mNameError\u001b[0m: name 'j' is not defined"
     ]
    }
   ],
   "source": [
    "print(j)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "ename": "NameError",
     "evalue": "name 'j' is not defined",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mNameError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-13-755356de460d>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0mj\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;31mNameError\u001b[0m: name 'j' is not defined"
     ]
    }
   ],
   "source": [
    "print(-j)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Giving `j` a value does not interfere:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "j = 100"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1j\n"
     ]
    }
   ],
   "source": [
    "print(1j)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "100\n"
     ]
    }
   ],
   "source": [
    "print(j)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Example 3. All roots of a cubic\n",
    "\n",
    "As an example, let us seek all three cube roots of 8,\n",
    "by solving $x^3 - 8 = 0$ and trying different initial values $x_0$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "def f_2(x): return x**3 - 8\n",
    "def Df_2(x): return 3*x**2"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### First, $x_0 = 1$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "At iteration 1 x = 3.3333333333333335 with estimated error 2.3333333333333335, backward error 29.04\n",
      "At iteration 2 x = 2.462222222222222 with estimated error 0.8711111111111113, backward error 6.927\n",
      "At iteration 3 x = 2.081341247671579 with estimated error 0.380880974550643, backward error 1.016\n",
      "At iteration 4 x = 2.003137499141287 with estimated error 0.07820374853029163, backward error 0.03771\n",
      "At iteration 5 x = 2.000004911675504 with estimated error 0.003132587465783101, backward error 5.894e-05\n",
      "At iteration 6 x = 2.0000000000120624 with estimated error 4.911663441917921e-06, backward error 1.447e-10\n",
      "At iteration 7 x = 2.0 with estimated error 1.2062351117801901e-11, backward error 0.0\n",
      "\n",
      "The first root is approximately 2.0\n",
      "The estimated absolute error is 1.2062351117801901e-11\n",
      "The backward error is 0.0\n",
      "This required 7 iterations\n"
     ]
    }
   ],
   "source": [
    "(root1, errorEstimate1, iterations1) = newton(f_2, Df_2, x0=1., errorTolerance=1e-8, demoMode=True)\n",
    "print()\n",
    "print(f\"The first root is approximately {root1}\")\n",
    "print(f\"The estimated absolute error is {errorEstimate1}\")\n",
    "print(f\"The backward error is {abs(f_2(root1)):0.4}\")\n",
    "print(f\"This required {iterations1} iterations\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Next, start at $x_0 = i$ (a.k.a. $x_0 = j$):"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "At iteration 1 x = (-2.6666666666666665+0.6666666666666667j) with estimated error 2.6874192494328497, backward error 27.24\n",
      "At iteration 2 x = (-1.4663590926566705+0.6105344098423685j) with estimated error 1.2016193667222375, backward error 10.21\n",
      "At iteration 3 x = (-0.23293230984230862+1.157138282313884j) with estimated error 1.3491172750968108, backward error 7.207\n",
      "At iteration 4 x = (-1.920232195343855+1.5120026439880303j) with estimated error 1.7242127533456917, backward error 13.41\n",
      "At iteration 5 x = (-1.1754417924325353+1.4419675366055333j) with estimated error 0.7480759724352093, backward error 3.758\n",
      "At iteration 6 x = (-0.9389355523964146+1.7160019741718067j) with estimated error 0.36198076543966656, backward error 0.741\n",
      "At iteration 7 x = (-1.0017352527552088+1.7309534907089796j) with estimated error 0.06455501693838897, backward error 0.02464\n",
      "At iteration 8 x = (-0.9999988050398477+1.7320490713246675j) with estimated error 0.0020531798639315357, backward error 2.529e-05\n",
      "At iteration 9 x = (-1.0000000000014002+1.7320508075706016j) with estimated error 2.107719871290353e-06, backward error 2.665e-11\n",
      "At iteration 10 x = (-1+1.7320508075688774j) with estimated error 2.2211788987828177e-12, backward error 1.986e-15\n",
      "\n",
      "The second root is approximately (-1+1.7320508075688774j)\n",
      "The estimated absolute error is 2.22e-12\n",
      "The backward error is 1.99e-15\n",
      "This required 10 iterations\n"
     ]
    }
   ],
   "source": [
    "(root2, errorEstimate2, iterations2) = newton(f_2, Df_2, x0=1j, errorTolerance=1e-8, demoMode=True)\n",
    "print()\n",
    "print(f\"The second root is approximately {root2}\")\n",
    "print(f\"The estimated absolute error is {errorEstimate2:0.3}\")\n",
    "print(f\"The backward error is {abs(f_2(root2)):0.3}\")\n",
    "print(f\"This required {iterations2} iterations\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This root is in fact $-1 + i \\sqrt{3}$."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Finally, $x_0 = 1 - i$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "At iteration 1 x = (0.6666666666666667+0.6666666666666667j) with estimated error 1.699673171197595, backward error 8.613\n",
      "At iteration 2 x = (0.4444444444444445-2.5555555555555554j) with estimated error 3.229875967499696, backward error 22.51\n",
      "At iteration 3 x = (-0.07676321047922768-1.569896785094159j) with estimated error 1.1149801035617206, backward error 8.367\n",
      "At iteration 4 x = (-1.1254435853845144-1.1519065719451076j) with estimated error 1.1289137907740705, backward error 5.707\n",
      "At iteration 5 x = (-0.7741881838023246-1.795866873743186j) with estimated error 0.7335292955516757, backward error 2.741\n",
      "At iteration 6 x = (-0.9948382000303204-1.7041989873110566j) with estimated error 0.23893394707397406, backward error 0.3354\n",
      "At iteration 7 x = (-0.9999335177403226-1.7324537997991796j) with estimated error 0.02871056758938863, backward error 0.004902\n",
      "At iteration 8 x = (-0.9999999373245746-1.7320508625807844j) with estimated error 0.00040837478269381517, backward error 1.001e-06\n",
      "At iteration 9 x = (-0.9999999999999972-1.732050807568875j) with estimated error 8.339375742984317e-08, backward error 4.356e-14\n",
      "At iteration 10 x = (-1-1.7320508075688772j) with estimated error 3.629748304956849e-15, backward error 1.986e-15\n",
      "\n",
      "The third root is approximately (-1-1.7320508075688772j)\n",
      "The estimated absolute error is 3.629748304956849e-15\n",
      "The backward error is 1.986e-15\n",
      "This required 10 iterations\n"
     ]
    }
   ],
   "source": [
    "(root3, errorEstimate3, iterations3) = newton(f_2, Df_2, x0=1-1j, errorTolerance=1e-8, demoMode=True)\n",
    "print()\n",
    "print(f\"The third root is approximately {root3}\")\n",
    "print(f\"The estimated absolute error is {errorEstimate3}\")\n",
    "print(f\"The backward error is {abs(f_2(root3)):0.4}\")\n",
    "print(f\"This required {iterations3} iterations\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This root is in fact $-1 - i \\sqrt{3}$."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Newton's method derived via tangent line approximations: linearization\n",
    "\n",
    "The more traditional derivation of Newton's method is based on the very widely useful idea of *linearization*;\n",
    "using the fact that a differentiable function can be approximated over a small part of its domain by a straight line — its tangent line — and it is easy to compute the root of this linear function.\n",
    "\n",
    "So start with a first approximation $x_0$ to a solution $r$ of $f(x) = 0$.\n",
    "\n",
    "### Step 1: Linearize at $x_0$.\n",
    "\n",
    "The tangent line to the graph of this function wih center $x_0$,\n",
    "also know as the *linearization of $f$ at $x_0$*, is\n",
    "\n",
    "$$L_0(x) = f(x_0) + f'(x_0) (x - x_0).$$\n",
    "\n",
    "(Note that $L_0(x_0) = f(x_0)$ and $L_0'(x_0) = f'(x_0)$.)\n",
    "\n",
    "### Step 2: Find the zero of this linearization\n",
    "\n",
    "Hopefully, the two functions $f$ and $L_0$ are close, so that the root of $L_0$ is close to a root of $f$;\n",
    "close enough to be a better approximation of the root $r$ than $x_0$ is.\n",
    "\n",
    "Give the name $x_1$ to this root of $L_0$:\n",
    "it solves $L_0(x_1) = f(x_0) + f'(x_0) (x_1 - x_0) = 0$, so\n",
    "\n",
    "$$x_1 = x_0 - {f(x_0)}/{f'(x_0)}$$\n",
    "\n",
    "### Step 3: Iterate\n",
    "\n",
    "We can then use this new value $x_1$ as the center for a new linearization\n",
    "$L_1(x) = f(x_1) + f'(x_1)(x - x_1)$,\n",
    "and repeat to get a hopefully even better approximate root,\n",
    "\n",
    "$$x_2 = x_1 - f(x_1)/f'(x_1)$$\n",
    "\n",
    "And so on: at each step, we get from approximation $x_k$ to a new one $x_{k+1}$ with\n",
    "\n",
    "$$x_{k+1} = x_k - {f(x_k)}/{f'(x_k)}$$\n",
    "\n",
    "And indeed this is the same formula seen above for Newton's method."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Illustration: a few steps of Newton's method for $x - \\cos(x) = 0$.\n",
    "\n",
    "This approach to Newton's method via linearization and tangent lines suggests another graphical presentation;\n",
    "again we use the example of $f(x) = x - \\cos (x)$.\n",
    "This has $Df(x) = 1 + \\sin(x)$, so the linearization at center $a$ is\n",
    "\n",
    "$$L(x) = (a - \\cos(a)) + (1 + \\sin(a))(x-a)$$\n",
    "\n",
    "For Newton's method starting at $x_0 = 0$, this gives\n",
    "\n",
    "$$L_0(x) = -1 + x$$\n",
    "\n",
    "and its root — the next iterate in Newton's method — is $x_1 = 1$\n",
    "\n",
    "Then the linearization at center $x_1$ is\n",
    "\n",
    "$$\n",
    "L_1(x) = (1 - \\cos(1) + (1 + \\sin(1))(x-1),\n",
    "\\approx 0.4596 + 1.8415(x-1)\n",
    "$$\n",
    "giving $x_2 \\approx 1 - 0.4596/1.8415 \\approx 0.7504$.\n",
    "\n",
    "Let's graph a few steps."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "def L_0(x): return -1 + x"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "x_1=1.0\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "figure(figsize=(12,6))\n",
    "title('First iteration, from $x_0 = 0$')\n",
    "left = -0.1\n",
    "right = 1.1\n",
    "x = linspace(left, right)\n",
    "plot(x, f_1(x), label='$x - \\cos(x)$')\n",
    "plot([left, right], [0, 0], 'k', label=\"$x=0$\")  # The x-axis, in black\n",
    "x_0 = 0\n",
    "plot([x_0], [f_1(x_0)], 'g*')\n",
    "plot(x, L_0(x), 'y', label='$L_0(x)$')\n",
    "plot([x_0], [f_1(x_0)], 'g*')\n",
    "x_1 = x_0 - f_1(x_0)/Df_1(x_0)\n",
    "print(f'{x_1=}')\n",
    "plot([x_1], [0], 'r*')\n",
    "legend()\n",
    "grid(True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "x_2=0.7503638678402439\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "def L_1(x): return (x_1 - cos(x_1)) +  (1 + sin(x_1))*(x - x_1)\n",
    "\n",
    "figure(figsize=(12,6))\n",
    "title('Second iteration, from $x_1 = 1$')\n",
    "# Shrink the domain\n",
    "left = 0.7\n",
    "right = 1.05\n",
    "x = linspace(left, right)\n",
    "\n",
    "plot(x, f_1(x), label='$x - \\cos(x)$')\n",
    "plot([left, right], [0, 0], 'k', label=\"$x=0$\")  # The x-axis, in black\n",
    "plot([x_1], [f_1(x_1)], 'g*')\n",
    "plot(x, L_1(x), 'y', label='$L_1(x)$')\n",
    "x_2 = x_1 - f_1(x_1)/Df_1(x_1)\n",
    "print(f'{x_2=}')\n",
    "plot([x_2], [0], 'r*')\n",
    "legend()\n",
    "grid(True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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bRYBeWbWFtgIXAhcdKT9zawFsNM55zOzdkAesLaGWRusDTuLeej9VWwpeoLhbV9kYNctRMb0IK/dv2jRYjRmYV5HFBEREZGAmhbs24EXzOyXwHrgAgAzy6Ty7fhGOucqzGwMMIvKt+mb7JxbeaT9gYHABDOrAHzAVc65nTXM2uB8uW0/D723kt07Huestv+ledftRMf2Ja/9I6Sm/gCz6q6+EREREREv1ahgO+d2AEOquX8TMLLK8gxgRhD7/xf4b02yNWSrivbyYMEyyvc+zojcV0hquYvY+FPIa/8fUlKGqViLiIiI1GO6aLce+XjDbh5+72PCSx5nRO6rJGTsJT5xMB3a3URy8iAVaxEREZEGQAW7HliwdgeT3l9Cou8JzmnzGnGR+2mWdBbt291IUtIpXscTERERkSCoYHvEOcec1dt57P2FtAx/ggtaTycm4iDJKaNo3+5GEhP7eh1RRERERI6DCnYd8/sd73y2lcdnz6N1zBNc3G4mkeFlpKVdQNvcG0hI6OF1RBERERGpARXsOuLzO2YsL+LpuR/QKeFJftHxTSLC/LRseRFtc/9GXFwnryOKiIiISAioYNeycp+fqR9v4rkP36dn8lP8qsu7hIUZrVpdSm6bvxIb287riCIiIiISQirYtaS0wsdLSwp5cf57nJj2FFd3n41ZBJmZv6JN62uJiWntdUQRERERqQUq2CF2sMzHcwvXM3Xx25ya/jS/7TkXLIac7GvIyfkz0dEZXkcUERERkVqkgh0iBysc/y5Yw6ylsxiY+R9+32s+WAI52deRk/MHoqJaeB1RREREROqACnYNHSitYNLstbz98RKG5f6Z3/deAmFJ5LYeR1bWb4iMbO51RBERERGpQyrYNeT37SThwE/484kfY2Gp5La5laysq4mIaOZ1NBERERHxgAp2DSXEtqBvm5bs3fN/nH7anYSHx3sdSUREREQ8FOZ1gIbOzOjTexbwY5VrEREREVHBFhEREREJJRVsEREREZEQUsEWEREREQkhFWwRERERkRBSwRYRERERCSEVbBERERGREFLBFhEREREJIRVsEREREZEQUsEWEREREQkhFWwRERERkRBSwRYRERERCSEVbBERERGREFLBFhEREREJIXPOeZ0hZMxsG/C1R4dPA7Z7dOyGSPMKjuYVHM0rOJpXcDSv4GhewdG8guPlvNo451pUt6JRFWwvmdli51w/r3M0FJpXcDSv4GhewdG8gqN5BUfzCo7mFZz6Oi9dIiIiIiIiEkIq2CIiIiIiIaSCHTqTvA7QwGhewdG8gqN5BUfzCo7mFRzNKziaV3Dq5bx0DbaIiIiISAjpDLaIiIiISAipYAeY2Qgz+9zM1pjZ9dWs/7OZfRz4WmFmPjNrbmYxZrbQzD4xs5VmNr7KPuPMbGOV/UZWWfeXwLE+N7PhdfV9hkotzev5KvusM7OPA/fnmtnBKuseqsNvNSSOd15V1oeb2VIze73Kfc3N7C0zWx34M6XKuib5/Kqyvrp53Wlmn5nZMjN7xcySA/fr+VX9vPT6Fdy89PpVzbwCs1geWLe4yj56/QpuXo329QtqbWbevoY555r8FxAOfAm0A6KAT4CuR9j+HODdwG0DEgK3I4EFwMmB5XHAn6rZv2vgGNFA28Cxw72eg9fzOmSfu4GbArdzgRVef99ezKvKfX8AngVer3LfHcD1gdvXA/9o6s+vo8xrGBARuP2PKvPS86v6een1K4h5HbJer1//W14HpFWznV6/gptXo3z9quWZefoapjPYlU4C1jjn1jrnyoApwKgjbP9T4DkAV2l/4P7IwNfRLmwfBUxxzpU6574C1gQyNBS1Oi8zM+DH3+zTCBz3vADMLBs4G3j0kO1GAU8Gbj8JnFvl/ib5/ILDz8s596ZzriKwOB/IDmlq79TW8+tw9Pw6wrz0+vXdeR2BXr8qHdO8GvHrF9Tec+xw6uQ5poJdKQvYUGW5MHDf95hZHDAC+G+V+8IDPw7cCrzlnFtQZZcxgR/pTK7yI7BjPl49VZvzAhgAbHHOra5yX9vAj2TfN7MBIfge6lKN5gXcA1wL+A/ZPN05VwQQ+LNlsMerp2prXlVdDrxRZVnPr+rnpdev4J9fev367rwc8KaZLTGzK6vcr9ev4OZVVWN6/YLanZlnr2Eq2JWsmvsOdxb6HOAD59zObzd0zuec60XlvyhPMrPugVUPAu2BXkARlT82DPZ49VFtzesbh/7rtAho7ZzrTeBHs2bW7HjDe+C452VmPwC2OueW1NLx6qNanZeZ/Q2oAJ4J3KXnV/Xz0uvX8f191OtXldd74DTnXB/gLOBqMxsYwuPVR7U6r0b4+gW1NzNPX8NUsCsVAjlVlrOBTYfZ9kIO86MJ59xuoIDKf13hnNsSKJN+4BH+9yOIYI5XH9XKvADMLAIYDTxfZbtS59yOwO0lVF4v1fG409e9mszrNOCHZraOyh+bnWFm/wms22JmGQCBP7cex/Hqo9qaF2Z2GfAD4GIXuBhPz6/q56XXLyD455devw55vXfObQr8uRV4hf89j/T6Fdy8GuvrF9TSzDx/DQv1Rd0N8QuIANZSebH7NxfYd6tmuyRgJxBf5b4WQHLgdiwwB/hBYDmjyna/p/KaH4BufPcC+7U0rF/iqJV5Be4bAbx/yOO0+GY+VP4SxEaguddzqIt5HbI+n+/+EtqdfPeXhO5o6s+vo8xrBPAp0ELPr2Oal16/gphXleeYXr/+d188kFjl9ofAiMCyXr+Cm1ejfP2q5Zl5+hoWgeCcqzCzMcAsKn+bdbJzbqWZXRVY/83b3pwHvOmcO1Bl9wzgSTMLp/InAi84575566Y7zKwXlT96WAf8KvB4K83sBSr/slQAVzvnfLX5PYZSLc4Lqj/jPRCYYGYVgA+4yn33x0P1Wg3ndSS3Ay+Y2S+B9cAFgcdrys+vI7mfyhfUtyp/D435zrmr0PPrcPT6Fdy8QK9fh84rHXgl8PctAnjWOTczsE6vX8HNq1G+fkGtzszT1zB9kqOIiIiISAjpGmwRERERkRBSwRYRERERCSEVbBERERGREFLBFhEREREJIRVsEREREZEQUsEWEREREQkhFWwRERERkRBSwRYRERERCaH/D3GVfLujREQVAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 864x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "def L_2(x): return (x_2 - cos(x_2)) +  (1 + sin(x_2))*(x - x_2)\n",
    "\n",
    "figure(figsize=(12,6))\n",
    "title('Third iteration, from $x_2$')\n",
    "# Shrink the domain some more\n",
    "left = 0.735\n",
    "right = 0.755\n",
    "x = linspace(left, right)\n",
    "\n",
    "plot(x, f_1(x), label='$x - \\cos(x)$')\n",
    "plot([left, right], [0, 0], 'k', label=\"$x=0$\")  # The x-axis, in black\n",
    "plot([x_2], [f_1(x_2)], 'g*')\n",
    "plot(x, L_2(x), 'y', label='$L_2(x)$')\n",
    "x_3 = x_2 - f_1(x_2)/Df_1(x_2)\n",
    "plot([x_3], [0], 'r*')\n",
    "legend()\n",
    "grid(True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## How accurate and fast is this?\n",
    "\n",
    "For the bisection method, we have seen in the section on\n",
    "[Root Finding by Interval Halving](root-finding-by-interval-halving-python.ipynb)\n",
    "a fairly simple way to get an upper limit on the absolute error in the approximations.\n",
    "\n",
    "For absolute guarantees of accuracy, things do not go quite as well for Newton's method,\n",
    "but we can at least get a very \"probable\" *estimate* of how large the error can be.\n",
    "This requires some calculus, and more specifically Taylor's theorem,\n",
    "reviewed in the section on\n",
    "[Taylor's Theorem and the Accuracy of Linearization](taylors-theorem.ipynb).\n",
    "\n",
    "So we will return to the question of both the speed and accuracy of Newton's method in\n",
    "[The Convergence Rate of Newton's Method](newtons-method-convergence-rate.ipynb).\n",
    "\n",
    "On the other hand, the example graphs above illustrate that the successive linearizations become ever more accurate as approximations of the function $f$ itself, so that the approximation $x_3$ looks \"perfect\" on the graph —\n",
    "the speed of Newton's method looks far better than for bisection.\n",
    "This will also be explained in [The Convergence Rate of Newton's Method](newtons-method-convergence-rate.ipynb)."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "---\n",
    "This work is licensed under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
