%
% Codici MATLAB per il corso di Calcolo Numerico 2007/2008
% Esercitazione n.5 (Enrico Bertolazzi)
%
% Controllo errore
clear all

Ns = { 5, 10, 20, 40, 80, 160, 320, 640 } ;

hold on

for k=1:length(Ns)
  [t,y] = eulero( @fun, 1, 0, 2, Ns{k} ) ;
  plot(t,y) ;
  err(k) = norm(y-esatta(t),inf) ;
end

t=1:0.001:3 ;
plot(t, esatta(t),'-r', 'LineWidth', 2 ) ;


disp('controllo a posteriori dell''errore' ) ;
for k=2:length(Ns)
  disp( sprintf('Ordine stimato %f', log(err(k-1)/err(k))/log(2) ) ) ;
end


hold off
