Untitled
unknown
plain_text
a year ago
1.6 kB
6
Indexable
Web VPython 3.2 scene = canvas(background = color.white) ground = box(pos = vec(0, -0.02, 0), size = vec(3, 0.02, 0.4), color = color.green) g = -9.779 m1 = 8.52e-3 rf = 5.8e-2 h0 = 2.03 m4 = 4 * m1 rho = 1.045 C_D = 6.5 f1 = cone(pos = vec(-1, h0, 0), axis = vec(0, -1, 0), size = vec(0.1, 1, 0.1), color = color.red, radius = 0.1, make_trail=True) f1.v = vec(0, 0, 0) f1.p = m1 * f1.v A = pi * (rf)**2 f4 = cone(pos = vec(1, h0, 0), axis = vec(0, -1, 0), size = vec(0.1, 1, 0.1), color = color.blue, radius = 0.1, make_trail=True) f4.v = vec(0, 0, 0) f4.p = m4 * f4.v v_graph = graph(title='Ball Speed', xtitle= 't', ytitle= 'v(t)') v_f1_x = gcurve(graph= v_graph, color=color.red) v_f1_y = gcurve(graph= v_graph, color=color.blue) v_f4_x = gcurve(graph= v_graph, color=color.green) v_f4_y = gcurve(graph= v_graph, color=color.orange) t = 0 dt = 0.001 myrate = 500 scene.waitfor('click') while f1.pos.y > 0: rate(myrate) F_D1 = 1/2 * rho * A * C_D * (f1.v.mag**2) * -f1.v.hat Fg = m1 * vec(0, g, 0) F = F_D1 + Fg f1.p = f1.p + F * dt f1.v = f1.p/m1 f1.pos = f1.pos + f1.v * dt v_f1_y.plot(pos=(t,f1.v.y)) t += dt v1 = f1.v.y print("time =", t, "velocity =", v1) t = 0 scene.waitfor('click') while f4.pos.y > 0: rate(500) F_D4 = 1/2 * rho * A * C_D * (f4.v.mag**2) * -f4.v.hat Fg = m4 * vec(0, g, 0) F = F_D4 + Fg f4.p = f4.p + F * dt f4.v = f4.p/m4 f4.pos = f4.pos + f4.v * dt v_f4_y.plot(pos=(t, f4.v.y)) t += dt v4 = f4.v.y print("time =", t, "velocity =", v4)
Editor is loading...
Leave a Comment