Orbital Manoeuvres

Author

Devendra Ghate

Published

November 4, 2026

1 Rotating the apse line

1.1 A purely radial impulse

Suppose we want to turn the orbit’s line of apsides by an angle \(\eta\), keeping its size and shape: same \(p\) and \(e\), new argument of periapsis \(\omega+\eta\). The two orbits cross at two points (the equal-radius condition below always has two solutions), and at a crossing a single impulse can switch from one to the other (Figure 1).

Figure 1: Two orbits with the same \(p\) and \(e\), the second rotated by \(\eta\). They cross at \(f=\eta/2\) and \(f=\eta/2+180^\circ\), and at either crossing the required impulse is purely radial. Script: fig-man-apse-rotation.py.

A point at true anomaly \(f\) on the first orbit is at \(f-\eta\) on the second. Equal radii require

\[ \frac{p}{1+e\cos f}=\frac{p}{1+e\cos(f-\eta)} \quad\Longrightarrow\quad \cos f=\cos(f-\eta), \]

whose solutions (other than the trivial \(\eta=0\)) are \(f=\eta/2\) and \(f=\eta/2+\pi\).

At the first crossing the initial orbit has \(f=\eta/2\) and the final orbit has \(f'=-\eta/2\). With \(v_r=\sqrt{\mu/p}\,e\sin f\) and \(v_\theta=\sqrt{\mu/p}\,(1+e\cos f)\),

Use the parity of cosine and sine to compare \((v_r,v_\theta)\) on the two orbits at the crossing. What is the impulse?

What you should find \(\cos\) is even and \(\sin\) is odd, so \(v_\theta'=v_\theta\) and \(v_r'=-v_r\). The transverse components agree and the radial ones are opposite, so \(\Delta\mathbf v=-2v_r\,\hat{\mathbf r}\): purely radial.

\[ \boxed{\;\Delta v=2\sqrt{\frac{\mu}{p}}\,e\sin\frac\eta2=2v\sin\gamma ,\;} \tag{1}\]

where \(\gamma\) is the flight path angle at the crossing. The second form is worth seeing geometrically: the impulse leaves the speed unchanged and reflects \(\mathbf v\) in the local horizontal (\(\gamma\to-\gamma\)). It turns \(\mathbf v\) through \(2\gamma\) at constant speed, the same isosceles triangle as a plane change (?@eq-plane-change), so \(\Delta v=2v\sin(2\gamma/2)\).

Equation 1 contains no \(r\). The two crossings are at very different radii; which is cheaper?

Answer Neither: both cost the same. At the second crossing \(v\) is smaller but \(|\gamma|\) larger, and the product \(v|\sin\gamma|=|v_r|\) is the same. For the example below: \(v=8.742\) km/s, \(\gamma=4.271^\circ\) at \(f=15^\circ\), and \(v=3.913\) km/s, \(\gamma=-9.576^\circ\) at \(f=195^\circ\); both give \(1.30204\) km/s.

Example. \(a=12\,000\) km, \(e=0.4\), so \(p=10\,080\) km and \(\sqrt{\mu/p}=6.288378\) km/s; rotate by \(\eta=30^\circ\). At \(f=15^\circ\), \(r=7270.79\) km, \(v_r=0.651021\), \(v_\theta=8.718020\), and

\[ \Delta v=2(0.651021)=1.30204\ \text{km/s},\qquad\gamma=\arctan\frac{v_r}{v_\theta}=4.271^\circ . \]

Figure 2: The radial impulse that turns the apse line by \(30^\circ\) (the example above), at either crossing. Left: at \(f=15^\circ\) the impulse is inward; right: at \(f=195^\circ\) it is outward. Both cost \(1.302\) km/s and leave the speed unchanged: they reflect the velocity in the local horizontal. The craft moves at its true speed, only slowed down, and the clock stops during a burn. Script: anim-man.py, with the engine _manim.py; the burns are computed from the orbits.

1.2 Going round instead

There is a two-burn alternative: circularise at apoapsis, coast round the circle through the angle \(\eta\), then re-eccentricise there with the apse line in the new direction (Figure 3 follows the whole route, for \(\eta=90^\circ\)). Its cost does not depend on \(\eta\) at all; only the coast does. For the example it is \(2(4.870956-3.773027)=2.196\) km/s: one change of speed to the circular speed, and one back.

Figure 3: The two-burn route for \(\eta=90^\circ\), on the orbit of the example (\(a=12\,000\) km, \(e=0.4\), \(r_a=16\,800\) km); the Earth is drawn to scale. The craft flies the initial orbit (blue) from periapsis to apoapsis. There burn 1 (\(+1.098\) km/s, along the velocity) circularises it, taking the speed from \(3.773\) to \(4.871\) km/s. It coasts round the circle (maroon) through \(\eta\), and burn 2 (\(-1.098\) km/s, against the velocity) takes the speed back to \(3.773\) km/s: at that point, the new apoapsis, this is the speed of the final orbit (green), which has the same \(p\) and \(e\) as the initial one and its apse line turned through \(\eta\). The two burns cost \(2.196\) km/s in all, against \(3.557\) km/s for the single radial impulse of Equation 1 at this \(\eta\). The craft moves at its true speed (fast near periapsis, slow near apoapsis, constant on the circle), only slowed down; each burn is shown as a pause. Script: anim-man-apse-detour.py.
Figure 4: The same manoeuvre with both burns at periapsis, on the same clock as Figure 3. The craft flies the initial orbit (blue) from apoapsis to periapsis, where burn 1 (\(-1.363\) km/s, against the velocity) takes the speed from \(8.804\) to the circular speed \(7.441\) km/s. The coast round the circle \(r_p=7200\) km through \(\eta\) takes \(0.42\) h, against \(1.51\) h at apoapsis. Burn 2 (\(+1.363\) km/s) gives the speed of the final orbit (green) at its periapsis. The route costs \(2.726\) km/s, \(0.53\) km/s more than at apoapsis. Script: anim-man-apse-detour.py.

Why apoapsis, and not periapsis? The same route can be flown with both burns at periapsis, as in Figure 4 below: the first burn is then a brake, the second a kick, and the coast is over much sooner. Which end is cheaper? The two burns are equal and opposite, so the route costs twice the mismatch \(|v_c-v|\) between the circular speed \(v_c=\sqrt{\mu/r}\) and the orbit’s own speed \(v\) at the burn radius \(r\). At an apse the velocity is already perpendicular to the radius, as it is on a circle, so the burn only has to change the speed; that is why the two apsides are the places to compare. Measure speeds in units of \(\sqrt{\mu/a}\) and write

\[ s=\sqrt{1+e},\qquad t=\sqrt{1-e},\qquad s^2+t^2=2, \]

so that \(r_p=a(1-e)=at^2\) and \(r_a=a(1+e)=as^2\). The circular speeds are \(v_c=1/t\) at periapsis and \(v_c=1/s\) at apoapsis. Vis-viva, \(v^2=(\mu/a)(2a/r-1)\), gives \(v_p^2=(2-t^2)/t^2=s^2/t^2\) and \(v_a^2=(2-s^2)/s^2=t^2/s^2\), because \(2-t^2=s^2\) and \(2-s^2=t^2\). One burn therefore costs

\[ \Delta v_p=\frac st-\frac1t=\frac{s-1}{t},\qquad \Delta v_a=\frac1s-\frac ts=\frac{1-t}{s}. \]

Periapsis is the dearer end when \((s-1)/t>(1-t)/s\). Multiplying by \(st>0\) turns this into \(s^2-s>t-t^2\), that is \(s^2+t^2>s+t\), and with \(s^2+t^2=2\) into

\[ s+t<2 . \]

This holds for every \(0<e<1\), because \((s+t)^2=s^2+t^2+2st=2+2\sqrt{1-e^2}<4\). So the apoapsis route is the cheaper one for every eccentric orbit; the two coincide only on a circle (\(e=0\), \(s=t=1\)).

How much cheaper? The ratio of the two costs is

\[ \frac{\Delta v_p}{\Delta v_a}=\frac st\cdot\frac{s-1}{1-t}, \]

a product of two factors that pull in opposite directions.

What periapsis buys is time. The coast through \(\eta\) takes \(\eta\sqrt{r^3/\mu}\), which grows as \(r^{3/2}\): for \(\eta=90^\circ\) it is \(0.42\) h round the circle of radius \(r_p\) and \(1.51\) h round that of radius \(r_a\), longer by \((r_a/r_p)^{3/2}=3.56\).

For the same orbit, compute the cost of the two-burn route, and the rotation angle \(\eta\) above which it beats the single radial impulse.

What you should find At \(r_a=16\,800\) km, \(v_c=4.870956\) and \(v_a=3.773027\) km/s, so \(\Delta v_{\rm alt}=2(4.870956-3.773027)=2.19586\) km/s. Setting \(2\sqrt{\mu/p}\,e\sin(\eta/2)=2.19586\) gives \(\eta_{\rm cross}=51.8^\circ\). Below it (\(30^\circ\): \(1.30\) km/s) rotate directly; above it (\(180^\circ\) would cost \(5.03\) km/s) go via the circle.
Figure 5: The single-impulse cost against \(\eta\), compared with circularising at apoapsis and re-eccentricising. Script: fig-man-apse-rotation.py.

A direct rotation costs \(\propto\sin(\eta/2)\) and grows without saturating at a small value, while the detour costs a constant. Large reorientations are made by changing the shape of the orbit, not by rotating it.