3.5.33 · D2Guidance, Navigation & Control (GNC)

Visual walkthrough — Observability matrix — rank test

1,694 words8 min readBack to topic

This page is the flagship picture-tour of the parent result. If a word here feels unfamiliar, it gets built here — from line one.


Step 1 — The box we can't see inside

WHAT. We have a machine whose insides are described by a list of numbers we call the state, written . If there are hidden numbers, we say lives in — think of it as an arrow (a vector) pointing somewhere in an -dimensional room. We cannot look at directly. All we get is a reading on a sensor, a smaller list of numbers .

WHY. Everything about "can we figure out the start?" hinges on this gap: many hidden , few visible . We must ask whether the few readings pin down the many unknowns.

PICTURE. The box has hidden gears (the components of ); a single external needle shows .

Figure — Observability matrix — rank test

Here is how many sensor numbers we read; often (a single dial).


Step 2 — Throw away everything the input does

WHAT. The full system is . The dot on means "rate of change of in time". The is the input — knobs we ourselves turn. We set .

WHY. Because we chose , its entire effect on is already known to us — we can subtract it off perfectly. What is left is the machine's free response: how it drifts on its own from wherever it started. Observability is only about that free part, so simply vanish from the question. Only and remain.

PICTURE. The known input-contribution is peeled away like a sticker, leaving the clean free-response curve.

Figure — Observability matrix — rank test

Step 3 — One instant is not enough

WHAT. At the single instant the reading is .

WHY it fails alone. has only rows (say ). One equation fixes only the shadow of along one direction. All arrows that cast the same shadow give the identical reading — we can't tell them apart. We need more equations.

PICTURE. A whole line of candidate arrows all project to the same — the dial can't distinguish them.

Figure — Observability matrix — rank test

Step 4 — Watch how fast the needle moves (differentiate)

WHAT. Take time-derivatives of at . The derivative means "how fast the reading changes". Because , each derivative pulls down one more factor of :

WHY. Each derivative is a brand-new equation in the same unknown , but with a new coefficient row . Every genuinely new row points at a new direction of we can now see. Position gives you ; velocity gives you ; and so on — the needle's motion leaks out the hidden gears.

PICTURE. Each derivative order lights up a new arrow direction being captured.

Figure — Observability matrix — rank test

Term-by-term in :

  • — the -th derivative of the reading, a number we can measure.
  • — dial wiring (fixed).
  • — the linkage applied times; this is what rotates us into fresh directions.
  • — still the one prize we're solving for.

Step 5 — Why we stop at (Cayley–Hamilton)

WHAT. We do not keep differentiating forever. We stop at the -th derivative, using rows .

WHY. The Cayley–Hamilton theorem says every matrix satisfies its own characteristic equation, which rearranges to:

So is just a recipe mixing lower powers. Multiply by : the row is a mix of rows we already have. It contributes zero new directions. Every derivative past is redundant.

PICTURE. The ladder of rows grows, then hits a ceiling — new rungs after lie flat on the old ones.

Figure — Observability matrix — rank test

Step 6 — Solve for the prize: the rank test

WHAT. Stack the measured derivatives into one tall equation:

Solving for uniquely is possible iff hits every direction of the -dimensional room — i.e. its columns are independent, i.e. its rank equals .

WHY. Rank means flattens no nonzero arrow to zero: its null space is only . Two different starts can never give identical readings. Fewer than means some arrow slips through invisibly.

PICTURE. Full rank = the map is injective; every distinct lands on a distinct reading-stack.

Figure — Observability matrix — rank test

This is the same yes/no gate a Kalman Filter needs before its state estimate can converge, and the PBH test gives an eigenvalue-flavoured version of the very same check.


Step 7 — The degenerate case: a gear that never moves the dial

WHAT. Suppose . Then there is a nonzero arrow with .

WHY it's fatal. If then every row kills it: . Feed it forward and for all time. This arrow is an unobservable state — an internal motion that never budges the needle.

PICTURE. Two decoupled identical modes (, single dial): the difference-direction slides into the null space and vanishes from the reading.

Figure — Observability matrix — rank test

The one-picture summary

Figure — Observability matrix — rank test

The whole tour on one canvas: input peeled off → free response → differentiate to harvest directions → ladder capped at by Cayley–Hamilton → count independent rungs. Rank ⇒ every gear seen (observable); rank ⇒ a hidden gear (a null-space arrow that reads ).

Recall Feynman: the whole walkthrough in plain words

You've got a sealed box of spinning gears and just one dial on the outside. First you ignore anything you did to the box (the knobs) — you know that effect, subtract it. Now watch the dial drift on its own. Reading it once tells you a little: one shadow of the gears. But watch how fast it moves, and how fast that changes — each new "speed of the speed" is a fresh clue pointing at gears you couldn't see before. You keep collecting clues, but there's a mathematical guarantee (Cayley–Hamilton) that after speeds there are no genuinely new clues left — everything after just repeats. Stack all those clue-rows into one tall table . Count the truly independent rows. If that count equals the number of gears , the dial secretly reveals every gear — the box is observable, and you can rewind to its exact starting spin. If the count falls short, some combination of gears cancels perfectly and never nudges the dial — that hidden motion is forever invisible, and no amount of watching will recover it.


Connections