Intuition What this page is for
The parent note ZEM/ZEV formulation gave you two boxed laws. But a formula is only trustworthy once you have watched it survive every kind of input you could throw at it. This page is a stress-test: negative errors, zero errors, the t g o → 0 cliff, a case where "doing nothing" is already perfect, a full 2-D vector case, and an exam twist. Read the scenario matrix first, then hunt each cell down.
Definition Coordinate & sign conventions used on this whole page
Up is positive. A position r is altitude above the pad; a positive r means "above the target."
Velocity sign follows position: v < 0 means moving downward, v > 0 upward.
Gravity is negative (it points down): on the Moon g = − 1.62 m/s², on Mars g = − 3.71 m/s², near Earth g = − 9.81 m/s².
In 2-D, x is horizontal and y is up; gravity acts only on y .
Navigation ratio N is a plain number multiplying the line-of-sight correction in Proportional Navigation . The intercept form of ZEM/ZEV turns out to be exactly PN with N = 3 — we derive that equivalence in Ex 6. Wherever you see "N = 3 " it just means "the position-only law with coefficient 3/ t g o 2 ."
Before anything, a one-line refresher so no symbol is used unearned. Each reveal line below hides its answer — quiz yourself, then check:
Recall The two laws (from the parent note)
What is t g o ? ::: time-to-go, t f − t , the seconds remaining until the deadline.
What is ZEM ? ::: Zero-Effort-Miss — the position error you'd have if you stopped steering now and coasted under gravity only.
What is ZEV ? ::: Zero-Effort-Velocity — the velocity error under that same coast.
Soft-landing law (position + velocity)? ::: a c = t g o 2 6 ZEM − t g o 2 ZEV
Intercept law (position only)? ::: a c = t g o 2 3 ZEM
And the two prediction formulas we will use over and over:
Every problem this topic can pose falls into one of these cells. Each row is a "class of case"; the last column names the worked example that nails it. The figure below the table draws each cell as a little picture so you can see the nine situations before you compute them.
#
Case class
What is special about it
Sign / limit behaviour to watch
Covered by
C1
Baseline soft landing, all quantities positive-ish
The "normal" full-law case
ZEM > 0 , ZEV > 0 , opposite-sign terms
Ex 1
C2
Both errors already zero (degenerate)
You are perfectly on the coast trajectory
a c = 0 , no divide-by-zero
Ex 2
C3
Negative ZEM, negative ZEV (coast overshoots and too fast)
Signs flow straight through, command flips
ZEM < 0 , ZEV < 0 , a c < 0
Ex 3
C4
ZEM and ZEV pull opposite ways
Terms nearly cancel
small command from two big numbers
Ex 4
C5
t g o → 0 limit (almost out of time)
Coefficient blow-up 1/ t g o 2
command explodes → thruster saturation
Ex 5
C6
Intercept, full 2-D vector
Position-only law, navigation ratio N = 3
geometry, direction of a c
Ex 6 (figure)
C7
Intercept where naive gravity-drop matters
Forgetting g gives wrong ZEM
quantify the error
Ex 7
C8
Real-world word problem (Mars descent)
Extract numbers from prose
full soft-landing law
Ex 8
C9
Exam twist : solve for the t g o that makes a command achievable
Invert the law
quadratic in t g o
Ex 9
In the figure each tile is one matrix cell: the cyan arrow is where a pure coast takes you, the amber arrow is the residual error (ZEM/ZEV) the command must kill. Notice C2 has no amber arrow (nothing to fix) and C5 shows the same small miss but almost no time — the reason the command explodes.
Worked example Ex 1 — C1: Baseline vertical soft landing
A Moon lander: altitude r = 100 m, velocity v = − 20 m/s (minus = downward), targets r f = 0 , v f = 0 (touch down gently), gravity g = − 1.62 m/s², and t g o = 10 s.
Forecast: Before computing — will the commanded acceleration be positive (upward, i.e. braking) or negative? Guess now.
ZEM. Why this step? We must first know how badly a pure coast misses the pad.
ZEM = 0 − 100 − ( − 20 ) ( 10 ) − 2 1 ( − 1.62 ) ( 100 ) = − 100 + 200 + 81 = 181 m.
ZEV. Why? Same for the touchdown speed.
ZEV = 0 − ( − 20 ) − ( − 1.62 ) ( 10 ) = 20 + 16.2 = 36.2 m/s.
Command. Why? Feed both into the full law.
a c = 1 0 2 6 ( 181 ) − 10 2 ( 36.2 ) = 10.86 − 7.24 = 3.62 m/s².
Verify: a c > 0 → upward → braking. Correct: coasting overshoots up by 181 m and arrives too fast , so we thrust up to slow the fall. Units: s 2 1 ⋅ m − s 1 ⋅ s m = s 2 m ✓.
Worked example Ex 2 — C2: You are already on the perfect coast (degenerate)
Same lander, but now it sits exactly on the coast that lands softly: r = 100 m, v = ? chosen so that ZEM = 0 and ZEV = 0 . Take t g o = 10 , g = − 1.62 , r f = v f = 0 .
Forecast: If both errors are zero, what should the guidance command be? Guess.
Find the v that zeros ZEV. Why? ZEV = 0 ⇒ v f − v − g t g o = 0 ⇒ v = − g t g o = 16.2 m/s… but that must also zero ZEM. Solve both together instead: we need r , v on a landing coast. Set ZEM = 0 : 0 − 100 − 10 v − 2 1 ( − 1.62 ) ( 100 ) = 0 ⇒ − 100 − 10 v + 81 = 0 ⇒ v = − 1.9 m/s.
Check ZEV with that v . Why? A general point won't zero both — this shows only special states are "effort-free." ZEV = 0 − ( − 1.9 ) − ( − 1.62 ) ( 10 ) = 1.9 + 16.2 = 18.1 = 0 .
Build the state where BOTH are zero. Why this step? To exhibit a genuine C2 point we must coast backward from a perfect soft touchdown — only such a state has both errors vanish, and we need it to test that the law returns exactly zero. At t g o before landing softly, v = v f − g t g o = 0 − ( − 1.62 ) ( 10 ) = 16.2 m/s (upward), and r = r f − v t g o − 2 1 g t g o 2 = 0 − ( 16.2 ) ( 10 ) − 2 1 ( − 1.62 ) ( 100 ) = − 162 + 81 = − 81 m.
Command. Why this step? This is the whole test — plug the zeroed errors into the law and confirm the optimal effort really is nothing. a c = 100 6 ( 0 ) − 10 2 ( 0 ) = 0 .
Verify: With ZEM = ZEV = 0 the law gives exactly a c = 0 — no thrust wasted. This is the whole point of "zero-effort": if the free coast already satisfies the boundary conditions, the optimal effort is literally nothing. (Note: no division by zero occurred; t g o = 10 , not 0 .)
Worked example Ex 3 — C3: Both errors genuinely negative
Lander with the target above it, drifting up too fast: r = 100 m, v = + 40 m/s (rising), r f = 200 m (aim higher), v f = 0 , g = − 1.62 , t g o = 10 .
Forecast: Rising fast toward a target only 100 m higher — will the coast overshoot upward (so ZEM comes out negative), and will the required command therefore point down (a c < 0 )? Guess.
ZEM. Why? Predict where a pure coast leaves us relative to the raised target — this fixes the sign of the position error.
ZEM = 200 − 100 − ( 40 ) ( 10 ) − 2 1 ( − 1.62 ) ( 100 ) = 100 − 400 + 81 = − 219 m.
Negative — the fast climb sails past and above the target: a coast overshoots, so we must pull down.
ZEV. Why this step? We also need the speed error, because a soft arrival demands v f = 0 ; the coast's residual upward speed sets the sign of the velocity term.
ZEV = 0 − ( 40 ) − ( − 1.62 ) ( 10 ) = − 40 + 16.2 = − 23.8 m/s.
Command. Why this step? Both errors are known, so we feed them into the full soft-landing law to get the acceleration to apply now.
a c = 100 6 ( − 219 ) − 10 2 ( − 23.8 ) = − 13.14 + 4.76 = − 8.38 m/s².
Verify: a c < 0 → downward → we brake the climb, exactly as forecast. Both ZEM and ZEV came out negative , so this genuinely hits cell C3 (contrast Ex 1, where both were positive). The arithmetic carries the sign automatically — you never insert an absolute value; trust the formula, not your gut about "which way." Units ✓.
Worked example Ex 4 — C4: The two terms nearly cancel
ZEM = 40 m, ZEV = 12 m/s, t g o = 4 s. (Given directly — this is a mid-flight feedback tick.)
Forecast: The position term wants a big push; the velocity term subtracts. Will the net command be large or surprisingly small?
Position term. Why compute separately? To expose the tug-of-war between the two corrections before combining them. 16 6 ( 40 ) = 15 m/s².
Velocity term. Why separately too? So we can see how big a bite the ZEV correction takes out of the position push — the whole point of C4. 4 2 ( 12 ) = 6 m/s².
Net. Why subtract, not add? The soft-landing law carries a minus in front of the ZEV term (opposite-sign corrections near the end), so the two are differenced. a c = 15 − 6 = 9 m/s².
Verify: Two sizeable numbers (15 and 6) produced a moderate 9. This is C4's lesson: near the end the ZEV term routinely eats a large chunk of the ZEM term — that opposite sign is doing real work. Units ✓.
Worked example Ex 5 — C5: The
t g o → 0 cliff
Same residual errors as Ex 4 but now almost out of time: ZEM = 40 m, ZEV = 12 m/s, evaluate at t g o = 4 , 2 , 1 , 0.5 s.
Forecast: Halving t g o — does the command double, or worse?
t g o = 4 : Why start here? It is our reference value from Ex 4, so every later row is compared against it. 16 6 ( 40 ) − 4 2 ( 12 ) = 15 − 6 = 9 m/s².
t g o = 2 : Why halve to 2? To test the first doubling — if the law were linear in 1/ t g o the command would merely double; watch it do more. 4 6 ( 40 ) − 2 2 ( 12 ) = 60 − 12 = 48 m/s².
t g o = 1 : Why go to 1? To confirm the 1/ t g o 2 scaling of the dominant position term as time runs out. 1 6 ( 40 ) − 1 2 ( 12 ) = 240 − 24 = 216 m/s².
t g o = 0.5 : Why this final tiny value? To make the blow-up unmistakable — it is where real thrusters saturate and the command becomes physically unrealisable. 0.25 6 ( 40 ) − 0.5 2 ( 12 ) = 960 − 48 = 912 m/s².
Verify: From 9 → 48 → 216 → 912: growth is faster than doubling, because the dominant 6/ t g o 2 term scales like 1/ t g o 2 — quarter the time, four-times the position term (15→60→240→960). This is the parent note's warning made numeric: a residual miss with little time left demands unbounded thrust, so real systems must drive ZEM→0 early .
In the figure, the cyan curve is the commanded acceleration versus t g o ; the amber dots mark our four rows. Notice how the curve rockets toward the vertical axis on the left — that steep wall is the saturation cliff you must stay away from by killing miss early.
Worked example Ex 6 — C6: 2-D intercept, position-only — and WHY it
is Proportional Navigation (N = 3 )
An interceptor with predicted miss vector ZEM = ( 300 , − 450 ) m and t g o = 6 s. Velocity is not constrained (we only need to hit).
Forecast: Which law — the 6/ t g o 2 or the 3/ t g o 2 one? And will a c point along ZEM or against it?
Pick the law. Why? No v f requirement → position-only → intercept form a c = t g o 2 3 ZEM .
Apply componentwise. Why componentwise? Double-integrator dynamics decouple per axis (see Double Integrator Dynamics ). a c = 36 3 ( 300 , − 450 ) = ( 25 , − 37.5 ) m/s².
Direction check. Why this step? To reveal a geometric fact that matters for every intercept: a single positive scalar (3/ t g o 2 > 0 ) cannot rotate a vector, so the command must be parallel to ZEM — you always thrust straight at the predicted miss, never sideways. a c = 12 1 ( 300 , − 450 ) is a positive multiple of ZEM . See the figure.
Prove it equals PN with N = 3 . Why this step? The parent note claims the intercept form is Proportional Navigation in disguise; we must actually show it, not assert it. In Proportional Navigation the acceleration is a P N = N V c λ ˙ , where λ ˙ is the line-of-sight (LOS) turn rate and V c the closing speed. For a constant-velocity target the ZEM measured perpendicular to the LOS obeys ZEM ⊥ = R λ ˙ t g o , where R is range and R = V c t g o (range closes at the closing speed). Substitute: ZEM ⊥ = V c t g o 2 λ ˙ . Now feed this into our law: a c = t g o 2 3 ZEM ⊥ = t g o 2 3 V c t g o 2 λ ˙ = 3 V c λ ˙ . That is exactly a P N with N = 3 . The coefficient 3 is the navigation ratio.
Verify: Magnitude ∣ a c ∣ = 2 5 2 + 37. 5 2 = 625 + 1406.25 = 2031.25 ≈ 45.07 m/s². And the PN identity checks dimensionally: [ V c λ ˙ ] = s m ⋅ s 1 = s 2 m ✓ — an acceleration, as it must be. The command is parallel to ZEM because a single positive coefficient can't rotate a vector.
In the figure, the cyan arrow is ZEM (interceptor to predicted miss point) and the amber arrow is a c (drawn six-times longer just to be visible). Observe that the two arrows lie on the same line — the whole content of the "direction check."
Worked example Ex 7 — C7: Forgetting gravity in the ZEM
Same interceptor geometry but now it flies through a gravity field g = − 9.81 m/s² acting on the y -axis, t g o = 6 s. The true position miss to the target requires the gravity-drop term. Suppose the raw geometric miss (target minus current straight-line coast, gravity ignored) is ( 300 , − 450 ) m.
Forecast: Adding the gravity-drop term − 2 1 g t g o 2 to the y -component — does the y -miss grow or shrink in magnitude?
Gravity drift over the coast. Why? The vehicle falls 2 1 g t g o 2 during t g o ; the coast already includes this, so the corrected y -ZEM is the naive value minus 2 1 g t g o 2 . 2 1 g t g o 2 = 2 1 ( − 9.81 ) ( 36 ) = − 176.58 m.
Corrected ZEM. Why? We fold that drift into the position error so the command is aimed at the true miss, not the gravity-free illusion. ZEM y = − 450 − ( − 176.58 ) = − 273.42 m. (The x -axis has no gravity: ZEM x = 300 .)
Command. Why? Apply the intercept law to the corrected miss. a c = 36 3 ( 300 , − 273.42 ) = ( 25 , − 22.785 ) m/s².
Verify: The y -command dropped from − 37.5 (Ex 6, no gravity) to − 22.785 — because gravity was already helping pull the vehicle down toward the target, so less commanded thrust is needed. Forgetting the 2 1 g t g o 2 term would have over-commanded by ∣ − 37.5 − ( − 22.785 ) ∣ = 14.715 m/s² — exactly the "forgetting gravity" mistake from the parent note.
Worked example Ex 8 — C8: Real-world word problem (Mars descent)
"A descent stage is 500 m above the landing site, descending at 45 m/s, and drifting horizontally at 8 m/s. It must reach the pad (r f = 0 ) with zero velocity in t g o = 12 s. Martian gravity is 3.71 m/s² downward. What is the commanded acceleration vector?"
Set axes (per our conventions): x horizontal, y up. So r = ( 0 , 500 ) , v = ( 8 , − 45 ) , g = ( 0 , − 3.71 ) , r f = 0 , v f = 0 .
Forecast: The horizontal axis has no gravity and no target offset except zeroing the drift — will its command be small?
ZEM per axis. Why? Coast prediction, axis by axis.
ZEM x = 0 − 0 − ( 8 ) ( 12 ) − 0 = − 96 m.
ZEM y = 0 − 500 − ( − 45 ) ( 12 ) − 2 1 ( − 3.71 ) ( 144 ) = − 500 + 540 + 267.12 = 307.12 m.
ZEV per axis. Why axis by axis here too? Because the double integrator decouples the axes (see Double Integrator Dynamics ) — each direction has its own independent velocity error, and only y feels gravity, so we must compute them separately to keep the gravity term on the right axis.
ZEV x = 0 − 8 − 0 = − 8 m/s. ZEV y = 0 − ( − 45 ) − ( − 3.71 ) ( 12 ) = 45 + 44.52 = 89.52 m/s.
Full law per axis. Why full law? v f = 0 is required (soft touchdown).
a c x = 144 6 ( − 96 ) − 12 2 ( − 8 ) = − 4 + 1.3333 = − 2.6667 m/s².
a cy = 144 6 ( 307.12 ) − 12 2 ( 89.52 ) = 12.79667 − 14.92 = − 2.12333 m/s².
Verify: a c ≈ ( − 2.667 , − 2.123 ) m/s². The horizontal command is negative → it opposes the + 8 m/s drift, killing it. Interestingly a cy < 0 : the ZEV braking demand slightly exceeds the ZEM push here, so the commanded thrust points down a touch — sensible, since the coast was going to overshoot the pad's altitude by 307 m and needs the descent shaped, not just braked. Compare Powered Descent Guidance (Apollo E-Guidance) . Units ✓.
Worked example Ex 9 — C9: Exam twist — invert the law for
t g o
"Your thruster caps commanded acceleration at a m a x = 5 m/s². Given a pure position miss ZEM = 45 m along one axis (intercept law, ZEV ignored), what is the smallest t g o at which the command is still achievable?"
Forecast: Since a c = 3 ZEM / t g o 2 grows as t g o shrinks, the constraint sets a floor on t g o . Bigger or smaller than 5 s? Guess.
Write the constraint. Why? We want the boundary where a c = a m a x . t g o 2 3 ZEM = a m a x .
Solve for t g o . Why square-root? It's quadratic in t g o . t g o = a m a x 3 ZEM = 5 3 ( 45 ) = 27 ≈ 5.196 s.
Interpret. Why this step? A raw number is useless until we say what it means operationally, which is the whole point of the exam twist. For any t g o > 5.196 s the command is below cap; at exactly 5.196 s it saturates; below it, no achievable command can fix the miss — you must have driven ZEM down earlier.
Verify: Plug back: 27 3 ( 45 ) = 27 135 = 5 m/s² = a m a x ✓. This is the design principle from Ex 5 turned into a number: thruster saturation defines a deadline for killing residual miss — cross it and no legal command can save the shot, which is precisely why ZEM/ZEV is flown as continuous feedback that shrinks the miss while t g o is still comfortably large.
Recall Self-test
If ZEM = 0 and ZEV = 0, the optimal command is ::: exactly zero — you are already on a boundary-satisfying coast.
Which law has no ZEV term, and what is its coefficient? ::: the intercept (position-only) law, 3/ t g o 2 .
As t g o halves, the dominant ZEM term multiplies by ::: four (it scales as 1/ t g o 2 ).
Why does forgetting 2 1 g t g o 2 break a lander? ::: the predicted miss is wrong by exactly the gravity drift, so the command is miscalibrated.
The two terms in the soft-landing law have opposite signs because ::: near t f correcting position and correcting velocity demand oppositely-directed acceleration.
Mnemonic "Six over squared, minus two over one"
t g o 2 6 ZEM − t g o 2 ZEV — 6/² for the miss, 2/¹ subtracted for the speed. Drop the second term and you're doing Proportional Navigation (but with 3, not 6).
See also: Optimal guidance — ZEM - ZEV formulation · Calculus of Variations & Pontryagin's Minimum Principle · Time-to-go estimation · Optimal Control — LQR · Lambert's Problem