Guidance, Navigation and Control · Theory · M11
M11-T1 — Orbits for Guidance: Elements, Energy and Delta-v
Guidance in orbit is bookkeeping of energy. A change of speed at one point moves the opposite side of the orbit, and the cost of every manoeuvre is a delta-v that the rocket equation turns into propellant.
Orbital guidance asks a different question from the rest of this course: not how to fly a path against forces, but which impulse to apply, where, so that coasting does the rest. This lesson gives the depth of orbital mechanics that guidance needs: the elements that describe an orbit, the vis-viva equation that links speed and radius, the Hohmann transfer between circular orbits, and the plane change, with the combined burn that saves a third of the delta-v. Each result is checked by numerically integrating the two-body problem.
Learning objectives
After this lesson, you should be able to:
- Describe an orbit by its semi-major axis, eccentricity and period, and compute them from a position and velocity.
- Use the vis-viva equation to find the speed at any radius.
- Compute the delta-v and time of a Hohmann transfer and verify it by propagation.
- Compute a plane change and the saving from combining it with another burn.
The intuition
UAV M5-T4: Quaternion-based orientation is the attitude half of spacecraft control. The position half has its own physics, which this lesson sets out. The vehicles are different: a satellite moves under gravity alone for almost all of its life, so its guidance is a plan of a few impulsive burns. Hopper's own gravity is constant and the thrust acts all the time, which is why the earlier modules are not the right tools here.
An orbit is an ellipse
A body under the inverse-square attraction of the Earth moves on a conic section with the Earth at one focus. A closed orbit is an ellipse, described by its semi-major axis (half the longest diameter) and its eccentricity (0 for a circle). The semi-major axis alone sets the energy and the period: . A 400 km circular orbit has a speed of 7.67 km/s, a period of 92.56 min and a mean motion of rad/s. The geostationary radius, 42 164 km, has a period of 23.93 h and a speed of 3.07 km/s: higher orbits are slower.
Speed at a radius: vis-viva
The energy per unit mass of an orbit is whatever its shape, so the speed at radius follows from the energy: . For a circle () it gives the circular speed . This one equation answers every question about speed changes.
The Hohmann transfer
To go from a circular orbit of radius to a larger circular orbit , apply an impulse along the velocity at that puts the vehicle on an ellipse whose perigee is and apogee , coast half an orbit, and apply a second impulse at to circularize. For 400 km to geostationary the burns are 2397.5 m/s and 1456.5 m/s, a total of 3854 m/s, and the transfer takes 5.29 h. For 400 km to 800 km the burns are 109.1 and 107.6 m/s (216.7 m/s) in 48.3 min. Integrating the two-body equations numerically after the first burn reaches the apogee radius 42 164.0 km at 5.29 h, the predicted values.
Changing the plane
Rotating the orbit plane by an angle costs : for 28.5° it is 3775 m/s at the low-orbit speed and only 1514 m/s at the geostationary speed. The plane change is done where the vehicle is slowest, and it can be combined with the apogee burn: the single combined burn costs 1824 m/s, against 1457 + 1514 = 2970 m/s done separately. From a 28.5° parking orbit the whole transfer to geostationary is 4221 m/s, a rocket-equation mass ratio of 3.84 at a specific impulse of 320 s.
All orbital guidance is delta-v accounting: the vis-viva equation gives the speed at a radius, a Hohmann transfer is two impulses at the ends of an ellipse, and plane changes are done at low speed, combined with another burn.
Definitions
- Semi-major axis and eccentricity
- The size and shape of the ellipse; perigee radius , apogee radius .
- Gravitational parameter
- = 3.986×10¹⁴ m³/s² for the Earth.
- Specific energy
- Energy per unit mass: .
- Delta-v
- The change of velocity an impulsive burn must supply; the propellant follows from the rocket equation.
- Hohmann transfer
- The minimum-delta-v two-impulse transfer between coplanar circular orbits: along the half-ellipse tangent to both.
Derivation: vis-viva, and the Hohmann burns
From the energy of a Kepler orbit to the speed at any radius.
Conservation of energy for the inverse-square force: kinetic plus gravitational potential energy per unit mass.
At the two apsides the velocity is perpendicular to the radius, so angular momentum gives the first relation; both points share the energy.
Eliminating the speeds gives the energy in terms of the major axis (a standard result; for a circle and follows from ).
Substitute the energy into the energy equation: the vis-viva equation.
The Hohmann burns
The transfer ellipse has perigee r₁ and apogee r₂; the vis-viva equation gives the speed at r₁ on it.
The first burn is the difference from the circular speed at r₁, along the velocity.
At the apogee the speed on the ellipse is below the circular speed; the second burn raises it.
The coast is half of the period of the transfer ellipse.
The apogee velocity (in the old plane) and the final circular velocity (in the new plane) differ by an angle ; their difference vector has this length (law of cosines).
Speed at a radius is a function of the orbit's energy alone. A Hohmann transfer applies the vis-viva equation at the two ends of the ellipse; a plane change costs most where the vehicle is fastest, and so is combined with the apogee burn.
A worked example
Burns, times and checks for a small satellite and for a geostationary mission, computed with m³/s² and the Earth radius 6378 km.
- Circular orbits. At 400 km: speed 7668.6 m/s, period 92.56 min, mean motion 1.131×10⁻³ rad/s. At the geostationary radius 42 164 km: 3074.7 m/s and 23.934 h.
- Hohmann to GEO. = 2397.5 m/s, = 1456.5 m/s, total 3854.0 m/s, transfer time 5.29 h. To 800 km: 109.1 + 107.6 = 216.7 m/s in 48.3 min.
- Check by propagation. Integrating the two-body motion with RK4 from the first burn, the apogee radius is 42 164.0 km (target 42 164.0) reached at 5.29 h (predicted 5.29 h).
- Plane change of 28.5°. Alone: 1513.7 m/s at the geostationary speed, 3775.3 m/s at the 400 km speed. Combined with the apogee burn: 1824.1 m/s against 1456.5 + 1513.7 = 2970.2 m/s separately: a saving of 1146 m/s.
- Total and propellant. From a 28.5° parking orbit at 400 km to GEO: 2397.5 + 1824.1 = 4221.5 m/s; at a specific impulse of 320 s, = 3.84, so 74% of the mass at the start of the burns is propellant.
- Elements from a state. A position at 6778 km with a speed of 7761 m/s gives a semi-major axis of 6946.6 km, an eccentricity of 0.0243, a perigee altitude of 400 km, an apogee altitude of 737 km and a period of 96.03 min.
import math
import gnckit as g
MU, RE = 3.986004418e14, 6378137.0
def vcirc(r): return math.sqrt(MU / r)
def visviva(r, a): return math.sqrt(MU * (2 / r - 1 / a))
def period(a): return 2 * math.pi * math.sqrt(a ** 3 / MU)
r1 = RE + 400e3
print(f'circular orbit at 400 km: speed {vcirc(r1):.1f} m/s, period {period(r1) / 60:.2f} min, mean motion {math.sqrt(MU / r1 ** 3):.3e} rad/s')
rg = 42164e3
print(f'geostationary radius {rg / 1e3:.0f} km: speed {vcirc(rg):.1f} m/s, period {period(rg) / 3600:.3f} h')
def hohmann(ra, rb):
a = (ra + rb) / 2
dv1 = visviva(ra, a) - vcirc(ra)
dv2 = vcirc(rb) - visviva(rb, a)
return dv1, dv2, math.pi * math.sqrt(a ** 3 / MU)
dv1, dv2, tt = hohmann(r1, rg)
print(f'Hohmann 400 km -> GEO: dv1 {dv1:.1f} m/s, dv2 {dv2:.1f} m/s, total {dv1 + dv2:.1f} m/s, transfer time {tt / 3600:.2f} h')
dv1s, dv2s, tts = hohmann(r1, RE + 800e3)
print(f'Hohmann 400 km -> 800 km: dv {dv1s:.1f} + {dv2s:.1f} = {dv1s + dv2s:.1f} m/s, transfer time {tts / 60:.1f} min')
# check by numerical integration: burn at the perigee, coast to the apogee
def accel(p):
r = math.hypot(p[0], p[1])
return (-MU * p[0] / r ** 3, -MU * p[1] / r ** 3)
def step(state, dt):
def f(t, s):
a = accel(s)
return [s[2], s[3], a[0], a[1]]
return g.rk4_step(f, 0.0, state, dt)
state = [r1, 0.0, 0.0, vcirc(r1) + dv1]
t = 0.0; dt = 5.0
rmax = 0.0; tmax = 0.0
prev_r = r1
while t < 2 * tt:
state = step(state, dt); t += dt
r = math.hypot(state[0], state[1])
if r < prev_r and rmax == 0.0:
rmax = prev_r; tmax = t - dt
break
prev_r = r
print(f'numerical propagation after the first burn: apogee radius {rmax / 1e3:.1f} km (target {rg / 1e3:.1f} km), reached at {tmax / 3600:.2f} h (predicted {tt / 3600:.2f} h)')
# plane change
def plane_change(v, di): return 2 * v * math.sin(di / 2)
di = math.radians(28.5)
print(f'a pure plane change of 28.5 deg at GEO speed: {plane_change(vcirc(rg), di):.1f} m/s; at the 400 km circular speed: {plane_change(vcirc(r1), di):.1f} m/s')
va = visviva(rg, (r1 + rg) / 2)
dv_comb = math.sqrt(va ** 2 + vcirc(rg) ** 2 - 2 * va * vcirc(rg) * math.cos(di))
print(f'combining the plane change with the apogee burn: {dv_comb:.1f} m/s against {vcirc(rg) - va:.1f} + {plane_change(vcirc(rg), di):.1f} = {vcirc(rg) - va + plane_change(vcirc(rg), di):.1f} done separately')
print(f'total from a 28.5 degree, 400 km parking orbit to GEO: {dv1 + dv_comb:.1f} m/s; the rocket equation with Isp 320 s needs a mass ratio of {math.exp((dv1 + dv_comb) / (320 * 9.80665)):.2f}')
# elements from a state vector
r_vec = [r1 * math.cos(math.radians(30)), r1 * math.sin(math.radians(30)), 0.0]
v_perp = 7800.0
v_vec = [-v_perp * math.sin(math.radians(30)) * 0.995, v_perp * math.cos(math.radians(30)) * 0.995, 0.0]
vv = math.hypot(*v_vec); rr = math.hypot(*r_vec)
energy = vv * vv / 2 - MU / rr
a = -MU / (2 * energy)
h = r_vec[0] * v_vec[1] - r_vec[1] * v_vec[0]
ecc = math.sqrt(max(0.0, 1 + 2 * energy * h * h / MU ** 2))
print(f'elements from a state (position at 6778 km, speed {vv:.0f} m/s): semi-major axis {a / 1e3:.1f} km, eccentricity {ecc:.4f}, perigee {(a * (1 - ecc) - RE) / 1e3:.0f} km altitude, apogee {(a * (1 + ecc) - RE) / 1e3:.0f} km, period {period(a) / 60:.2f} min')circular orbit at 400 km: speed 7668.6 m/s, period 92.56 min, mean motion 1.131e-03 rad/s geostationary radius 42164 km: speed 3074.7 m/s, period 23.934 h Hohmann 400 km -> GEO: dv1 2397.5 m/s, dv2 1456.5 m/s, total 3854.0 m/s, transfer time 5.29 h Hohmann 400 km -> 800 km: dv 109.1 + 107.6 = 216.7 m/s, transfer time 48.3 min numerical propagation after the first burn: apogee radius 42164.0 km (target 42164.0 km), reached at 5.29 h (predicted 5.29 h) a pure plane change of 28.5 deg at GEO speed: 1513.7 m/s; at the 400 km circular speed: 3775.3 m/s combining the plane change with the apogee burn: 1824.1 m/s against 1456.5 + 1513.7 = 2970.2 done separately total from a 28.5 degree, 400 km parking orbit to GEO: 4221.5 m/s; the rocket equation with Isp 320 s needs a mass ratio of 3.84 elements from a state (position at 6778 km, speed 7761 m/s): semi-major axis 6946.6 km, eccentricity 0.0243, perigee 400 km altitude, apogee 737 km, period 96.03 min
In robotics
Orbit changes are planned as a handful of impulses, with the delta-v the currency.
- Mission delta-v budgets. A mission is first sized by its total delta-v: 3.9 km/s for low orbit to GEO, 4.2 km/s with the plane change, 0.2 km/s for a 400 to 800 km raise. The rocket equation turns each into a propellant fraction, which sets the vehicle.
- Combining burns. The saving of 1.1 km/s by combining the plane change with the apogee burn is why geostationary transfer orbits are launched from low latitudes and why launch sites matter.
- Station-keeping and drag make-up. A satellite at 400 km loses altitude to drag and needs small periodic burns of metres per second per month; the same equations give the cost of each.
- Beyond Hohmann. A transfer to a much higher orbit can be cheaper with a bi-elliptic path, and with continuous low thrust the problem becomes a trajectory optimization of module 9. For rendezvous the relevant dynamics are relative, which is the next lesson.
- Navigation. Orbit determination fits an ellipse (a few numbers) to tracking data, and the elements are the state of the orbital navigation filter, in contrast to the position and velocity states of the vehicles of earlier modules.
The relative motion of two vehicles in nearby orbits, which governs rendezvous, is the subject of M11-T2: Relative Motion and Rendezvous. The attitude half of spacecraft control starts at M11-T3: Attitude Dynamics Without Air.
Common misconceptions
“To speed up in orbit you fire forward and move faster at the same radius.”
Firing forward raises the energy: the vehicle climbs toward a higher orbit, and once there it is slower. A speed increase at perigee shows up as a higher apogee, and the opposite side of the orbit moves.
“A plane change costs the same wherever it is done.”
It costs : 3775 m/s at the 400 km speed and 1514 m/s at the geostationary speed. It is done where the vehicle is slowest, and combined with the apogee burn.
“A Hohmann transfer is always the cheapest.”
It is the cheapest two-impulse transfer between coplanar circular orbits. For large radius ratios a bi-elliptic transfer can cost less, and with low thrust a different problem applies.
“Higher orbits are faster.”
Higher orbits are slower: 7.67 km/s at 400 km and 3.07 km/s at geostationary radius. The speed falls because the vehicle spends its kinetic energy climbing.
“Delta-v is a measure of propellant.”
It is a measure of velocity change; the propellant follows from the rocket equation and grows exponentially with it: 3.84 times the burnout mass for 4.2 km/s at 320 s.
Key takeaways
- An orbit is an ellipse; the semi-major axis sets the energy and the period .
- The vis-viva equation gives the speed at any radius.
- A Hohmann transfer from 400 km to GEO costs 2397.5 + 1456.5 = 3854 m/s in 5.29 h; numerical propagation confirms the apogee radius and time.
- A plane change of 28.5° costs 1514 m/s at GEO speed and 3775 m/s at LEO speed; combined with the apogee burn it costs 1824 m/s instead of 2970.
- The total from a 28.5° parking orbit to GEO is 4221 m/s, a mass ratio of 3.84 at Isp 320 s.
- Higher orbits are slower; impulses change the opposite side of the orbit.
References and further reading
Each source is marked free or paid. Free to read does not mean free to reuse: the course resources page lists every source with its licence.
- H. D. Curtis, Orbital Mechanics for Engineering Students, 4th edition, Butterworth-Heinemann, 2020, the standard text for this material. Paid.
- R. H. Battin, An Introduction to the Mathematics and Methods of Astrodynamics, revised edition, AIAA, 1999. Paid.
- D. A. Vallado, Fundamentals of Astrodynamics and Applications, 4th edition, Microcosm Press, 2013. Paid.
- MIT 16.07 Dynamics (OpenCourseWare) , the lectures on central-force motion and orbits. Free; licence CC BY-NC-SA 4.0.
Knowledge check
Three questions. Write an answer, then reveal the explanation. Your answers stay in your browser.
Question 1
Compute the speed at the perigee of an orbit with perigee radius 6778 km and apogee radius 12 000 km (μ = 3.986×10¹⁴).
Explanation
The semi-major axis is (6778 + 12 000)/2 = 9389 km. Vis-viva: v² = μ(2/r − 1/a) = 3.986×10¹⁴ (2/6.778×10⁶ − 1/9.389×10⁶) = 3.986×10¹⁴ (2.9507×10⁻⁷ − 1.0651×10⁻⁷) = 3.986×10¹⁴ × 1.8856×10⁻⁷ = 7.516×10⁷, so v = 8669 m/s. The circular speed at that radius is 7668 m/s, so this orbit needs 1000 m/s more than the circular one at perigee.
Question 2
Why is it cheaper to change the orbital plane at the geostationary radius than at 400 km, and what does combining the plane change with the apogee burn do?
Explanation
A plane change costs 2v sin(Δi/2), proportional to the speed: 3074.7 m/s at GEO against 7668.6 m/s at 400 km, so 1514 against 3775 m/s for 28.5°. At the apogee the vehicle is also making the burn that circularizes; the two velocity changes add as vectors, and the magnitude is the third side of a triangle, 1824 m/s, less than their sum 2970 m/s, because the circularizing burn is partly in the direction that the plane change needs.
Question 3
A transfer needs 4.2 km/s with an engine of specific impulse 320 s. What fraction of the initial mass is propellant?
Explanation
The rocket equation gives m0/mf = exp(Δv/(Isp g0)) = exp(4200/(320 × 9.80665)) = exp(1.338) = 3.81. The propellant fraction is 1 − 1/3.81 = 0.74: 74% of the mass at the start of the burns is propellant. A higher specific impulse reduces it quickly: at 450 s it would be 61%. Delta-v is exponential in propellant mass, so small savings in delta-v are worth large savings in mass.
What’s next
Related content
Nothing below is required to finish this lesson.
Other courses on this site treat neighbouring topics from their own angle:
- UAV M5-T4: Quaternion-based orientation
- UAV M5-T5: Attitude control
- Linear Algebra M7-T4: SO(3)
- Linear Algebra M10-T4: The Exponential Map
- SLAM M2-T3: Rotation Matrices, Quaternions, and Pose Representation
This course leaves the following to the pages that already teach them:
- Quaternion algebra and the rotation group
- Mission design, launch windows and interplanetary transfers (outside the scope of this site)
- Structural, thermal and propulsion design (outside the scope of this site)
Get notified when the next lesson and new labs are released.
One email per new lesson or lab.