# Completely confused with orbiting planets maths

#### sirchick

Hey

I've been trying to make a basic animation which involves launching a spaceship from one planet to another. Both planets orbit at different rates from the star with fixed speeds.

The spaceship also has a fixed speed from start to finish.

What i don't understand is how you measure how long it takes given both the destination is moving and the spaceship has to "curve" around and not just going a completely straight line.

My animation is here if you are curious to see it in action: http://jsfiddle.net/5Mx2t/

I don't know how to actually work out the correct maths for it! I have all kinds of problems with my animation attempt, such as the ship travelling faster if the planets are closer.

Note: gravitational pull is not taken into account as im not going quite that far with realism.

So yeah some help explaining how i would work this out would be very helpful! :)

Last edited:

#### Filip Larsen

Gold Member
In real life one of the simplest trajectories that bring a spaceships from planet A to planet B is an elliptical orbit called a Hohmann transfer orbit . If you are making animations that are supposed to be realistic to some degree (guess the square star and planets also need a bit of work then), you may want to use such an orbit if you can handle the math involved.

If this is too much math for you, you should also be able to settle for something less complicated, but I suspect that even with a fairly simple straight-line, constant-speed spaceship it is going to involve some math and equation solving in any case.

Perhaps, if you can state what your goal or purpose with this animation is, people here can better point you in the right direction?

By the way, you may also be interested in using some JS library that can handle all the drawing and animation for you, like for instance KineticJS  or similar.

 http://en.wikipedia.org/wiki/Hohmann_transfer_orbit
 http://kineticjs.com/

Last edited:

#### sirchick

I don't like to work with JS libraries, its simple enough to animate its just working out the equation - i suck at maths ! :)

As for using Hohmann transfer orbits, what initial values must one know in order to use those equations? It seems to require gravitational parameters which i am not using, as im not going quite that deep into realism.

The only values i know are of the orbit's and the speed of rotation, and the spaceship speed is measured as radians per second.

My goal is to create a curved path for the spaceship to travel to an inner or outer orbit at a set speed and calculate the time it would take.

I don't know if my example link is easy to understand the maths but i went wrong some where, in that as the planets are closer together the ship travels faster which is obviously incorrect.

Last edited:

#### Filip Larsen

Gold Member
As for using Hohmann transfer orbits, what initial values must one know in order to use those equations?
Since the transfer orbit is exactly half of a complete revolution along the ellipse and the speed at various point along this ellipse is the determined solely by the shape and size of it, the transfer time from A to B is known in advance. Or in other words, given the orbital radius of planet A and B we can determine the time T a spaceship needs to travel from A to B along a Hohmann transfer orbit. Now we want to search for a relative position of the two planets such that when we launch at time t0 from planet A, planet B will time T later be 180 degrees opposite, that is, if planet A is at longitude L0 at time t0, planet B must be at longitude L1 = L0+180° at time t1. If the angular rate of the two planets is nA and nB, planet B must at time t0 be at longitude L1 - nBT, so we want to search for a time t0 when the difference in longitude between the two planets is ΔL = L1 - nBT - L0 = 180° - nBT. In actual calculations you need to be careful about the signs of values and also treat angular values as module 360 (or 2∏) when relevant.

If you want a simpler model for animation only, you may want to use a circular transfer orbit instead, that is, a circle that is tangent to the orbit of planet A on one side of the star and planet B on the other side. If you let the spaceship travel with fixed angular rate you can easily calculate how long it takes the spaceship to move 180 degrees and you can make the same search for a relative position of the planets as mentioned above.

If you want to make a launch at a specific time and then give it an angular speed so that it intercepts B, you can calculate the transfer time T (and hence angular speed of the spaceship) from the actual value of ΔL at time of launch.