Bonjour,
j'ai un soucis pour la représentation d'une équation différentielle dans Matlab (via un plot()).
Voici le code, il représente l'approximation d'une équ. diff. via la méthode d'Euler.
Le premier plot représente l'approximation et le second l’équation différentielle réelle (selon Matlab).
Je ne comprend pas d'où vient la racine dans les ordonnées du 2em plot.
%% Methode d'Euler pour eq. diff
N=10; % Pour faire varier le pas => fonction de la précision de la fin de la fct (car addtion des erreurs)
a=0;
b=2;
x=a; % Données
y=1;
h=(b-a)/N;
absc=[x];%% le point de départ sur le graph
ord=[y];
for k=1:N
y=y+h*fp11eul(x,y);
x=x+h;
absc=[absc x];%% un point par boucle sur le graph
ord=[ord y];
end
figure(3)
hold on
title('Euler')
plot(absc,ord,'r')
plot(absc,sqrt(2*absc+1)) %% d'ou vient sqrt(...) ???
hold off
et la fonction
function[yp]=fp11eul(x,y)
yp=y-((2*x)./y);
end
-----