Question: Question 2 ( a ) Write a function that implements the following pseudo - code: Input: f , f ' , x , l o

Question 2
(a) Write a function that implements the following pseudo-code:
Input: f,f',x,lon,N.
Output: x**.
Repeat N times:
(a) Set y1=x.
(b) Take one Newton step, starting from y1. Call the result y2.
(c) Take one Newton step, starting from y2. Call the result y3.
(d) Set
x=y1-(y2-y1)2y3-2y2+y1
(e) Display |f(x)|.
(f) If |f(x)|lon print "converged!", break.
Output x**=x.
This algorithm is called Steffensen's iteration.
(b) Test your routine on the problem
exp(-x2+x)-12x=1.0836(with initial guess x=1)
Show that Newton iteration does not converge quadratically, but your new iterative algorithm
does.
steff.py
import numpy as np
def steff(f,fp,x,epse,epsr,itmx):
# Steffensen iteration for f(x)=0.
# Input: function handles f and f', floats inital guess x, tolerance for error (epse) and residual (epsr), integer max nur of iterations itmx.
# Output: approximate solution x, estimate of error, residual.
... initializations ...
for i in range(...): # Loop over iterations.
if ... : # Check for convergence.
...
if ... # Print warning message if there was no convergence.
print(...)
return x,err,res # Return floats: approximate root x, approximate error err and residual res.
steffscript.py
import numpy as np
from steff import steff
from newton import newton
# Question 2
def f(x):
return
def fp(x):
return
# Find reasonable values for residual and error tolerance and the number of iterations:
tol_err =
tol_res =
itmax =
# initial point
x0=1.0
# First try Newton iteration:
print("Calling Newton function...")
x,err,res = newton(...)
# That converges slowly, now try steffenson
print("Calling Steffensen function...")
x,err,res = steff(...)
 Question 2 (a) Write a function that implements the following pseudo-code:

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!