function main
xinit = 0;
xfinal = 3;
yinit = [1 0];
h = .5;
[x,y] = euler_explicit(@dpnon,xinit,yinit,xfinal,h)
plot(x,y(:,1))
end
function [x,y]=euler_explicit(f,xinit,yinit,xfinal,h)
n = (xfinal-xinit)/h;
% Initialization of x and y as column vectors
x = [xinit;zeros(n,1)];
y = [yinit;zeros(n,2)];
% Calculation of x and y
for i = 1:n
x(i+1) = x(i) + h;
y(i+1,:) = y(i,:) + h*f(x(i),y(i,:));
end
end
function dy = dpnon(t, y)
dy = [y(2),-1000*y(1)-1001*y(2)];
end