import Diff,math def circle(t,x): # dx0/dt = x1, dx1/dt = -x0 return [x[1],-x[0]] N=100 x0=x1=x2=x3=[1,0] dt = math.pi*2/N for i in range(N*100): x0=Diff.runge(circle,x0,i*dt,(i+1)*dt,100) x1=Diff.runge(circle,x1,i*dt,(i+1)*dt,1) x2=Diff.second(circle,x2,i*dt,(i+1)*dt,1) x3=Diff.euler(circle,x3,i*dt,(i+1)*dt,1) print x0[0],x0[1],x1[1],x2[1],x3[1]