Eulers metod
Uppgiften handlar om att implementera Eulers metod i MATLAB och lösa ekvationen
Jag har en en mall som jag har börjat fylla i men jag vet inte hur jag ska fortsätta med själva lösningen
a=0; b=4; % [a,b] intervallet där lösning beräknas
ya=1; % begynnelsevärdet, y värdet i vänster ändpunkt
f=@(x,y)exp(-x)*cos(y)+sin(2*x); % funktionen som berskriver differentialekvationen
M=4; % antalet indelningspunkter längs x-axeln
x=linspace(a,b,M); % indelningspunkterna på x-axeln
y=euler(x,ya,f); % anropar lösaren
plot(x,y) % plottar lösningen
function y=euler(x,y0,f)
y=zeros(size(x)); % y en vektor med nollor, lika lång som x vektorn.
% i denna vektor ska y-värdena läggas in, ett och ett
% det blir en loop
y(1)=y0; % lägg in begynnelsevärdet på första position.
% Här ska jag alltså skriva nån kod som löser ekvationen
end
Efter lite googlande hittar jag en massa olika sätt att utnyttja Eulers formel och tror jag förstår hur Eulers formel fungerar men inte hur jag ska kunna skriva in det i den här mallen , och jag vill inte gärna kopiera en massa kod som jag inte förstår vad den faktiskt gör
För att räkna ut nästan punkt (x,y) så räknar du ut derivatan i den punkt där du "är" just nu. Du börjar ju i (0,1), vad är derivatan i den punkten?
Med hjälp av derivatan tar du dig till nästa punkt (x_2, y_2) och sparar y_2 i din variabel y. Sen tar du dig till nästa punkt o.s.v. (Du får skriva en loop).