function [t,y] = Eulermodif(t0,y0,T,N,f);  

% [t,y] = Eulermodif(t0,y0,T,N,f); 
% Génère la méthode d'Euler modifiée (méthode des rectangles) pour une EDO y'=f(t,y) sur [t0,t0+T] x R. 
% t0 est l'instant initial, y0 la valeur initiale T la longueur du segment
% d'etude, T/N le pas, f la fonction déclarée en ligne. En sortie, on
% récupère le temps t échantillonné et le vecteur correspondant y(t).

h = T/N; 
t = [t0]; 
y = [y0]; 
for k=1:N 
  taux = t(k) + h/2 ; 
  A = f(t(k),y(k)); 
  yfinal = y(k) + h*f(taux,y(k) + h*A/2); 
  t = [t,t(k)+h]; 
  y = [y,yfinal]; 
end  
