Создать симулятор вращения Земли вокруг Солнца в vpython

Я должен создать простую симуляцию вращения Земли вокруг Солнца. Я не могу использовать сферические координаты, я должен использовать гравитационные уравнения энергии и скорости. Пока у меня есть это:

earth = sphere (color = color.green, radius = 10**6)
sun = sphere (color = color.yellow, radius = 10**7)
earth.mass = 5.972*10**24 
sun.mass=1.989*10**30
d=1.496*10**8
v=(2*math.pi*d)/(3.154*10**7)
earth.velocity = vector(0.0, 0.0, -1*v)
earth.pos = vector(d, 0, 0)
sun.pos = vector(0,0,0)

dt = 50000
t = 0.0

P=0    
while True:
rate(400)
    f=(6.667*10**.11)*((earth.mass*sun.mass)/d**2)
    P = P + f*dt
    earth.velocity = P/earth.mass
    earth.pos = earth.pos + earth.velocity*dt
    t=t+dt

Я не знаю, пропускаю ли я что-то со стороны физики или кодирования, но когда я запускаю это, ничего не появляется. Заранее спасибо!

1 ответ

Две проблемы: Ваше заявление о скорости должно быть с отступом, и с импульсом P, установленным в 0, Земля должна упасть в Солнце.

Другие вопросы по тегам