from visual import * scene.autoscale=0 scene.range=40.0 ## don't display the ball - boring #scene.visible=0 def force(pos,t): result = vector(0,0,0) sigma=10.0 b=8.0/3.0 r=25.0 result.x=sigma*(pos.y-pos.x) result.y=-pos.x*pos.z+r*pos.x-pos.y result.z=pos.x*pos.y-b*pos.z return result ball=sphere(pos=vector(1.0,0.0,0),color=color.red, track=curve(radius=0.1,color=color.green)) dt=0.0001 t=0 while (1) : # rate(1000) t=t+dt # euler alg. ball.pos=ball.pos+force(ball.pos,t)*dt ball.track.append(pos=ball.pos)