The value of pi (in matlab pi) can be computed with the sequence: pi = lim_n rightarrow infinity 2^pi + 1 pi_n where pi_n is defined using the iteration pi_n = squareroot (1/2 pi_n – 1)^2 + [1 – squareroot (1/2 pi_n – 1)^2]^2 pi_0 = squareroot 2 (J. Munkhammar, pers.comm., April 27, 2000: http: //mathworld.wolfram.com/PiFormulas.html). Compute what term of the sequence produce an error
Expert Answer
Functon file
========================================================================
function [picalc,err,k]=iPi(N)
pin=sqrt(2);
k=0;
for i =1:N
k=k+1;
pin=sqrt((.5*pin)^2+(1-(sqrt(1-(.5*pin)^2)))^2);
picalc=2^(i+1)*pin;
err=abs(pi-picalc);
end
end
Main file
===============================================================
clear;
clc;
fprintf(‘iteration computed pi computed errorn’);
N=1;
while(N>0)
[pi_calc,err,i]=iPi(N);
fprintf(‘%9i%15.7f%14.7fn’,i,pi_calc,err);
N=N+1;
if(err<10^-6)
break;
end
end