return theta = 110.0 # initial angle gamma = 0.1 # damping coefficient L = 1 # pendulum length t = 0 dt = 0.04 state = array([theta * pi / 180, 0]) gr3.init() gr3.setcameraprojectionparameters(45, 1, 100) gr3.cameralookat(0, -2, 6, 0, -2, 0, 0, 1, 0) gr3.setbackgroundcolor(1, 1, 1, 1) gr3.setlightdirection(1, 1, 10) now = time.clock() while t < 30: start = now t, state = rk4(t, dt, state, damped_pendulum_deriv) theta, omega = state acceleration = sqrt(2 * g * L * (1 - cos(theta))) pendulum(t, theta, omega, acceleration) now = time.clock() if start + dt > now: time.sleep(start + dt - now)
gr.updatews() return theta = 110.0 # initial angle gamma = 0.1 # damping coefficient L = 1 # pendulum length t = 0 dt = 0.04 state = array([theta * pi / 180, 0]) gr3.init() gr3.setcameraprojectionparameters(45, 1, 100) gr3.cameralookat(0, -2, 6, 0, -2, 0, 0, 1, 0) gr3.setbackgroundcolor(1, 1, 1, 1) gr3.setlightdirection(1, 1, 10) now = time.clock() while t < 30: start = now t, state = rk4(t, dt, state, damped_pendulum_deriv) theta, omega = state acceleration = sqrt(2 * g * L * (1 - cos(theta))) pendulum(t, theta, omega, acceleration) now = time.clock() if start + dt > now: time.sleep(start + dt - now)