<div class="code">     
<pre class="verbatim">
clear all;
Iexa = sin(2);
alpha = 0;
beta = 2;
f = inline('cos(x)','x');
%--------------------------
%--------------------------
% M\'ethode des trap\`ezes
%--------------------------
%--------------------------
s = 2;
for j = 1:1:10 
%%%%%%%%%%%%%%%%%%%%%%%%
%      Donnees
%%%%%%%%%%%%%%%%%%%%%%%%
N = 2^j;
fetr(j) = log10(N*(s-1) +1);
h = (beta - alpha)/N;
x = [alpha:h:beta];
%%%%%%%%%%%%%%%%%%%%%%%%
% Corps du programme
%%%%%%%%%%%%%%%%%%%%%%%%
Itr=0.0;
for i = 1:N
Itr = Itr + h*(1/2*f(x(i)) + 1/2*f(x(i+1)));
end
%%%%%%%%%%%%%%%%%%%%%%%%%%
% Affichage des resultats
%%%%%%%%%%%%%%%%%%%%%%%%%%
Etr(j) = log10(abs(Iexa - Itr)) ;
end
%--------------------------
%--------------------------
% M\'ethode de Simpson
%--------------------------
%--------------------------
s = 3;
for j=1:1:10 
%%%%%%%%%%%%%%%%%%%%%%%%
%      Donnees
%%%%%%%%%%%%%%%%%%%%%%%%
N = 2^j;
fesi(j) = log10(N*(s-1) +1);
h = (beta - alpha)/N;
x = [alpha:h:beta];
%%%%%%%%%%%%%%%%%%%%%%%%
% Corps du programme
%%%%%%%%%%%%%%%%%%%%%%%%
Isi = 0.0;
for i = 1:N
Isi = Isi+h*(1/6*f(x(i))+2/3*f((x(i)+x(i+1))/2)+1/6*f(x(i+1)));
end
%%%%%%%%%%%%%%%%%%%%%%%%%%
% Affichage des resultats
%%%%%%%%%%%%%%%%%%%%%%%%%%
Esi(j) = log10(abs(Iexa - Isi)) ;
end
%--------------------------
%--------------------------
% M\'ethode de Boole (s=6)
%--------------------------
%--------------------------
s = 6;
for j = 1:1:8 
%%%%%%%%%%%%%%%%%%%%%%%%
%      Donnees
%%%%%%%%%%%%%%%%%%%%%%%%
N = 2^j;
febo(j) = log10(N*(s-1) +1);
h = (beta - alpha)/N;
x = [alpha:h:beta];
%%%%%%%%%%%%%%%%%%%%%%%%
% Corps du programme
%%%%%%%%%%%%%%%%%%%%%%%%
Ibo = 0.0;
for i = 1:N
Ibo = Ibo + h*(19/288*f(x(i)) + 75/288*f(x(i)+h/5) + 
50/288*f(x(i)+(2*h/5)) + 50/288*f(x(i)+ (3*h/5)) + 
75/288*f(x(i)+ (4*h/5)) + 19/288*f(x(i+1)));
end
%%%%%%%%%%%%%%%%%%%%%%%%%%
% Affichage des resultats
%%%%%%%%%%%%%%%%%%%%%%%%%%
Ebo(j) = log10(abs(Iexa - Ibo)) ;
plot(fetr, Etr, 'k-.', fesi, Esi, 'k-+', febo, Ebo, 'k-*')
legend('Trap\`ezes', 'Simpson', 'Boole (s=6)')
xlabel('log10(Erreur)');
ylabel('log10(fe)');
title('Le travail fe en fonction de l''erreur');
end
</pre>
</div> 