%2nd order Runge-Kutta %RK_2(function, time_interval, initial value, step_size) function [x,y]=RK_2(f,interval,y0,h) a=interval(1);b=interval(2); n=(b-a)/h; x=(a+h:h:b); k1=h*feval(f,a,y0); k2=h*feval(f,a+h,y0+k1); y(1)=y0+0.5*(k1+k2); for i=1:n-1 k1=h*feval(f,x(i),y(i)); k2=h*feval(f,x(i)+h,y(i)+k1); y(i+1)=y(i)+0.5*(k1+k2); end x=[a x]; y=[y0 y];