Files
CalculusWithJuliaNotes.jl/quarto/_freeze/derivatives/newtons_method/execute-results/html.json
2022-08-26 14:45:24 -04:00

15 lines
279 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"hash": "cd250ccf2ec42075c4075145af124670",
"result": {
"markdown": "# Newton's method\n\n\n\nThis section uses these add-on packages:\n\n``` {.julia .cell-code}\nusing CalculusWithJulia\nusing Plots\nusing SymPy\nusing Roots\n```\n\n\n\n\n---\n\n\nThe Babylonian method is an algorithm to find an approximate value for $\\sqrt{k}$. It was described by the first-century Greek mathematician Hero of [Alexandria](http://en.wikipedia.org/wiki/Babylonian_method).\n\n\nThe method starts with some initial guess, called $x_0$. It then applies a formula to produce an improved guess. This is repeated until the improved guess is accurate enough or it is clear the algorithm fails to work.\n\n\nFor the Babylonian method, the next guess, $x_{i+1}$, is derived from the current guess, $x_i$. In mathematical notation, this is the updating step:\n\n\n\n$$\nx_{i+1} = \\frac{1}{2}(x_i + \\frac{k}{x_i})\n$$\n\n\nWe use this algorithm to approximate the square root of $2$, a value known to the Babylonians.\n\n\nStart with $x$, then form $x/2 + 1/x$, from this again form $x/2 + 1/x$, repeat.\n\n\nWe represent this step using a function\n\n::: {.cell execution_count=4}\n``` {.julia .cell-code}\nbabylon(x) = x/2 + 1/x\n```\n\n::: {.cell-output .cell-output-display execution_count=5}\n```\nbabylon (generic function with 1 method)\n```\n:::\n:::\n\n\nLet's look starting with $x = 2$ as a rational number:\n\n::: {.cell hold='true' execution_count=5}\n``` {.julia .cell-code}\nx₁ = babylon(2//1)\nx₁, x₁^2.0\n```\n\n::: {.cell-output .cell-output-display execution_count=6}\n```\n(3//2, 2.25)\n```\n:::\n:::\n\n\nOur estimate improved from something which squared to $4$ down to something which squares to $2.25.$ A big improvement, but there is still more to come. Had we done one more step:\n\n::: {.cell execution_count=6}\n``` {.julia .cell-code}\nx₂ = (babylon ∘ babylon)(2//1)\nx₂, x₂^2.0\n```\n\n::: {.cell-output .cell-output-display execution_count=7}\n```\n(17//12, 2.0069444444444446)\n```\n:::\n:::\n\n\nWe now see accuracy until the third decimal point.\n\n::: {.cell execution_count=7}\n``` {.julia .cell-code}\nx₃ = (babylon ∘ babylon ∘ babylon)(2//1)\nx₃, x₃^2.0\n```\n\n::: {.cell-output .cell-output-display execution_count=8}\n```\n(577//408, 2.000006007304883)\n```\n:::\n:::\n\n\nThis is now accurate to the sixth decimal point. That is about as far as we, or the Bablyonians, would want to go by hand. Using rational numbers quickly grows out of hand. The next step shows the explosion.\n\n::: {.cell execution_count=8}\n``` {.julia .cell-code}\nreduce((x,step) -> babylon(x), 1:4, init=2//1)\n```\n\n::: {.cell-output .cell-output-display execution_count=9}\n```\n665857//470832\n```\n:::\n:::\n\n\n(In the above, we used `reduce` to repeat a function call $4$ times, as an alternative to the composition operation. In this section we show a few styles to do this repetition before introducing a packaged function.)\n\n\nHowever, with the advent of floating point numbers, the method stays quite manageable:\n\n::: {.cell hold='true' execution_count=9}\n``` {.julia .cell-code}\nxₙ = reduce((x, step) -> babylon(x), 1:6, init=2.0)\nxₙ, xₙ^2\n```\n\n::: {.cell-output .cell-output-display execution_count=10}\n```\n(1.414213562373095, 1.9999999999999996)\n```\n:::\n:::\n\n\nWe can see that the algorithm - to the precision offered by floating point numbers - has resulted in an answer `1.414213562373095`. This answer is an *approximation* to the actual answer. Approximation is necessary, as $\\sqrt{2}$ is an irrational number and so can never be exactly represented in floating point. That being said, we can see that the value of $f(x)$ is accurate to the last decimal place, so our approximation is very close and is achieved in a few steps.\n\n\n## Newton's generalization\n\n\nLet $f(x) = x^3 - 2x -5$. The value of $2$ is almost a zero, but not quite, as $f(2) = -1$. We can check that there are no *rational* roots. Though there is a method to solve the cubic it may be difficult to compute and will not be as generally applicable as some algorithm like the Babylonian method to produce an approximate answer.\n\n\nIs there some generalization to the Babylonian method?\n\n\nWe know that the tangent line is a good approximation to the function at the point. Looking at this graph gives a hint as to an algorithm:\n\n::: {.cell hold='true' execution_count=10}\n\n::: {.cell-output .cell-output-display execution_count=11}\n![](newtons_method_files/figure-html/cell-11-output-1.svg){}\n:::\n:::\n\n\nThe tangent line and the function nearly agree near $2$. So much so, that the intersection point of the tangent line with the $x$ axis nearly hides the actual zero of $f(x)$ that is near $2.1$.\n\n\nThat is, it seems that the intersection of the tangent line and the $x$ axis should be an improved approximation for the zero of the function.\n\n\nLet $x_0$ be $2$, and $x_1$ be the intersection point of the tangent line at $(x_0, f(x_0))$ with the $x$ axis. Then by the definition of the tangent line:\n\n\n\n$$\nf'(x_0) = \\frac{\\Delta y }{\\Delta x} = \\frac{f(x_0)}{x_0 - x_1}.\n$$\n\n\nThis can be solved for $x_1$ to give $x_1 = x_0 - f(x_0)/f'(x_0)$. In general, if we had $x_i$ and used the intersection point of the tangent line to produce $x_{i+1}$ we would have Newton's method:\n\n\n\n$$\nx_{i+1} = x_i - \\frac{f(x_i)}{f'(x_i)}.\n$$\n\n\nUsing automatic derivatives, as brought in with the `CalculusWithJulia` package, we can implement this algorithm.\n\n\nThe algorithm above starts at $2$ and then becomes:\n\n::: {.cell execution_count=11}\n``` {.julia .cell-code}\nf(x) = x^3 - 2x - 5\nx0 = 2.0\nx1 = x0 - f(x0) / f'(x0)\n```\n\n::: {.cell-output .cell-output-display execution_count=12}\n```\n2.1\n```\n:::\n:::\n\n\nWe can see we are closer to a zero:\n\n::: {.cell execution_count=12}\n``` {.julia .cell-code}\nf(x0), f(x1)\n```\n\n::: {.cell-output .cell-output-display execution_count=13}\n```\n(-1.0, 0.06100000000000083)\n```\n:::\n:::\n\n\nTrying again, we have\n\n::: {.cell execution_count=13}\n``` {.julia .cell-code}\nx2 = x1 - f(x1)/ f'(x1)\nx2, f(x2), f(x1)\n```\n\n::: {.cell-output .cell-output-display execution_count=14}\n```\n(2.094568121104185, 0.00018572317327247845, 0.06100000000000083)\n```\n:::\n:::\n\n\nAnd again:\n\n::: {.cell execution_count=14}\n``` {.julia .cell-code}\nx3 = x2 - f(x2)/ f'(x2)\nx3, f(x3), f(x2)\n```\n\n::: {.cell-output .cell-output-display execution_count=15}\n```\n(2.094551481698199, 1.7397612239733462e-9, 0.00018572317327247845)\n```\n:::\n:::\n\n\n::: {.cell execution_count=15}\n``` {.julia .cell-code}\nx4 = x3 - f(x3)/ f'(x3)\nx4, f(x4), f(x3)\n```\n\n::: {.cell-output .cell-output-display execution_count=16}\n```\n(2.0945514815423265, -8.881784197001252e-16, 1.7397612239733462e-9)\n```\n:::\n:::\n\n\nWe see now that $f(x_4)$ is within machine tolerance of $0$, so we call $x_4$ an *approximate zero* of $f(x)$.\n\n\n> **Newton's method:** Let $x_0$ be an initial guess for a zero of $f(x)$. Iteratively define $x_{i+1}$ in terms of the just generated $x_i$ by:\n>\n> $$\n> x_{i+1} = x_i - f(x_i) / f'(x_i).\n> $$\n>\n> Then for reasonable functions and reasonable initial guesses, the sequence of points converges to a zero of $f$.\n\n\n\nOn the computer, we know that actual convergence will likely never occur, but accuracy to a certain tolerance can often be achieved.\n\n\nIn the example above, we kept track of the previous values. This is unnecessary if only the answer is sought. In that case, the update step could use the same variable. Here we use `reduce`:\n\n::: {.cell hold='true' execution_count=16}\n``` {.julia .cell-code}\nxₙ = reduce((x, step) -> x - f(x)/f'(x), 1:4, init=2)\nxₙ, f(xₙ)\n```\n\n::: {.cell-output .cell-output-display execution_count=17}\n```\n(2.0945514815423265, -8.881784197001252e-16)\n```\n:::\n:::\n\n\nIn practice, the algorithm is implemented not by repeating the update step a fixed number of times, rather by repeating the step until either we converge or it is clear we won't converge. For good guesses and most functions, convergence happens quickly.\n\n\n:::{.callout-note}\n## Note\nNewton looked at this same example in 1699 (B.T. Polyak, *Newton's method and its use in optimization*, European Journal of Operational Research. 02/2007; 181(3):1086-1096.) though his technique was slightly different as he did not use the derivative, *per se*, but rather an approximation based on the fact that his function was a polynomial (though identical to the derivative). Raphson (1690) proposed the general form, hence the usual name of the Newton-Raphson method.\n\n:::\n\n#### Examples\n\n\n##### Example: visualizing convergence\n\n\nThis graphic demonstrates the method and the rapid convergence:\n\n\n\n::: {.cell cache='true' hold='true' execution_count=18}\n\n::: {.cell-output .cell-output-display execution_count=19}\n```{=html}\n<div class=\"d-flex justify-content-center\"> <figure> <img src=\"data:image/gif;base64,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\" class=\"card-img-top\" alt=\"A Figure\">\n <figcaption><div class=\"markdown\"><p>Illustration of Newton&#39;s Method converging to a zero of a function.</p>\n</div> </figcaption>\n </figure>\n</div>\n```\n:::\n:::\n\n\n---\n\nThis interactive graphic (built using [JSXGraph](https://jsxgraph.uni-bayreuth.de/wp/index.html)) allows the adjustment of the point `x0`, initially at $0.85$. Five iterations of Newton's method are illustrated. Different positions of `x0` clearly converge, others will not.\n\n\n\n```{=html}\n<div id=\"jsxgraph\" style=\"width: 500px; height: 500px;\"></div>\n```\n\n```{ojs}\n//| echo: false\n//| output: false\n\nJXG = require(\"jsxgraph\");\n\n// newton's method\n\nb = JXG.JSXGraph.initBoard('jsxgraph', {\n boundingbox: [-3,5,3,-5], axis:true\n});\n\n\nf = function(x) {return x*x*x*x*x - x - 1};\nfp = function(x) { return 4*x*x*x*x - 1};\nx0 = 0.85;\n\nnm = function(x) { return x - f(x)/fp(x);};\n\nl = b.create('point', [-1.5,0], {name:'', size:0});\nr = b.create('point', [1.5,0], {name:'', size:0});\nxaxis = b.create('line', [l,r])\n\n\nP0 = b.create('glider', [x0,0,xaxis], {name:'x0'});\nP0a = b.create('point', [function() {return P0.X();},\n\t\t\t function() {return f(P0.X());}], {name:''});\n\nP1 = b.create('point', [function() {return nm(P0.X());},\n\t\t\t 0], {name:''});\nP1a = b.create('point', [function() {return P1.X();},\n\t\t\t function() {return f(P1.X());}], {name:''});\n\nP2 = b.create('point', [function() {return nm(P1.X());},\n\t\t\t 0], {name:''});\nP2a = b.create('point', [function() {return P2.X();},\n\t\t\t function() {return f(P2.X());}], {name:''});\n\nP3 = b.create('point', [function() {return nm(P2.X());},\n\t\t\t 0], {name:''});\nP3a = b.create('point', [function() {return P3.X();},\n\t\t\t function() {return f(P3.X());}], {name:''});\n\nP4 = b.create('point', [function() {return nm(P3.X());},\n\t\t\t 0], {name:''});\nP4a = b.create('point', [function() {return P4.X();},\n\t\t\t function() {return f(P4.X());}], {name:''});\nP5 = b.create('point', [function() {return nm(P4.X());},\n\t\t\t 0], {name:'x5', strokeColor:'black'});\n\n\n\n\n\nP0a.setAttribute({fixed:true});\nP1.setAttribute({fixed:true});\nP1a.setAttribute({fixed:true});\nP2.setAttribute({fixed:true});\nP2a.setAttribute({fixed:true});\nP3.setAttribute({fixed:true});\nP3a.setAttribute({fixed:true});\nP4.setAttribute({fixed:true});\nP4a.setAttribute({fixed:true});\nP5.setAttribute({fixed:true});\n\nsc = '#000000';\nb.create('segment', [P0,P0a], {strokeColor:sc, strokeWidth:1});\nb.create('segment', [P0a, P1], {strokeColor:sc, strokeWidth:1});\nb.create('segment', [P1,P1a], {strokeColor:sc, strokeWidth:1});\nb.create('segment', [P1a, P2], {strokeColor:sc, strokeWidth:1});\nb.create('segment', [P2,P2a], {strokeColor:sc, strokeWidth:1});\nb.create('segment', [P2a, P3], {strokeColor:sc, strokeWidth:1});\nb.create('segment', [P3,P3a], {strokeColor:sc, strokeWidth:1});\nb.create('segment', [P3a, P4], {strokeColor:sc, strokeWidth:1});\nb.create('segment', [P4,P4a], {strokeColor:sc, strokeWidth:1});\nb.create('segment', [P4a, P5], {strokeColor:sc, strokeWidth:1});\n\nb.create('functiongraph', [f, -1.5, 1.5])\n\n```\n\n\n##### Example: numeric not algebraic\n\n\nFor the function $f(x) = \\cos(x) - x$, we see that SymPy can not solve symbolically for a zero:\n\n::: {.cell execution_count=19}\n``` {.julia .cell-code}\n@syms x::real\nsolve(cos(x) - x, x)\n```\n\n::: {.cell-output .cell-output-error}\n```\nLoadError: PyError ($(Expr(:escape, :(ccall(#= /Users/verzani/.julia/packages/PyCall/7a7w0/src/pyfncall.jl:43 =# @pysym(:PyObject_Call), PyPtr, (PyPtr, PyPtr, PyPtr), o, pyargsptr, kw))))) <class 'NotImplementedError'>\nNotImplementedError('multiple generators [x, cos(x)]\\nNo algorithms are implemented to solve equation -x + cos(x)')\n File \"/Users/verzani/.julia/conda/3/lib/python3.7/site-packages/sympy/solvers/solvers.py\", line 1106, in solve\n solution = _solve(f[0], *symbols, **flags)\n File \"/Users/verzani/.julia/conda/3/lib/python3.7/site-packages/sympy/solvers/solvers.py\", line 1720, in _solve\n raise NotImplementedError('\\n'.join([msg, not_impl_msg % f]))\n```\n:::\n:::\n\n\nWe can find a numeric solution, even though there is no closed-form answer. Here we try Newton's method:\n\n::: {.cell hold='true' execution_count=20}\n``` {.julia .cell-code}\nf(x) = cos(x) - x\nx = .5\nx = x - f(x)/f'(x) # 0.7552224171056364\nx = x - f(x)/f'(x) # 0.7391416661498792\nx = x - f(x)/f'(x) # 0.7390851339208068\nx = x - f(x)/f'(x) # 0.7390851332151607\nx = x - f(x)/f'(x)\nx, f(x)\n```\n\n::: {.cell-output .cell-output-display execution_count=21}\n```\n(0.7390851332151607, 0.0)\n```\n:::\n:::\n\n\nTo machine tolerance the answer is a zero, even though the exact answer is irrational and all finite floating point values can be represented as rational numbers.\n\n\n##### Example\n\n\nUse Newton's method to find the *largest* real solution to $e^x = x^6$.\n\n\nA plot shows us roughly where the value lies:\n\n::: {.cell hold='true' execution_count=21}\n``` {.julia .cell-code}\nf(x) = exp(x)\ng(x) = x^6\nplot(f, 0, 25, label=\"f\")\nplot!(g, label=\"g\")\n```\n\n::: {.cell-output .cell-output-display execution_count=22}\n![](newtons_method_files/figure-html/cell-22-output-1.svg){}\n:::\n:::\n\n\nClearly by $20$ the two paths diverge. We know exponentials eventually grow faster than powers, and this is seen in the graph.\n\n\nTo use Newton's method to find the intersection point. Stop when the increment $f(x)/f'(x)$ is smaller than `1e-4`. We need to turn the solution to an equation into a value where a function is $0$. Just moving the terms to one side of the equals sign gives $e^x - x^6 = 0$, or the $x$ we seek is a solution to $h(x)=0$ with $h(x) = e^x - x^6$.\n\n::: {.cell hold='true' term='true' execution_count=22}\n``` {.julia .cell-code}\nh(x) = exp(x) - x^6\nx = 20\nfor step in 1:10\n delta = h(x)/h'(x)\n x = x - delta\n @show step, x, delta\nend\n```\n\n::: {.cell-output .cell-output-stdout}\n```\n(step, x, delta) = (1, 19.096144519894025, 0.9038554801059746)\n(step, x, delta) = (2, 18.279618508448504, 0.8165260114455216)\n(step, x, delta) = (3, 17.615584160589165, 0.6640343478593392)\n(step, x, delta) = (4, 17.186229687634423, 0.42935447295474183)\n(step, x, delta) = (5, 17.02052242498673, 0.1657072626476933)\n(step, x, delta) = (6, 16.999206949504874, 0.021315475481855334)\n(step, x, delta) = (7, 16.998887423017564, 0.00031952648730976816)\n(step, x, delta) = (8, 16.998887352296055, 7.072150775034742e-8)\n(step, x, delta) = (9, 16.99888735229605, 2.3862112429152903e-15)\n(step, x, delta) = (10, 16.99888735229605, -1.1931056214576512e-15)\n```\n:::\n:::\n\n\nSo it takes $8$ steps to get an increment that small and about `10` steps to get to full convergence.\n\n\n##### Example division as multiplication\n\n\n[Newton-Raphson Division](http://tinyurl.com/kjj9w92) is a means to divide by multiplying.\n\n\nWhy would you want to do that? Well, even for computers division is harder (read slower) than multiplying. The trick is that $p/q$ is simply $p \\cdot (1/q)$, so finding a means to compute a reciprocal by multiplying will reduce division to multiplication.\n\n\nWell suppose we have $q$, we could try to use Newton's method to find $1/q$, as it is a solution to $f(x) = x - 1/q$. The Newton update step simplifies to:\n\n\n\n$$\nx - f(x) / f'(x) \\quad\\text{or}\\quad x - (x - 1/q)/ 1 = 1/q\n$$\n\n\nThat doesn't really help, as Newton's method is just $x_{i+1} = 1/q$. That is, it just jumps to the answer, the one we want to compute by some other means!\n\n\nTrying again, we simplify the update step for a related function: $f(x) = 1/x - q$ with $f'(x) = -1/x^2$ and then one step of the process is:\n\n\n\n$$\nx_{i+1} = x_i - (1/x_i - q)/(-1/x_i^2) = -qx^2_i + 2x_i.\n$$\n\n\nNow for $q$ in the interval $[1/2, 1]$ we want to get a *good* initial guess. Here is a claim. We can use $x_0=48/17 - 32/17 \\cdot q$. Let's check graphically that this is a reasonable initial approximation to $1/q$:\n\n::: {.cell hold='true' execution_count=23}\n``` {.julia .cell-code}\nplot(q -> 1/q, 1/2, 1, label=\"1/q\")\nplot!(q -> 1/17 * (48 - 32q), label=\"linear approximation\")\n```\n\n::: {.cell-output .cell-output-display execution_count=24}\n![](newtons_method_files/figure-html/cell-24-output-1.svg){}\n:::\n:::\n\n\nIt can be shown that we have for any $q$ in $[1/2, 1]$ with initial guess $x_0 = 48/17 - 32/17\\cdot q$ that Newton's method will converge to $16$ digits in no more than this many steps:\n\n\n\n$$\n\\log_2(\\frac{53 + 1}{\\log_2(17)}).\n$$\n\n::: {.cell execution_count=24}\n``` {.julia .cell-code}\na = log2((53 + 1)/log2(17))\nceil(Integer, a)\n```\n\n::: {.cell-output .cell-output-display execution_count=25}\n```\n4\n```\n:::\n:::\n\n\nThat is $4$ steps suffices.\n\n\nFor $q = 0.80$, to find $1/q$ using the above we have\n\n::: {.cell hold='true' execution_count=25}\n``` {.julia .cell-code}\nq = 0.80\nx = (48/17) - (32/17)*q\nx = -q*x*x + 2*x\nx = -q*x*x + 2*x\nx = -q*x*x + 2*x\nx = -q*x*x + 2*x\n```\n\n::: {.cell-output .cell-output-display execution_count=26}\n```\n1.25\n```\n:::\n:::\n\n\nThis method has basically $18$ multiplication and addition operations for one division, so it naively would seem slower, but timing this shows the method is competitive with a regular division.\n\n\n## Wrapping in a function\n\n\nIn the previous examples, we saw fast convergence, guaranteed converge in $4$ steps, and an example where $8$ steps were needed to get the requested level of approximation. Newton's method usually converges quickly, but may converge slowly, and may not converge at all. Automating the task to avoid repeatedly running the update step is a task best done by the computer.\n\n\nThe `while` loop is a good way to repeat commands until some condition is met. With this, we present a simple function implementing Newton's method, we iterate until the update step gets really small (the `atol`) or the convergence takes more than $50$ steps. (There are other, better choices that could be used to determine when the algorithm should stop, these are just easy to understand.)\n\n::: {.cell execution_count=26}\n``` {.julia .cell-code}\nfunction nm(f, fp, x0)\n atol = 1e-14\n ctr = 0\n delta = Inf\n while (abs(delta) > atol) && (ctr < 50)\n delta = f(x0)/fp(x0)\n x0 = x0 - delta\n ctr = ctr + 1\n end\n\n ctr < 50 ? x0 : NaN\nend\n```\n\n::: {.cell-output .cell-output-display execution_count=27}\n```\nnm (generic function with 1 method)\n```\n:::\n:::\n\n\n##### Examples\n\n\n * Find a zero of $\\sin(x)$ starting at $x_0=3$:\n\n::: {.cell execution_count=27}\n``` {.julia .cell-code}\nnm(sin, cos, 3)\n```\n\n::: {.cell-output .cell-output-display execution_count=28}\n```\n3.141592653589793\n```\n:::\n:::\n\n\nThis is an approximation for $\\pi$, that historically found use, as the convergence is fast.\n\n\n * Find a solution to $x^5 = 5^x$ near $2$:\n\n\nWriting a function to handle this, we have:\n\n::: {.cell execution_count=28}\n``` {.julia .cell-code}\nk(x) = x^5 - 5^x\n```\n\n::: {.cell-output .cell-output-display execution_count=29}\n```\nk (generic function with 1 method)\n```\n:::\n:::\n\n\nWe could find the derivative by hand, but use the automatic one instead:\n\n::: {.cell execution_count=29}\n``` {.julia .cell-code}\nalpha = nm(k, k', 2)\nalpha, f(alpha)\n```\n\n::: {.cell-output .cell-output-display execution_count=30}\n```\n(1.764921914525776, 5.8411162339467655)\n```\n:::\n:::\n\n\n### Functions in the Roots package\n\n\nTyping in the `nm` function might be okay once, but would be tedious if it was needed each time. Besides, it isn't as robust to different inputs as possible. The `Roots` package provides a `Newton` method for `find_zero`.\n\n\nTo use a different method with `find_zero`, the calling pattern is `find_zero(f, x, M)` where `f` represent the function(s), `x` the initial point(s), and `M` the method. Here we have:\n\n::: {.cell execution_count=30}\n``` {.julia .cell-code}\nfind_zero((sin, cos), 3, Roots.Newton())\n```\n\n::: {.cell-output .cell-output-display execution_count=31}\n```\n3.141592653589793\n```\n:::\n:::\n\n\nOr, if a derivative is not specified, one can be computed using automatic differentiation:\n\n::: {.cell hold='true' execution_count=31}\n``` {.julia .cell-code}\nf(x) = sin(x)\nfind_zero((f, f'), 2, Roots.Newton())\n```\n\n::: {.cell-output .cell-output-display execution_count=32}\n```\n3.141592653589793\n```\n:::\n:::\n\n\nThe argument `verbose=true` will force a print out of a message summarizing the convergence and showing each step.\n\n::: {.cell hold='true' execution_count=32}\n``` {.julia .cell-code}\nf(x) = exp(x) - x^4\nfind_zero((f,f'), 8, Roots.Newton(); verbose=true)\n```\n\n::: {.cell-output .cell-output-display}\n```\nResults of univariate zero finding:\n\n* Converged to: 8.6131694564414\n* Algorithm: Roots.Newton()\n* iterations: 8\n* function evaluations ≈ 16\n* stopped as x_n ≈ x_{n-1} using atol=xatol, rtol=xrtol\n\nTrace:\nx₁ = 8,\t fx₁ = -1115.0420129582717\nx₂ = 9.1951685161021075,\t fx₂ = 2700.5339924159998\nx₃ = 8.7944708020788642,\t fx₃ = 615.76735783715776\nx₄ = 8.6356413896038262,\t fx₄ = 67.416233795479457\nx₅ = 8.6135576545997825,\t fx₅ = 1.1446528211590703\nx₆ = 8.6131695743314562,\t fx₆ = 0.00034750863687804667\nx₇ = 8.6131694564414101,\t fx₇ = 3.3651303965598345e-11\nx₈ = 8.6131694564413994,\t fx₈ = 1.8189894035458565e-12\nx₉ = 8.6131694564413994,\t fx₉ = 1.8189894035458565e-12\n\n```\n:::\n\n::: {.cell-output .cell-output-display execution_count=33}\n```\n8.6131694564414\n```\n:::\n:::\n\n\n##### Example: intersection of two graphs\n\n\nFind the intersection point between $f(x) = \\cos(x)$ and $g(x) = 5x$ near $0$.\n\n\nWe have Newton's method to solve for zeros of $f(x)$, i.e. when $f(x) = 0$. Here we want to solve for $x$ with $f(x) = g(x)$. To do so, we make a new function $h(x) = f(x) - g(x)$, that is $0$ when $f(x)$ equals $g(x)$:\n\n::: {.cell hold='true' execution_count=33}\n``` {.julia .cell-code}\nf(x) = cos(x)\ng(x) = 5x\nh(x) = f(x) - g(x)\nx0 = find_zero((h,h'), 0, Roots.Newton())\nx0, h(x0), f(x0), g(x0)\n```\n\n::: {.cell-output .cell-output-display execution_count=34}\n```\n(0.19616428118784215, 0.0, 0.9808214059392107, 0.9808214059392107)\n```\n:::\n:::\n\n\n---\n\n\nWe redo the above using a *parameter* for the $5$, as there are some options on how it would be done. We let `f(x,p) = cos(x) - p*x`. Then we can use `Roots.Newton` by also defining a derivative:\n\n::: {.cell hold='true' execution_count=34}\n``` {.julia .cell-code}\nf(x,p) = cos(x) - p*x\nfp(x,p) = -sin(x) - p\nxn = find_zero((f,fp), pi/4, Roots.Newton(); p=5)\nxn, f(xn, 5)\n```\n\n::: {.cell-output .cell-output-display execution_count=35}\n```\n(0.19616428118784215, 0.0)\n```\n:::\n:::\n\n\nTo use automatic differentiation is not straightforward, as we must hold the `p` fixed. For this, we introduce a closure that fixes `p` and differentiates in the `x` variable (called `u` below):\n\n::: {.cell hold='true' execution_count=35}\n``` {.julia .cell-code}\nf(x,p) = cos(x) - p*x\nfp(x,p) = (u -> f(u,p))'(x)\nxn = find_zero((f,fp), pi/4, Roots.Newton(); p=5)\n```\n\n::: {.cell-output .cell-output-display execution_count=36}\n```\n0.19616428118784215\n```\n:::\n:::\n\n\n##### Example: Finding $c$ in Rolle's Theorem\n\n\nThe function $r(x) = \\sqrt{1 - \\cos(x^2)^2}$ has a zero at $0$ and one at $a$ near $1.77$.\n\n::: {.cell execution_count=36}\n``` {.julia .cell-code}\nr(x) = sqrt(1 - cos(x^2)^2)\nplot(r, 0, 1.77)\n```\n\n::: {.cell-output .cell-output-display execution_count=37}\n![](newtons_method_files/figure-html/cell-37-output-1.svg){}\n:::\n:::\n\n\nAs $f(x)$ is differentiable between $0$ and $a$, Rolle's theorem says there will be value where the derivative is $0$. Find that value.\n\n\nThis value will be a zero of the derivative. A graph shows it should be near $1.2$, so we use that as a starting value to get the answer:\n\n::: {.cell execution_count=37}\n``` {.julia .cell-code}\nfind_zero((r',r''), 1.2, Roots.Newton())\n```\n\n::: {.cell-output .cell-output-display execution_count=38}\n```\n1.2533141373155003\n```\n:::\n:::\n\n\n## Convergence rates\n\n\nNewton's method is famously known to have \"quadratic convergence.\" What does this mean? Let the error in the $i$th step be called $e_i = x_i - \\alpha$. Then Newton's method satisfies a bound of the type:\n\n\n\n$$\n\\lvert e_{i+1} \\rvert \\leq M_i \\cdot e_i^2.\n$$\n\n\nIf $M$ were just a constant and we suppose $e_0 = 10^{-1}$ then $e_1$ would be less than $M 10^{-2}$ and $e_2$ less than $M^2 10^{-4}$, $e_3$ less than $M^3 10^{-8}$ and $e_4$ less than $M^4 10^{-16}$ which for $M=1$ is basically the machine precision when values are near $1$. That is for some problems, with a good initial guess it will take around $4$ or so steps to converge.\n\n\nTo identify $M$, let $\\alpha$ be the zero of $f$ to be approximated. Assume\n\n\n * The function $f$ has at continuous second derivative in a neighborhood of $\\alpha$.\n * The value $f'(\\alpha)$ is *non-zero* in the neighborhood of $\\alpha$.\n\n\nThen this linearization holds at each $x_i$ in the above neighborhood:\n\n\n\n$$\nf(x) = f(x_i) + f'(x_i) \\cdot (x - x_i) + \\frac{1}{2} f''(\\xi) \\cdot (x-x_i)^2.\n$$\n\n\nThe value $\\xi$ is from the mean value theorem and is between $x$ and $x_i$.\n\n\nDividing by $f'(x_i)$ and setting $x=\\alpha$ (as $f(\\alpha)=0$) leaves\n\n\n\n$$\n0 = \\frac{f(x_i)}{f'(x_i)} + (\\alpha-x_i) + \\frac{1}{2}\\cdot \\frac{f''(\\xi)}{f'(x_i)} \\cdot (\\alpha-x_i)^2.\n$$\n\n\nFor this value, we have\n\n\n\n$$\n\\begin{align*}\nx_{i+1} - \\alpha\n&= \\left(x_i - \\frac{f(x_i)}{f'(x_i)}\\right) - \\alpha\\\\\n&= \\left(x_i - \\alpha \\right) - \\frac{f(x_i)}{f'(x_i)}\\\\\n&= (x_i - \\alpha) + \\left(\n(\\alpha - x_i) + \\frac{1}{2}\\frac{f''(\\xi) \\cdot(\\alpha - x_i)^2}{f'(x_i)}\n\\right)\\\\\n&= \\frac{1}{2}\\frac{f''(\\xi)}{f'(x_i)} \\cdot(x_i - \\alpha)^2.\n\\end{align*}\n$$\n\n\nThat is\n\n\n\n$$\ne_{i+1} = \\frac{1}{2}\\frac{f''(\\xi)}{f'(x_i)} e_i^2.\n$$\n\n\nThis convergence to $\\alpha$ will be quadratic *if*:\n\n\n * The initial guess $x_0$ is not too far from $\\alpha$, so $e_0$ is managed.\n * The derivative at $\\alpha$ is not too close to $0$, hence, by continuity $f'(x_i)$ is not too close to $0$. (As it appears in the denominator). That is, the function can't be too flat, which should make sense, as then the tangent line is nearly parallel to the $x$ axis and would intersect far away.\n * The function $f$ has a continuous second derivative at $\\alpha$.\n * The second derivative is not too big (in absolute value) near $\\alpha$. A large second derivative means the function is very concave, which means it is \"turning\" a lot. In this case, the function turns away from the tangent line quickly, so the tangent line's zero is not necessarily a good approximation to the actual zero, $\\alpha$.\n\n\n:::{.callout-note}\n## Note\nThe basic tradeoff: methods like Newton's are faster than the bisection method in terms of function calls, but are not guaranteed to converge, as the bisection method is.\n\n:::\n\nWhat can go wrong when one of these isn't the case is illustrated next:\n\n\n### Poor initial step\n\n::: {.cell cache='true' hold='true' execution_count=38}\n\n::: {.cell-output .cell-output-display execution_count=39}\n```{=html}\n<div class=\"d-flex justify-content-center\"> <figure> <img src=\"data:image/gif;base64,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\" class=\"card-img-top\" alt=\"A Figure\">\n <figcaption><div class=\"markdown\"><p>Illustration of Newton&#39;s Method converging to a zero of a function, but slowly as the initial guess, is very poor, and not close to the zero. The algorithm does converge in this illustration, but not quickly and not to the nearest root from the initial guess.</p>\n</div> </figcaption>\n </figure>\n</div>\n```\n:::\n:::\n\n\n::: {.cell cache='true' hold='true' execution_count=39}\n\n::: {.cell-output .cell-output-display execution_count=40}\n```{=html}\n<div class=\"d-flex justify-content-center\"> <figure> <img src=\"data:image/gif;base64,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\" class=\"card-img-top\" alt=\"A Figure\">\n <figcaption><div class=\"markdown\"><p>Illustration of Newton&#39;s method failing to coverge as for some \\(x_i\\), \\(f'(x_i)\\) is too close to \\(0\\). In this instance after a few steps, the algorithm just cycles around the local minimum near \\(0.66\\). The values of \\(x_i\\) repeat in the pattern: \\(1.0002, 0.7503, -0.0833, 1.0002, \\dots\\). This is also an illustration of a poor initial guess. If there is a local minimum or maximum between the guess and the zero, such cycles can occur.</p>\n</div> </figcaption>\n </figure>\n</div>\n```\n:::\n:::\n\n\n### The second derivative is too big\n\n::: {.cell cache='true' hold='true' execution_count=40}\n\n::: {.cell-output .cell-output-display execution_count=41}\n```{=html}\n<div class=\"d-flex justify-content-center\"> <figure> <img src=\"data:image/gif;base64,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\" class=\"card-img-top\" alt=\"A Figure\">\n <figcaption><div class=\"markdown\"><p>Illustration of Newton&#39;s Method not converging. Here the second derivative is too big near the zero - it blows up near \\(0\\) - and the convergence does not occur. Rather the iterates increase in their distance from the zero.</p>\n</div> </figcaption>\n </figure>\n</div>\n```\n:::\n:::\n\n\n### The tangent line at some xᵢ is flat\n\n::: {.cell cache='true' hold='true' execution_count=41}\n\n::: {.cell-output .cell-output-display execution_count=42}\n```{=html}\n<div class=\"d-flex justify-content-center\"> <figure> <img src=\"data:image/gif;base64,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\" class=\"card-img-top\" alt=\"A Figure\">\n <figcaption><div class=\"markdown\"><p>The function \\(f(x) = x^{20} - 1\\) has two bad behaviours for Newton&#39;s method: for \\(x < 1\\) the derivative is nearly \\(0\\) and for \\(x>1\\) the second derivative is very big. In this illustration, we have an initial guess of \\(x_0=8/9\\). As the tangent line is fairly flat, the next approximation is far away, \\(x_1 = 1.313\\dots\\). As this guess is is much bigger than \\(1\\), the ratio \\(f(x)/f'(x) \\approx x^{20}/(20x^{19}) = x/20\\), so \\(x_i - x_{i-1} \\approx (19/20)x_i\\) yielding slow, linear convergence until \\(f''(x_i)\\) is moderate. For this function, starting at \\(x_0=8/9\\) takes 11 steps, at \\(x_0=7/8\\) takes 13 steps, at \\(x_0=3/4\\) takes \\(55\\) steps, and at \\(x_0=1/2\\) it takes \\(204\\) steps.</p>\n</div> </figcaption>\n </figure>\n</div>\n```\n:::\n:::\n\n\n###### Example\n\n\nSuppose $\\alpha$ is a simple zero for $f(x)$. (The value $\\alpha$ is a zero of multiplicity $k$ if $f(x) = (x-\\alpha)^kg(x)$ where $g(\\alpha)$ is not zero. A simple zero has multiplicity $1$. If $f'(\\alpha) \\neq 0$ and the second derivative exists, then a zero $\\alpha$ will be simple.) Around $\\alpha$, quadratic convergence should apply. However, consider the function $g(x) = f(x)^k$ for some integer $k \\geq 2$. Then $\\alpha$ is still a zero, but the derivative of $g$ at $\\alpha$ is zero, so the tangent line is basically flat. This will slow the convergence up. We can see that the update step $g'(x)/g(x)$ becomes $(1/k) f'(x)/f(x)$, so an extra factor is introduced.\n\n\nThe calculation that produces the quadratic convergence now becomes:\n\n\n\n$$\nx_{i+1} - \\alpha = (x_i - \\alpha) - \\frac{1}{k}(x_i-\\alpha + \\frac{f''(\\xi)}{2f'(x_i)}(x_i-\\alpha)^2) =\n\\frac{k-1}{k} (x_i-\\alpha) + \\frac{f''(\\xi)}{2kf'(x_i)}(x_i-\\alpha)^2.\n$$\n\n\nAs $k > 1$, the $(x_i - \\alpha)$ term dominates, and we see the convergence is linear with $\\lvert e_{i+1}\\rvert \\approx (k-1)/k \\lvert e_i\\rvert$.\n\n\n## Questions\n\n\n###### Question\n\n\nLook at this graph with $x_0$ marked with a point:\n\n::: {.cell hold='true' execution_count=42}\n\n::: {.cell-output .cell-output-display execution_count=43}\n![](newtons_method_files/figure-html/cell-43-output-1.svg){}\n:::\n:::\n\n\nIf one step of Newton's method was used, what would be the value of $x_1$?\n\n::: {.cell hold='true' execution_count=43}\n\n::: {.cell-output .cell-output-display execution_count=44}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='6862846334364595284' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_6862846334364595284\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_6862846334364595284_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_6862846334364595284\"\n id=\"radio_6862846334364595284_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n \\(-2.224\\)\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_6862846334364595284_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_6862846334364595284\"\n id=\"radio_6862846334364595284_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n \\(-2.80\\)\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_6862846334364595284_3\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_6862846334364595284\"\n id=\"radio_6862846334364595284_3\" value=\"3\">\n </input>\n <span class=\"label-body px-1\">\n \\(-0.020\\)\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_6862846334364595284_4\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_6862846334364595284\"\n id=\"radio_6862846334364595284_4\" value=\"4\">\n </input>\n <span class=\"label-body px-1\">\n \\(0.355\\)\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='6862846334364595284_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_6862846334364595284\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 1;\n var msgBox = document.getElementById('6862846334364595284_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_6862846334364595284\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_6862846334364595284\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nLook at this graph of some increasing, concave up $f(x)$ with initial point $x_0$ marked. Let $\\alpha$ be the zero.\n\n::: {.cell hold='true' execution_count=44}\n\n::: {.cell-output .cell-output-display execution_count=45}\n![](newtons_method_files/figure-html/cell-45-output-1.svg){}\n:::\n:::\n\n\nWhat can be said about $x_1$?\n\n::: {.cell hold='true' execution_count=45}\n\n::: {.cell-output .cell-output-display execution_count=46}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='1606560572276586394' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_1606560572276586394\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_1606560572276586394_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_1606560572276586394\"\n id=\"radio_1606560572276586394_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n It must be \\(x_0 < x_1 < \\alpha\\)\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_1606560572276586394_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_1606560572276586394\"\n id=\"radio_1606560572276586394_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n It must be \\(x_1 > \\alpha\\)\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_1606560572276586394_3\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_1606560572276586394\"\n id=\"radio_1606560572276586394_3\" value=\"3\">\n </input>\n <span class=\"label-body px-1\">\n It must be \\(x_1 < x_0\\)\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='1606560572276586394_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_1606560572276586394\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 2;\n var msgBox = document.getElementById('1606560572276586394_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_1606560572276586394\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_1606560572276586394\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\n---\n\nLook at this graph of some increasing, concave up $f(x)$ with initial point $x_0$ marked. Let $\\alpha$ be the zero.\n\n::: {.cell hold='true' execution_count=46}\n\n::: {.cell-output .cell-output-display execution_count=47}\n![](newtons_method_files/figure-html/cell-47-output-1.svg){}\n:::\n:::\n\n\nWhat can be said about $x_1$?\n\n::: {.cell hold='true' execution_count=47}\n\n::: {.cell-output .cell-output-display execution_count=48}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='4566090323629342608' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_4566090323629342608\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_4566090323629342608_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_4566090323629342608\"\n id=\"radio_4566090323629342608_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n It must be \\(x_1 > x_0\\)\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_4566090323629342608_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_4566090323629342608\"\n id=\"radio_4566090323629342608_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n It must be \\(x_1 < \\alpha\\)\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_4566090323629342608_3\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_4566090323629342608\"\n id=\"radio_4566090323629342608_3\" value=\"3\">\n </input>\n <span class=\"label-body px-1\">\n It must be \\(\\alpha < x_1 < x_0\\)\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='4566090323629342608_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_4566090323629342608\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 3;\n var msgBox = document.getElementById('4566090323629342608_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_4566090323629342608\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_4566090323629342608\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\n---\n\n\nSuppose $f(x)$ is increasing and concave up. From the tangent line representation: $f(x) = f(c) + f'(c)\\cdot(x-c) + f''(\\xi)/2 \\cdot(x-c)^2$, explain why it must be that the graph of $f(x)$ lies on or *above* the tangent line.\n\n::: {.cell hold='true' execution_count=48}\n\n::: {.cell-output .cell-output-display execution_count=49}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='6053717636326792545' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_6053717636326792545\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_6053717636326792545_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_6053717636326792545\"\n id=\"radio_6053717636326792545_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n This isn&#39;t true. The function \\(f(x) = x^3\\) at \\(x=0\\) provides a counterexample\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_6053717636326792545_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_6053717636326792545\"\n id=\"radio_6053717636326792545_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n As \\(f''(\\xi)/2 \\cdot(x-c)^2\\) is non-negative, we must have \\(f(x) - (f(c) + f'(c)\\cdot(x-c)) \\geq 0\\).\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_6053717636326792545_3\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_6053717636326792545\"\n id=\"radio_6053717636326792545_3\" value=\"3\">\n </input>\n <span class=\"label-body px-1\">\n As \\(f''(\\xi) < 0\\) it must be that \\(f(x) - (f(c) + f'(c)\\cdot(x-c)) \\geq 0\\).\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='6053717636326792545_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_6053717636326792545\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 2;\n var msgBox = document.getElementById('6053717636326792545_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_6053717636326792545\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_6053717636326792545\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\nThis question can be used to give a proof for the previous two questions, which can be answered by considering the graphs alone. Combined, they say that if a function is increasing and concave up and $\\alpha$ is a zero, then if $x_0 < \\alpha$ it will be $x_1 > \\alpha$, and for any $x_i > \\alpha$, $\\alpha <= x_{i+1} <= x_\\alpha$, so the sequence in Newton's method is decreasing and bounded below; conditions for which it is guaranteed mathematically there will be convergence.\n\n\n###### Question\n\n\nLet $f(x) = x^2 - 3^x$. This has derivative $2x - 3^x \\cdot \\log(3)$. Starting with $x_0=0$, what does Newton's method converge on?\n\n::: {.cell hold='true' execution_count=49}\n\n::: {.cell-output .cell-output-display execution_count=50}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='14766251128608283573' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_14766251128608283573\">\n <div style=\"padding-top: 5px\">\n </br>\n<div class=\"input-group\">\n <input id=\"14766251128608283573\" type=\"number\" class=\"form-control\" placeholder=\"Numeric answer\">\n</div>\n\n \n </div>\n </div>\n <div id='14766251128608283573_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.getElementById(\"14766251128608283573\").addEventListener(\"change\", function() {\n var correct = (Math.abs(this.value - -0.6860267245362514) <= 1.0e-14);\n var msgBox = document.getElementById('14766251128608283573_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_14766251128608283573\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_14766251128608283573\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nLet $f(x) = \\exp(x) - x^4$. There are 3 zeros for this function. Which one does Newton's method converge to when $x_0=2$?\n\n::: {.cell hold='true' execution_count=50}\n\n::: {.cell-output .cell-output-display execution_count=51}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='12807642482449327811' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_12807642482449327811\">\n <div style=\"padding-top: 5px\">\n </br>\n<div class=\"input-group\">\n <input id=\"12807642482449327811\" type=\"number\" class=\"form-control\" placeholder=\"Numeric answer\">\n</div>\n\n \n </div>\n </div>\n <div id='12807642482449327811_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.getElementById(\"12807642482449327811\").addEventListener(\"change\", function() {\n var correct = (Math.abs(this.value - 1.4296118247255556) <= 0.1);\n var msgBox = document.getElementById('12807642482449327811_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_12807642482449327811\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_12807642482449327811\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nLet $f(x) = \\exp(x) - x^4$. As mentioned, there are 3 zeros for this function. Which one does Newton's method converge to when $x_0=8$?\n\n::: {.cell hold='true' execution_count=51}\n\n::: {.cell-output .cell-output-display execution_count=52}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='22129191844296635' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_22129191844296635\">\n <div style=\"padding-top: 5px\">\n </br>\n<div class=\"input-group\">\n <input id=\"22129191844296635\" type=\"number\" class=\"form-control\" placeholder=\"Numeric answer\">\n</div>\n\n \n </div>\n </div>\n <div id='22129191844296635_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.getElementById(\"22129191844296635\").addEventListener(\"change\", function() {\n var correct = (Math.abs(this.value - 8.6131694564414) <= 0.1);\n var msgBox = document.getElementById('22129191844296635_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_22129191844296635\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_22129191844296635\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nLet $f(x) = \\sin(x) - \\cos(4\\cdot x)$.\n\n\nStarting at $\\pi/8$, solve for the root returned by Newton's method\n\n::: {.cell hold='true' execution_count=52}\n\n::: {.cell-output .cell-output-display execution_count=53}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='17518691219046568265' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_17518691219046568265\">\n <div style=\"padding-top: 5px\">\n </br>\n<div class=\"input-group\">\n <input id=\"17518691219046568265\" type=\"number\" class=\"form-control\" placeholder=\"Numeric answer\">\n</div>\n\n \n </div>\n </div>\n <div id='17518691219046568265_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.getElementById(\"17518691219046568265\").addEventListener(\"change\", function() {\n var correct = (Math.abs(this.value - 0.3141592653589793) <= 0.001);\n var msgBox = document.getElementById('17518691219046568265_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_17518691219046568265\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_17518691219046568265\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nUsing Newton's method find a root to $f(x) = \\cos(x) - x^3$ starting at $x_0 = 1/2$.\n\n::: {.cell hold='true' execution_count=53}\n\n::: {.cell-output .cell-output-display execution_count=54}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='3416674622820209487' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_3416674622820209487\">\n <div style=\"padding-top: 5px\">\n </br>\n<div class=\"input-group\">\n <input id=\"3416674622820209487\" type=\"number\" class=\"form-control\" placeholder=\"Numeric answer\">\n</div>\n\n \n </div>\n </div>\n <div id='3416674622820209487_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.getElementById(\"3416674622820209487\").addEventListener(\"change\", function() {\n var correct = (Math.abs(this.value - 0.8654740331016144) <= 0.001);\n var msgBox = document.getElementById('3416674622820209487_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_3416674622820209487\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_3416674622820209487\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nUse Newton's method to find a root of $f(x) = x^5 + x -1$. Make a quick graph to find a reasonable starting point.\n\n::: {.cell hold='true' execution_count=54}\n\n::: {.cell-output .cell-output-display execution_count=55}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='7565855497422298045' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_7565855497422298045\">\n <div style=\"padding-top: 5px\">\n </br>\n<div class=\"input-group\">\n <input id=\"7565855497422298045\" type=\"number\" class=\"form-control\" placeholder=\"Numeric answer\">\n</div>\n\n \n </div>\n </div>\n <div id='7565855497422298045_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.getElementById(\"7565855497422298045\").addEventListener(\"change\", function() {\n var correct = (Math.abs(this.value - 0.7548776662466927) <= 0.001);\n var msgBox = document.getElementById('7565855497422298045_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_7565855497422298045\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_7565855497422298045\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\n\nFor the following graph, graphically consider the algorithm for a few different starting points.\n\n::: {.cell hold='true' execution_count=56}\n\n::: {.cell-output .cell-output-display execution_count=57}\n![](newtons_method_files/figure-html/cell-57-output-1.svg){}\n:::\n:::\n\n\nIf $x_0$ is $1$ what occurs?\n\n::: {.cell execution_count=57}\n\n::: {.cell-output .cell-output-display execution_count=58}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='8622224337604293786' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_8622224337604293786\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_8622224337604293786_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_8622224337604293786\"\n id=\"radio_8622224337604293786_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n The algorithm converges very quickly. A good initial point was chosen.\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_8622224337604293786_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_8622224337604293786\"\n id=\"radio_8622224337604293786_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n The algorithm converges, but slowly. The initial point is close enough to the answer to ensure decreasing errors.\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_8622224337604293786_3\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_8622224337604293786\"\n id=\"radio_8622224337604293786_3\" value=\"3\">\n </input>\n <span class=\"label-body px-1\">\n The algrithm fails to converge, as it cycles about\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='8622224337604293786_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_8622224337604293786\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 1;\n var msgBox = document.getElementById('8622224337604293786_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_8622224337604293786\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_8622224337604293786\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\nWhen $x_0 = 1.0$ the following values are true for $f$:\n\n::: {.cell execution_count=58}\n\n::: {.cell-output .cell-output-display execution_count=59}\n```\n(e₀ = -0.16730397826141874, f₀ = 6.0, f̄₀ = 31.81133480963258, ē₁ = 0.0742015850567364)\n```\n:::\n:::\n\n\nWhere the values `f̄₀` and `ē₁` are worst-case estimates when $\\xi$ is between $x_0$ and the zero.\n\n\nDoes the magnitude of the error increase or decrease in the first step?\n\n::: {.cell hold='true' execution_count=59}\n\n::: {.cell-output .cell-output-display execution_count=60}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='6469702607136678106' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_6469702607136678106\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_6469702607136678106_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_6469702607136678106\"\n id=\"radio_6469702607136678106_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n Appears to increase\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_6469702607136678106_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_6469702607136678106\"\n id=\"radio_6469702607136678106_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n It decreases\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='6469702607136678106_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_6469702607136678106\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 2;\n var msgBox = document.getElementById('6469702607136678106_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_6469702607136678106\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_6469702607136678106\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\nIf $x_0$ is set near $0.40$ what happens?\n\n::: {.cell hold='true' execution_count=60}\n\n::: {.cell-output .cell-output-display execution_count=61}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='14834489361796507382' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_14834489361796507382\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_14834489361796507382_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_14834489361796507382\"\n id=\"radio_14834489361796507382_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n The algorithm converges very quickly. A good initial point was chosen.\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_14834489361796507382_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_14834489361796507382\"\n id=\"radio_14834489361796507382_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n The algorithm converges, but slowly. The initial point is close enough to the answer to ensure decreasing errors.\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_14834489361796507382_3\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_14834489361796507382\"\n id=\"radio_14834489361796507382_3\" value=\"3\">\n </input>\n <span class=\"label-body px-1\">\n The algrithm fails to converge, as it cycles about\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='14834489361796507382_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_14834489361796507382\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 3;\n var msgBox = document.getElementById('14834489361796507382_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_14834489361796507382\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_14834489361796507382\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\nWhen $x_0 = 0.4$ the following values are true for $f$:\n\n::: {.cell hold='true' execution_count=61}\n\n::: {.cell-output .cell-output-display execution_count=62}\n```\n(e₀ = -0.7673039782614187, f₀ = 1.1280000000000001, f̄₀ = 31.81133480963258, ē₁ = 8.301903808997139)\n```\n:::\n:::\n\n\nWhere the values `f̄₀` and `ē₁` are worst-case estimates when $\\xi$ is between $x_0$ and the zero.\n\n\nDoes the magnitude of the error increase or decrease in the first step?\n\n::: {.cell hold='true' execution_count=62}\n\n::: {.cell-output .cell-output-display execution_count=63}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='12495716582161077290' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_12495716582161077290\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_12495716582161077290_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_12495716582161077290\"\n id=\"radio_12495716582161077290_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n Appears to increase\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_12495716582161077290_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_12495716582161077290\"\n id=\"radio_12495716582161077290_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n It decreases\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='12495716582161077290_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_12495716582161077290\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 1;\n var msgBox = document.getElementById('12495716582161077290_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_12495716582161077290\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_12495716582161077290\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\nIf $x_0$ is set near $0.75$ what happens?\n\n::: {.cell hold='true' execution_count=63}\n\n::: {.cell-output .cell-output-display execution_count=64}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='6797409094054490614' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_6797409094054490614\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_6797409094054490614_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_6797409094054490614\"\n id=\"radio_6797409094054490614_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n The algorithm converges very quickly. A good initial point was chosen.\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_6797409094054490614_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_6797409094054490614\"\n id=\"radio_6797409094054490614_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n The algorithm converges, but slowly. The initial point is close enough to the answer to ensure decreasing errors.\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_6797409094054490614_3\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_6797409094054490614\"\n id=\"radio_6797409094054490614_3\" value=\"3\">\n </input>\n <span class=\"label-body px-1\">\n The algrithm fails to converge, as it cycles about\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='6797409094054490614_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_6797409094054490614\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 3;\n var msgBox = document.getElementById('6797409094054490614_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_6797409094054490614\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_6797409094054490614\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nWill Newton's method converge for the function $f(x) = x^5 - x + 1$ starting at $x=1$?\n\n::: {.cell hold='true' execution_count=64}\n\n::: {.cell-output .cell-output-display execution_count=65}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='4922472479738442564' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_4922472479738442564\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_4922472479738442564_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_4922472479738442564\"\n id=\"radio_4922472479738442564_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n Yes\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_4922472479738442564_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_4922472479738442564\"\n id=\"radio_4922472479738442564_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n No. The initial guess is not close enough\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_4922472479738442564_3\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_4922472479738442564\"\n id=\"radio_4922472479738442564_3\" value=\"3\">\n </input>\n <span class=\"label-body px-1\">\n No. The second derivative is too big\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_4922472479738442564_4\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_4922472479738442564\"\n id=\"radio_4922472479738442564_4\" value=\"4\">\n </input>\n <span class=\"label-body px-1\">\n No. The first derivative gets too close to \\(0\\) for one of the \\(x_i\\)\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='4922472479738442564_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_4922472479738442564\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 2;\n var msgBox = document.getElementById('4922472479738442564_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_4922472479738442564\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_4922472479738442564\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nWill Newton's method converge for the function $f(x) = 4x^5 - x + 1$ starting at $x=1$?\n\n::: {.cell hold='true' execution_count=65}\n\n::: {.cell-output .cell-output-display execution_count=66}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='5925612931919288257' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_5925612931919288257\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_5925612931919288257_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_5925612931919288257\"\n id=\"radio_5925612931919288257_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n Yes\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_5925612931919288257_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_5925612931919288257\"\n id=\"radio_5925612931919288257_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n No. The initial guess is not close enough\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_5925612931919288257_3\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_5925612931919288257\"\n id=\"radio_5925612931919288257_3\" value=\"3\">\n </input>\n <span class=\"label-body px-1\">\n No. The second derivative is too big, or does not exist\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_5925612931919288257_4\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_5925612931919288257\"\n id=\"radio_5925612931919288257_4\" value=\"4\">\n </input>\n <span class=\"label-body px-1\">\n No. The first derivative gets too close to \\(0\\) for one of the \\(x_i\\)\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='5925612931919288257_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_5925612931919288257\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 2;\n var msgBox = document.getElementById('5925612931919288257_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_5925612931919288257\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_5925612931919288257\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nWill Newton's method converge for the function $f(x) = x^{10} - 2x^3 - x + 1$ starting from $0.25$?\n\n::: {.cell hold='true' execution_count=66}\n\n::: {.cell-output .cell-output-display execution_count=67}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='7327880059351161960' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_7327880059351161960\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_7327880059351161960_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_7327880059351161960\"\n id=\"radio_7327880059351161960_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n Yes\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_7327880059351161960_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_7327880059351161960\"\n id=\"radio_7327880059351161960_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n No. The initial guess is not close enough\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_7327880059351161960_3\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_7327880059351161960\"\n id=\"radio_7327880059351161960_3\" value=\"3\">\n </input>\n <span class=\"label-body px-1\">\n No. The second derivative is too big, or does not exist\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_7327880059351161960_4\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_7327880059351161960\"\n id=\"radio_7327880059351161960_4\" value=\"4\">\n </input>\n <span class=\"label-body px-1\">\n No. The first derivative gets too close to \\(0\\) for one of the \\(x_i\\)\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='7327880059351161960_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_7327880059351161960\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 1;\n var msgBox = document.getElementById('7327880059351161960_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_7327880059351161960\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_7327880059351161960\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nWill Newton's method converge for $f(x) = 20x/(100 x^2 + 1)$ starting at $0.1$?\n\n::: {.cell hold='true' execution_count=67}\n\n::: {.cell-output .cell-output-display execution_count=68}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='8730087032757148508' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_8730087032757148508\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_8730087032757148508_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_8730087032757148508\"\n id=\"radio_8730087032757148508_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n Yes\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_8730087032757148508_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_8730087032757148508\"\n id=\"radio_8730087032757148508_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n No. The initial guess is not close enough\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_8730087032757148508_3\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_8730087032757148508\"\n id=\"radio_8730087032757148508_3\" value=\"3\">\n </input>\n <span class=\"label-body px-1\">\n No. The second derivative is too big, or does not exist\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_8730087032757148508_4\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_8730087032757148508\"\n id=\"radio_8730087032757148508_4\" value=\"4\">\n </input>\n <span class=\"label-body px-1\">\n No. The first derivative gets too close to \\(0\\) for one of the \\(x_i\\)\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='8730087032757148508_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_8730087032757148508\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 4;\n var msgBox = document.getElementById('8730087032757148508_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_8730087032757148508\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_8730087032757148508\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nWill Newton's method converge to a zero for $f(x) = \\sqrt{(1 - x^2)^2}$?\n\n::: {.cell hold='true' execution_count=68}\n\n::: {.cell-output .cell-output-display execution_count=69}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='17171956991069004407' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_17171956991069004407\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_17171956991069004407_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_17171956991069004407\"\n id=\"radio_17171956991069004407_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n Yes\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_17171956991069004407_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_17171956991069004407\"\n id=\"radio_17171956991069004407_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n No. The initial guess is not close enough\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_17171956991069004407_3\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_17171956991069004407\"\n id=\"radio_17171956991069004407_3\" value=\"3\">\n </input>\n <span class=\"label-body px-1\">\n No. The second derivative is too big, or does not exist\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_17171956991069004407_4\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_17171956991069004407\"\n id=\"radio_17171956991069004407_4\" value=\"4\">\n </input>\n <span class=\"label-body px-1\">\n No. The first derivative gets too close to \\(0\\) for one of the \\(x_i\\)\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='17171956991069004407_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_17171956991069004407\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 3;\n var msgBox = document.getElementById('17171956991069004407_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_17171956991069004407\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_17171956991069004407\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nUse Newton's method to find a root of $f(x) = 4x^4 - 5x^3 + 4x^2 -20x -6$ starting at $x_0 = 0$.\n\n::: {.cell hold='true' execution_count=69}\n\n::: {.cell-output .cell-output-display execution_count=70}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='9581185798730449798' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_9581185798730449798\">\n <div style=\"padding-top: 5px\">\n </br>\n<div class=\"input-group\">\n <input id=\"9581185798730449798\" type=\"number\" class=\"form-control\" placeholder=\"Numeric answer\">\n</div>\n\n \n </div>\n </div>\n <div id='9581185798730449798_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.getElementById(\"9581185798730449798\").addEventListener(\"change\", function() {\n var correct = (Math.abs(this.value - -0.27798094871260326) <= 0.001);\n var msgBox = document.getElementById('9581185798730449798_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_9581185798730449798\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_9581185798730449798\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nUse Newton's method to find a zero of $f(x) = \\sin(x) - x/2$ that is *bigger* than $0$.\n\n::: {.cell hold='true' execution_count=70}\n\n::: {.cell-output .cell-output-display execution_count=71}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='11394949529701006511' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_11394949529701006511\">\n <div style=\"padding-top: 5px\">\n </br>\n<div class=\"input-group\">\n <input id=\"11394949529701006511\" type=\"number\" class=\"form-control\" placeholder=\"Numeric answer\">\n</div>\n\n \n </div>\n </div>\n <div id='11394949529701006511_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.getElementById(\"11394949529701006511\").addEventListener(\"change\", function() {\n var correct = (Math.abs(this.value - 1.895494267033981) <= 0.001);\n var msgBox = document.getElementById('11394949529701006511_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_11394949529701006511\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_11394949529701006511\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nThe Newton baffler (defined below) is so named, as Newton's method will fail to find the root for most starting points.\n\n::: {.cell execution_count=71}\n``` {.julia .cell-code}\nfunction newton_baffler(x)\n if ( x - 0.0 ) < -0.25\n 0.75 * ( x - 0 ) - 0.3125\n elseif ( x - 0 ) < 0.25\n 2.0 * ( x - 0 )\n else\n 0.75 * ( x - 0 ) + 0.3125\n end\nend\n```\n\n::: {.cell-output .cell-output-display execution_count=72}\n```\nnewton_baffler (generic function with 1 method)\n```\n:::\n:::\n\n\nWill Newton's method find the zero at $0.0$ starting at $1$?\n\n::: {.cell hold='true' execution_count=72}\n\n::: {.cell-output .cell-output-display execution_count=73}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='4781000657058834030' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_4781000657058834030\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_4781000657058834030_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_4781000657058834030\"\n id=\"radio_4781000657058834030_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n Yes\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_4781000657058834030_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_4781000657058834030\"\n id=\"radio_4781000657058834030_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n No\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='4781000657058834030_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_4781000657058834030\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 2;\n var msgBox = document.getElementById('4781000657058834030_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_4781000657058834030\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_4781000657058834030\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\nConsidering this plot:\n\n::: {.cell hold='true' execution_count=73}\n``` {.julia .cell-code}\nplot(newton_baffler, -1.1, 1.1)\n```\n\n::: {.cell-output .cell-output-display execution_count=74}\n![](newtons_method_files/figure-html/cell-74-output-1.svg){}\n:::\n:::\n\n\nStarting with $x_0=1$, you can see why Newton's method will fail. Why?\n\n::: {.cell hold='true' execution_count=74}\n\n::: {.cell-output .cell-output-display execution_count=75}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='3431105032566557125' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_3431105032566557125\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_3431105032566557125_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_3431105032566557125\"\n id=\"radio_3431105032566557125_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n The first derivative is \\(0\\) at \\(1\\)\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_3431105032566557125_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_3431105032566557125\"\n id=\"radio_3431105032566557125_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n It doesn&#39;t fail, it converges to \\(0\\)\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_3431105032566557125_3\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_3431105032566557125\"\n id=\"radio_3431105032566557125_3\" value=\"3\">\n </input>\n <span class=\"label-body px-1\">\n The tangent lines for \\(|x| > 0.25\\) intersect at \\(x\\) values with \\(|x| > 0.25\\)\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='3431105032566557125_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_3431105032566557125\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 3;\n var msgBox = document.getElementById('3431105032566557125_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_3431105032566557125\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_3431105032566557125\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\nThis function does not have a small first derivative; or a large second derivative; and the bump up can be made as close to the origin as desired, so the starting point can be very close to the zero. However, even though the conditions of the error term are satisfied, the error term does not apply, as $f$ is not continuously differentiable.\n\n\n###### Question\n\n\nLet $f(x) = \\sin(x) - x/4$. Starting at $x_0 = 2\\pi$ Newton's method will converge to a value, but it will take many steps. Using the argument `verbose=true` for `find_zero`, how many steps does it take:\n\n::: {.cell hold='true' execution_count=75}\n\n::: {.cell-output .cell-output-display execution_count=76}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='5835986866942264526' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_5835986866942264526\">\n <div style=\"padding-top: 5px\">\n </br>\n<div class=\"input-group\">\n <input id=\"5835986866942264526\" type=\"number\" class=\"form-control\" placeholder=\"Numeric answer\">\n</div>\n\n \n </div>\n </div>\n <div id='5835986866942264526_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.getElementById(\"5835986866942264526\").addEventListener(\"change\", function() {\n var correct = (Math.abs(this.value - 22) <= 2);\n var msgBox = document.getElementById('5835986866942264526_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_5835986866942264526\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_5835986866942264526\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n});\n\n</script>\n```\n:::\n:::\n\n\nWhat is the zero that is found?\n\n::: {.cell hold='true' execution_count=76}\n\n::: {.cell-output .cell-output-display execution_count=77}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='5797384934421889060' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_5797384934421889060\">\n <div style=\"padding-top: 5px\">\n </br>\n<div class=\"input-group\">\n <input id=\"5797384934421889060\" type=\"number\" class=\"form-control\" placeholder=\"Numeric answer\">\n</div>\n\n \n </div>\n </div>\n <div id='5797384934421889060_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.getElementById(\"5797384934421889060\").addEventListener(\"change\", function() {\n var correct = (Math.abs(this.value - -2.4745767873698292) <= 0.001);\n var msgBox = document.getElementById('5797384934421889060_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_5797384934421889060\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_5797384934421889060\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n});\n\n</script>\n```\n:::\n:::\n\n\nIs this the closest zero to the starting point, $x_0$?\n\n::: {.cell hold='true' execution_count=77}\n\n::: {.cell-output .cell-output-display execution_count=78}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='4439696903478098272' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_4439696903478098272\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_4439696903478098272_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_4439696903478098272\"\n id=\"radio_4439696903478098272_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n Yes\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_4439696903478098272_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_4439696903478098272\"\n id=\"radio_4439696903478098272_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n No\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='4439696903478098272_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_4439696903478098272\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 2;\n var msgBox = document.getElementById('4439696903478098272_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_4439696903478098272\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_4439696903478098272\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\n###### Question\n\n\nQuadratic convergence of Newton's method only applies to *simple* roots. For example, we can see (using the `verbose=true` argument to the `Roots` package's `newton` method, that it only takes $4$ steps to find a zero to $f(x) = \\cos(x) - x$ starting at $x_0 = 1$. But it takes many more steps to find the same zero for $f(x) = (\\cos(x) - x)^2$.\n\n\nHow many?\n\n::: {.cell hold='true' execution_count=78}\n\n::: {.cell-output .cell-output-display execution_count=79}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='3758309827326110847' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_3758309827326110847\">\n <div style=\"padding-top: 5px\">\n </br>\n<div class=\"input-group\">\n <input id=\"3758309827326110847\" type=\"number\" class=\"form-control\" placeholder=\"Numeric answer\">\n</div>\n\n \n </div>\n </div>\n <div id='3758309827326110847_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.getElementById(\"3758309827326110847\").addEventListener(\"change\", function() {\n var correct = (Math.abs(this.value - 24) <= 2);\n var msgBox = document.getElementById('3758309827326110847_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_3758309827326110847\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_3758309827326110847\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n});\n\n</script>\n```\n:::\n:::\n\n\n###### Question: Implicit equations\n\n\nThe equation $x^2 + x\\cdot y + y^2 = 1$ is a rotated ellipse.\n\n::: {.cell hold='true' execution_count=79}\n\n::: {.cell-output .cell-output-display execution_count=80}\n![](newtons_method_files/figure-html/cell-80-output-1.svg){}\n:::\n:::\n\n\nCan we find which point on its graph has the largest $y$ value?\n\n\nThis would be straightforward *if* we could write $y(x) = \\dots$, for then we would simply find the critical points and investiate. But we can't so easily solve for $y$ interms of $x$. However, we can use Newton's method to do so:\n\n::: {.cell execution_count=80}\n``` {.julia .cell-code}\nfunction findy(x)\n fn = y -> (x^2 + x*y + y^2) - 1\n fp = y -> (x + 2y)\n find_zero((fn, fp), sqrt(1 - x^2), Roots.Newton())\nend\n```\n\n::: {.cell-output .cell-output-display execution_count=81}\n```\nfindy (generic function with 1 method)\n```\n:::\n:::\n\n\nFor a *fixed* x, this solves for $y$ in the equation: $F(y) = x^2 + x \\cdot y + y^2 - 1 = 0$. It should be that $(x,y)$ is a solution:\n\n::: {.cell hold='true' execution_count=81}\n``` {.julia .cell-code}\nx = .75\ny = findy(x)\nx^2 + x*y + y^2 ## is this 1?\n```\n\n::: {.cell-output .cell-output-display execution_count=82}\n```\n1.0000000000000002\n```\n:::\n:::\n\n\nSo we have a means to find $y(x)$, but it is implicit.\n\n\nUsing `find_zero`, find the value $x$ which maximizes `y` by finding a zero of `y'`. Use this to find the point $(x,y)$ with largest $y$ value.\n\n::: {.cell hold='true' execution_count=82}\n\n::: {.cell-output .cell-output-display execution_count=83}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='16429128305262743027' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_16429128305262743027\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_16429128305262743027_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_16429128305262743027\"\n id=\"radio_16429128305262743027_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n \\((-0.57735, 1.15470)\\)\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_16429128305262743027_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_16429128305262743027\"\n id=\"radio_16429128305262743027_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n \\((0.57735, 0.57735)\\)\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_16429128305262743027_3\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_16429128305262743027\"\n id=\"radio_16429128305262743027_3\" value=\"3\">\n </input>\n <span class=\"label-body px-1\">\n \\((0, -0.57735)\\)\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_16429128305262743027_4\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_16429128305262743027\"\n id=\"radio_16429128305262743027_4\" value=\"4\">\n </input>\n <span class=\"label-body px-1\">\n \\((0,0)\\)\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='16429128305262743027_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_16429128305262743027\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 1;\n var msgBox = document.getElementById('16429128305262743027_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_16429128305262743027\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_16429128305262743027\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\n(Using automatic derivatives works for values identified with `find_zero` *as long as* the initial point has its type the same as that of `x`.)\n\n\n###### Question\n\n\nIn the last problem we used an *approximate* derivative (forward difference) in place of the derivative. This can introduce an error due to the approximation. Would Newton's method still converge if the derivative in the algorithm were replaced with an approximate derivative? In general, this can often be done *but* the convergence can be *slower* and the sensitivity to a poor initial guess even greater.\n\n\nThree common approximations are given by the difference quotient for a fixed $h$: $f'(x_i) \\approx (f(x_i+h)-f(x_i))/h$; the secant line approximation: $f'(x_i) \\approx (f(x_i) - f(x_{i-1})) / (x_i - x_{i-1})$; and the Steffensen approximation $f'(x_i) \\approx (f(x_i + f(x_i)) - f(x_i)) / f(x_i)$ (using $h=f(x_i)$).\n\n\nLet's revisit the $4$-step convergence of Newton's method to the root of $f(x) = 1/x - q$ when $q=0.8$. Will these methods be as fast?\n\n\nLet's define the above approximations for a given `f`:\n\n::: {.cell execution_count=83}\n``` {.julia .cell-code}\nq₀ = 0.8\nfq(x) = 1/x - q₀\nsecant_approx(x0,x1) = (fq(x1) - f(x0)) / (x1 - x0)\ndiffq_approx(x0, h) = secant_approx(x0, x0+h)\nsteff_approx(x0) = diffq_approx(x0, fq(x0))\n```\n\n::: {.cell-output .cell-output-display execution_count=84}\n```\nsteff_approx (generic function with 1 method)\n```\n:::\n:::\n\n\nThen using the difference quotient would look like:\n\n::: {.cell hold='true' execution_count=84}\n``` {.julia .cell-code}\nΔ = 1e-6\nx1 = 42/17 - 32/17 * q₀\nx1 = x1 - fq(x1) / diffq_approx(x1, Δ) # |x1 - xstar| = 0.06511395862036995\nx1 = x1 - fq(x1) / diffq_approx(x1, Δ) # |x1 - xstar| = 0.003391809999860218; etc\n```\n\n::: {.cell-output .cell-output-display execution_count=85}\n```\n0.9647072573629651\n```\n:::\n:::\n\n\nThe Steffensen method would look like:\n\n::: {.cell hold='true' execution_count=85}\n``` {.julia .cell-code}\nx1 = 42/17 - 32/17 * q₀\nx1 = x1 - fq(x1) / steff_approx(x1) # |x1 - xstar| = 0.011117056291670258\nx1 = x1 - fq(x1) / steff_approx(x1) # |x1 - xstar| = 3.502579696146313e-5; etc.\n```\n\n::: {.cell-output .cell-output-display execution_count=86}\n```\n1.0994223446163458\n```\n:::\n:::\n\n\nAnd the secant method like:\n\n::: {.cell hold='true' execution_count=86}\n``` {.julia .cell-code}\nΔ = 1e-6\nx1 = 42/17 - 32/17 * q₀\nx0 = x1 - Δ # we need two initial values\nx0, x1 = x1, x1 - fq(x1) / secant_approx(x0, x1) # |x1 - xstar| = 8.222358365284066e-6\nx0, x1 = x1, x1 - fq(x1) / secant_approx(x0, x1) # |x1 - xstar| = 1.8766323799379592e-6; etc.\n```\n\n::: {.cell-output .cell-output-display execution_count=87}\n```\n(0.9647065698627694, 0.9647070425296034)\n```\n:::\n:::\n\n\nRepeat each of the above algorithms until `abs(x1 - 1.25)` is `0` (which will happen for this problem, though not in general). Record the steps.\n\n\n * Does the difference quotient need *more* than $4$ steps?\n\n::: {.cell hold='true' execution_count=87}\n\n::: {.cell-output .cell-output-display execution_count=88}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='10693725185686834160' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_10693725185686834160\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_10693725185686834160_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_10693725185686834160\"\n id=\"radio_10693725185686834160_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n Yes\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_10693725185686834160_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_10693725185686834160\"\n id=\"radio_10693725185686834160_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n No\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='10693725185686834160_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_10693725185686834160\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 2;\n var msgBox = document.getElementById('10693725185686834160_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_10693725185686834160\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_10693725185686834160\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\n * Does the secant method need *more* than $4$ steps?\n\n::: {.cell hold='true' execution_count=88}\n\n::: {.cell-output .cell-output-display execution_count=89}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='8657586622244441292' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_8657586622244441292\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_8657586622244441292_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_8657586622244441292\"\n id=\"radio_8657586622244441292_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n Yes\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_8657586622244441292_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_8657586622244441292\"\n id=\"radio_8657586622244441292_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n No\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='8657586622244441292_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_8657586622244441292\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 1;\n var msgBox = document.getElementById('8657586622244441292_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_8657586622244441292\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_8657586622244441292\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\n * Does the Steffensen method need *more* than 4 steps?\n\n::: {.cell hold='true' execution_count=89}\n\n::: {.cell-output .cell-output-display execution_count=90}\n```{=html}\n<form class=\"mx-2 my-3 mw-100\" name='WeaveQuestion' data-id='15118246972029078907' data-controltype=''>\n <div class='form-group '>\n <div class='controls'>\n <div class=\"form\" id=\"controls_15118246972029078907\">\n <div style=\"padding-top: 5px\">\n <div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_15118246972029078907_1\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_15118246972029078907\"\n id=\"radio_15118246972029078907_1\" value=\"1\">\n </input>\n <span class=\"label-body px-1\">\n Yes\n </span>\n </label>\n</div>\n<div class=\"form-check\">\n <label class=\"form-check-label\" for=\"radio_15118246972029078907_2\">\n <input class=\"form-check-input\" type=\"radio\" name=\"radio_15118246972029078907\"\n id=\"radio_15118246972029078907_2\" value=\"2\">\n </input>\n <span class=\"label-body px-1\">\n No\n </span>\n </label>\n</div>\n\n \n </div>\n </div>\n <div id='15118246972029078907_message' style=\"padding-bottom: 15px\"></div>\n </div>\n </div>\n</form>\n\n<script text='text/javascript'>\ndocument.querySelectorAll('input[name=\"radio_15118246972029078907\"]').forEach(function(rb) {\nrb.addEventListener(\"change\", function() {\n var correct = rb.value == 2;\n var msgBox = document.getElementById('15118246972029078907_message');\n if(correct) {\n msgBox.innerHTML = \"<div class='pluto-output admonition note alert alert-success'><span> 👍&nbsp; Correct </span></div>\";\n var explanation = document.getElementById(\"explanation_15118246972029078907\")\n if (explanation != null) {\n explanation.style.display = \"none\";\n }\n } else {\n msgBox.innerHTML = \"<div class='pluto-output admonition alert alert-danger'><span>👎&nbsp; Incorrect </span></div>\";\n var explanation = document.getElementById(\"explanation_15118246972029078907\")\n if (explanation != null) {\n explanation.style.display = \"block\";\n }\n }\n\n})});\n\n</script>\n```\n:::\n:::\n\n\nAll methods work quickly with this well-behaved problem. In general the convergence rates are slightly different for each, with the Steffensen method matching Newton's method and the difference quotient method being slower in general. All can be more sensitive to the initial guess.\n\n",
"supporting": [
"newtons_method_files"
],
"filters": [],
"includes": {
"include-in-header": [
"<script src=\"https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js\" integrity=\"sha512-c3Nl8+7g4LMSTdrm621y7kf9v3SDPnhxLNhcjFJbKECVnmZHTdo+IRO05sNLTH/D3vA6u1X32ehoLC7WFVdheg==\" crossorigin=\"anonymous\"></script>\n<script src=\"https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js\" integrity=\"sha512-bLT0Qm9VnAYZDflyKcBaQ2gg0hSYNQrJ8RilYldYQ1FxQYoCLtUjuuRuZo+fjqhx/qtq/1itJ0C2ejDxltZVFg==\" crossorigin=\"anonymous\"></script>\n<script type=\"application/javascript\">define('jquery', [],function() {return window.jQuery;})</script>\n"
]
}
}
}