> #euler for ode > myeuler:=proc(f,t0,y0,tstep,n) > local told, yold, tnew, ynew, deltay, yprime, i; > tnew:=t0;ynew:=y0; > printf("t, y, y', delta y, new y"); > for i from 1 to n do > told:=tnew;yold:=ynew;yprime:=eval(f,{t=told,y=yold}); > tnew:=told+tstep;deltay:=tstep*yprime;ynew:=yold+deltay; > print(told,yold,yprime,deltay,ynew); > od > end: > > myeuler(t^2+y^2,0,1,1/2,5); t, y, y', delta y, new y 0, 1, 1, 1/2, 3/2 1/2, 3/2, 5/2, 5/4, 11/4 137 137 225 1, 11/4, ---, ---, --- 16 32 32 225 52929 52929 67329 3/2, ---, -----, -----, ----- 32 1024 2048 2048 67329 4549971457 4549971457 4825751041 2, -----, ----------, ----------, ---------- 2048 4194304 8388608 8388608 >