Contents

Control Systems
Introduction
Time Domain Analysis
Stability Analysis
Frequency Response
Compensators
State Space
Digital Control
Other Topics
Other Subjects
Section Progress70%

7 of 10 articles

Observability

Observability matrix rank test, Mo = [C CA CA²...].

Darshan N
Updated: 19 March 2026
5 min read

Observability is the dual concept to controllability in state-space analysis. It addresses whether the internal state of a system can be fully determined from its output measurements alone, without directly measuring the state. This is practically important because in real systems, state variables like internal currents or temperatures are often not directly accessible but must be inferred from measurable outputs.

Observability: Inferring State from OutputInternal Statex(t) — unknownSystemy = Cx + DuMeasuredy(t) — knownfeeds intoproducesReconstruct x(t) from y(t) over [0,T]Observability Matrix: Mo = [C CA CA² ... CAⁿ⁻¹]ᵀrank(Mo) = n → completely observableObservable: output uniquelydetermines full state vectorUnobservable: some state modehidden from output measurement
Figure 1: Observability tests whether the full internal state can be uniquely reconstructed from output measurements alone.

Core Concept Explanation

In the state-space model dx/dt = Ax + Bu, y = Cx + Du, the output y(t) is the only signal available to an external observer. The matrix C determines which linear combinations of states are observable. If C captures enough information about all state directions, the state can be reconstructed from the output history. If some state variable is completely hidden from C and its effect does not propagate to the output through the dynamics, that state is unobservable.

The output directly sees states through C. After one step of dynamics, the output y also implicitly sees states through CA, because the system evolves as Ax and this evolution maps back through C. Extending this, CAᵏ represents what the output can infer after k dynamic steps. The observability matrix Mo stacks these row blocks:

Mo = [C; CA; CA²; ...; CAⁿ⁻¹] (stacked vertically, dimension n·p × n for p outputs)

The system is completely observable if and only if rank(Mo) = n, which is Kalman's observability rank condition. This guarantees that the system of equations relating initial state x(0) to output observations has a unique solution.

Mathematical Expression

The duality principle in control theory states that observability of (A, C) is equivalent to controllability of (Aᵀ, Cᵀ). This is an important theoretical link: every controllability result has a dual observability version, obtained by transposing A and swapping B and Cᵀ.

The PBH observability test is the frequency-domain equivalent: the system (A, C) is observable if and only if the matrix [λᵢI - A; C] has full column rank for every eigenvalue λᵢ of A. If for some eigenvalue λᵢ, the matrix loses rank, then the eigenmode corresponding to λᵢ is unobservable.

The Gramian-based definition provides yet another angle: the observability Gramian Wo = integral from 0 to T of e^(Aᵀt) Cᵀ C e^(At) dt. The system is observable if and only if Wo is positive definite. This definition is useful in optimal estimation theory.

Practical Understanding

An unobservable mode means a subsystem whose internal dynamics never appear in any output measurement. In a physical circuit, this could be a resonant loop that is perfectly isolated from the measurement port. Such modes are invisible to any observer or estimator designed from output data.

Observability is a prerequisite for observer design (also known as the Luenberger observer). An observer reconstructs the state vector from y(t) and u(t). If the system is not observable, the observer cannot reconstruct the hidden modes and estimation error will persist regardless of observer gain selection.

Numerical Example

Consider A = [[1, 0], [0, 2]], C = [[1, 0]]. The observability matrix Mo = [C; CA]. CA = [[1, 0]]·[[1,0],[0,2]] = [[1, 0]]. So Mo = [[1, 0]; [1, 0]], which has rank 1. The system is not observable because x₂ under eigenvalue 2 is invisible to the output, which only measures x₁.

Example
Given:
A = [[1, 0], [0, 2]],  C = [[1, 0]],  n = 2

Why this formula applies:
For single-output system of order 2, Mo is 2×2. rank(Mo) must equal 2 for observability.

Formula:
Mo = [C; CA],   rank(Mo) = n → observable

Substitution:
CA = [[1,0]] · [[1,0],[0,2]] = [[1, 0]]
Mo = [[1, 0],
      [1, 0]]

Calculation:
det(Mo) = 1×0 - 0×1 = 0
rank(Mo) = 1 ≠ n = 2

Final Answer:
System is NOT completely observable.
State x₂ (eigenvalue λ=2) is unobservable because C has zero in second position and CA also gives zero there.
Exam Tip: For a diagonal A, observability fails if any column of C corresponding to a diagonal entry is entirely zero. That eigenvalue is unobservable. This mirrors the controllability check and is a quick GATE shortcut.
Observability Matrix Construction and Duality PrincipleOutput matrix rowC (p×n)1-step infoCA2-step infoCA²(n-1)-step infoCAⁿ⁻¹Mo = [C; CA; CA²; ...; CAⁿ⁻¹] → (n·p) × n matrix (stacked vertically)Each row block adds information about states observable through dynamic evolutionrank(Mo) = nAll state directions visible via output→ Completely Observablerank(Mo) < nSome mode invisible to output→ NOT ObservableDuality PrincipleObservability of (A, C)= Controllability of (Aᵀ, Cᵀ)Swap: B ↔ Cᵀ, A ↔ AᵀPBH Observability Testrank[λᵢI - A; C] = nfor ALL eigenvalues λᵢ of AFails → λᵢ mode is unobservable
Figure 2: Observability matrix stacks output information across dynamic steps; duality connects observability to controllability of the transposed system.

Mechanism Points

  • The observability matrix Mo is formed by stacking C, CA, CA², ..., CAⁿ⁻¹ vertically. Each additional row block adds information gained through one more step of dynamic observation.
  • rank(Mo) = n is the necessary and sufficient condition for complete observability. For a single-output system, this is a square matrix and the test reduces to det(Mo) ≠ 0.
  • Duality: (A, C) is observable if and only if (Aᵀ, Cᵀ) is controllable. Every observability result can be derived from its dual controllability result by transposition.
  • PBH test: rank[λᵢI - A; C] = n for each eigenvalue. If any eigenvalue causes rank loss, its mode is hidden from the output and cannot be estimated.
  • Observability is a prerequisite for Luenberger observer design, which is used to reconstruct unmeasured states for output feedback control.

Quick Revision

  • Observability: all initial states x(0) can be uniquely determined from output y(t) over finite interval [0, T].
  • Observability matrix: Mo = [C; CA; CA²; ...; CAⁿ⁻¹], dimension (n·p) × n.
  • Rank condition: rank(Mo) = n → completely observable.
  • For diagonal A, check if any column of C is all zeros. Zero column → that eigenvalue is unobservable.
  • PBH test: rank[λᵢI - A; C] = n for all eigenvalues of A.
  • Duality: Observability of (A, C) equals controllability of (Aᵀ, Cᵀ). Use this in GATE to convert observability problems to controllability form.
  • Exam trap: Observability depends on A and C (output matrix). Adding more sensors (changing C) can make an unobservable system observable.

Observability Matrix Test

Test your understanding of the observability rank condition and its physical interpretation for LTI systems.

Question 1 of 3

Q1.For A = [[-1, 0], [0, -2]], C = [1, 1], compute the observability matrix Mo and determine if the system is observable.