In a hyperbolic orbit/trajectory, if you know the distance traveled, and the initial true anomaly in the orbit, how do you figure out the new true anomaly? You know the mass, eccentricity, axis values and other misc information as well. I cannot find any resources on this and cannot figure it out.

This only needs to be in 2 dimensions.

Thank you

  • $\begingroup$ This sounds like a problem with some annoying arc-length calculus. Can I ask why you want this information? If you're using it as a stepping stone to get something else, there may be less involved paths available. $\endgroup$
    – notovny
    May 7, 2020 at 14:05
  • $\begingroup$ I'm making a program that is simulating this orbit and the way it's set up, the velocity vector is what I'm using to drive the next iteration the loop. I'm integrating to distance traveled with said velocity and need to figure out how far along the obit that distance is each iteration. My placement is using true anomaly. Fortunately, it's only in 2 dimensions and I forgot to mention that in the original post $\endgroup$ May 7, 2020 at 17:23

1 Answer 1


Yes, it's messy arc length calculus.

We can start with the relation between radius and true anomaly, which is rendered here in a form applicable to all conic section orbits by using the periapsis $p$:


This is to be combined with the arc length differential


Direct substitution leads to



Unless $e=0$ (circular orbit) or $e=1$ (parabolic orbit), integrating this requires elliptic functions, and that is a bridge too far for me. More practical for your problem seems to be leaving the relation in differential form, updating the derivative with each timestep.

  • 1
    $\begingroup$ Wow this is what I needed! Technically I think it's more accurate if I integrate but I've gotten it working and it's even replaced what I had for elliptical orbits making things much cleaner. Thanks $\endgroup$ May 10, 2020 at 23:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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