Iteration of functions: Finding zeros via the Newton-Raphson method
Implementation of the Newton-Raphson method
Implement the Newton-Raphson method in a programming language, i.e., define someting like the following Python function:
def Newton_solve(f, fp, x0, tol=0.001, maxiter=100):
"""
Find a zero of the function f using the Newton-Raphson Method
starting in x0, with tolerance tol (default: 0.001), and
maximum number of iterations equal to maxiter (default: 100).
fp denotes the derivate of f
"""
Make sure that your function returns the number of iterations required in addition to the approximation found.
- Apply the function
Newton_solve
to the polynomial \(x^2-x-1\) with starting value \(1.0\) to approximate the golden ratio \(\tfrac{1}{2}\!(1+\sqrt{5})\approx 1.61803398875\) in 9 significant digits. How many iterations do you need? - Apply the function
Newton_solve
to polynomial \(x^3+x^2-2\) with starting value \(1.5\).
After how many steps did you determine the zero point \(1\) in 10 significant digits?
Explain what happens when you choose \(-1.5\) as your starting value. - Apply function
Newton_solve
to polynomial \(x^3-3x^2+2\) with starting value \(1.77\).
After how many steps did you determine the zero point \(1\) in 10 significant digits?
What happens when you choose \(1.78\) as your starting value?
Unlock full access