% Harjutustund 17, ylesanne 1
% 1) lahendame dif. võrrandi täpselt
syms yy(x);
vorrand=diff(yy,x)==yy+1;
lahend=dsolve(vorrand)
erilahend=dsolve(vorrand,yy(0)==1)
ftapne=matlabFunction(erilahend)
tapnelahend=ftapne(3)
fplot(ftapne,[0,4])

% a) lahendame Euleri meetodiga
% y'=f(x,y)
% defineerime selle funktsiooni
f=@(x,y) y+1;
n=50; % osaloikude arv
x0=0;
xn=3;
h=(xn-x0)/n;
x(1)=0;
y(1)=1;
for i=2:n+1
 x(i)=x(i-1)+h;
 y(i)=y(i-1)+h*f(x(i-1),y(i-1));
end
x;
y;
yeuler=y(n+1)
% kanname Euleri joone joonisele
hold on
plot(x,y,'o-')

% prognoosi-korrelatsioonimeetod
for i=2:n+1
 x(i)=x(i-1)+h;
 y(i)=y(i-1)+h/2*f(x(i-1),y(i-1))+h/2*f(x(i-1),y(i-1)+h*f(x(i-1),y(i-1)));
end
x;
y;
yprognoos=y(n+1)

% kanname prognoosi-korrelatsiooni joone joonisele
hold on
plot(x,y,'*-')