I have made a RK4 simulator for launching a cannonball from a tower. Which has the state variables:

  • Position vector r
  • Velocity vector v
  • Mass of planet M

To simplify it, working in only 2 dimensions (orbits on equatorial plane) and ignoring the cannonball mass since M is much greater then mass of cannonball. The cannonball also moves ballistically (no air drag etc).

The output from the simulator firing 100km above surface (Orange is the planet, Blue is 60 degree launch angle, Yellow is 30 degree launch angle):

Suborbital Trajectory

A closer look at some trajectories (Green: 60, Yellow: 45, Orange: 30, Blue: 0) Suborbital Trajectory Zoomed

I want to be able to calculate the apoapsis of the orbit, what is the formula given v, r and M?

  • $\begingroup$ Long story short: ignore the planet surface, calculate as any other orbit. Unless you account for gravitational field nonuniformities due to Earth not being perfectly spherical, approximating it with a point mass is absolutely sufficient. $\endgroup$
    – SF.
    Mar 17, 2017 at 16:21

1 Answer 1


First calculate the semi-major axis $a$ where $\mu$ is standard gravitational parameter of the planet that in orbit around: $$E=\frac{v^2}{2}-\frac{\mu}{r}$$ $$a = -\frac{\mu}{2E}$$

Then with the eccentricity vector: $$ e = {\left |v \right |^2 r \over {\mu}} - {(r \cdot v ) v \over{\mu}} - {r\over{\left|r\right|}}$$

Can now calculate: $$r_p=a(1-\left|e\right|)$$ $$r_a=a(1+\left|e\right|)$$

  • $r_a\,\!$ is the radius at apoapsis (i.e., the farthest distance of the orbit to the center of mass of the system, which is a focus of the ellipse).
  • $r_p\,\!$ is the radius at periapsis (the closest distance).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.