% preqhe.m
% Precision du Retour a l EQuilibre avec le schema de Heun
% fd, iacs, mai, 08 juillet 2004, 2, 9 janvier 2005, 25 fevrier 2025
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
xlabel ('preqhe. Precision du schema de Heun') ;
% title ('Cnam Paris. Travaux pratiques Iacs.') ;
m=9
pas=zeros(m,1);
err=zeros(m,1);
%
  n=8;
  for j=1:m;
dt=1/n;
u=zeros(n+1,1);
ui=zeros(n+1,1);
u(1:1)=1;
  for i=1:n;
ui(i+1)=u(i) -dt*u(i);
u(i+1)=u(i) - 0.5 * dt * ( u(i) + ui(i+1) ) ;
end ;
%
pas(j)=log(n)/log(2);
err(j)=log ( abs(u(n+1,1) - exp(-1)) ) / log(2) ;
n=2*n ; end;
%               affichage
% gset yrange[-27.1:-8.9] ; gset xrange[2.9: 11.1] ; hold off ; 
axis ([ 2.9 ,  11.1 ,  -27.1 , -8.9 ]) ; hold off ; 
plot(pas,err(:,1),'*;logarithme des ereurs;') ;


%  calcul du coefficient avec une droite de regression
alfa=codre(m,pas,err)




plot(pas,err(:,1),'*;logarithme des ereurs;') ; 
axis ([ 2.7 ,  11.3 ,  -27.6 , -8.9 ]) 
title('retour equilibre        schema de Heun : ordre 2')
print -dpdf 10-preqhe.pdf
print -djpg 10-preqhe.jpg


