# Finding x,y,z, vx,vy,vz from Hyperbolic orbital elements

I've written 2 functions to convert elliptical orbital elements to state vectors and vice-versa. Here is a web page containing them: http://orbitsimulator.com/formulas/OrbitalElements.html

But my conversion does not work if I input hyperbolic elements (e > 1, a < 1). I need to know how to take orbital elements for a hyperbolic object passing the Sun and convert them into x,y,z, vx,vy,vz where the Sun sits motionless at 0,0,0.

For example, here are the orbital elements for the interstellar asteroid 'Oumuamua for November 2, 2017 as given by JPL Horizons:

2458059.500000000 = A.D. 2017-Nov-02 00:00:00.0000 TDB EC= 1.199512420116503E+00 QR= 2.553431944164113E-01 IN= 1.226872051262464E+02 OM= 2.459921097817110E+01 W = 2.417029828623325E+02 Tp= 2458005.990518697072 N = 6.807263284370278E-01 MA= 3.642531274396101E+01 TA= 1.221047887790030E+02 A =-1.279836083725045E+00 AD= 6.684586453809735E+91 PR= 1.157407291666667E+95 EOE

JDTDB Julian Day Number, Barycentric Dynamical Time EC Eccentricity, e
QR Periapsis distance, q (au)
IN Inclination w.r.t XY-plane, i (degrees)
OM Longitude of Ascending Node, OMEGA, (degrees)
W Argument of Perifocus, w (degrees)
Tp Time of periapsis (Julian Day Number)
N Mean motion, n (degrees/day)
MA Mean anomaly, M (degrees)
TA True anomaly, nu (degrees)
A Semi-major axis, a (au)
PR Sidereal orbit period (day)

X = 213737716048.4732, Y = 88710852026.16885, Z = 12954584936.530249

VX = 39601.19506830577, VY = 7999.088132812113, VZ = 14355.61617225209,

(They provide distances in AU and speed in AU/day. The numbers I've provided here are translated into meters and m/s.) I'd like to know how to do this conversion myself. Thanks!

• Just as a note, the OSCELT_C and OSCLTX_C functions in CSPICE already do this. Converting from meters to AU and from seconds to days should be easy.
– user7073
Jan 28, 2018 at 22:52

The equations for an elliptical orbit work just fine for hyperbolic orbits -- so long as you use the complex valued trigonometric functions. Hyperbolic orbits are characterized with a semimajor axis that is negative. This means that the standard formula for mean motion, $n = \sqrt{\mu/a^3}$ becomes imaginary. This in turn means that the various anomalies (mean anomaly, eccentric anomaly, and true anomaly) also take on imaginary values. There is an easier way.
The easy way to solve this problem is to use relationships between the trigonometric and hyperbolic functions, $\sin(ix) = i\sinh x, \cos(ix) = \cosh x, \tan(ix) = i\tanh x$. This, along with defining mean motion as $n = \sqrt{\mu/|a|^3}$, means that all of the values are once again real. The expression for mean anomaly remains unchanged ($M = n(t-t_p)$ (but using the modified expression for mean motion). The hyperbolic version of Kepler's equation is $M = e\sinh H - H$ (as opposed to $E - e\sin E$), where $H$ is the hyperbolic anomaly. Finally, true anomaly is related to hyperbolic anomaly via $\tan\frac\theta 2 = \sqrt{\frac{e+1}{e-1}} \tanh \frac H 2$.