Observability Matrix Calculator

Build the observability matrix from system output equations. Check rank, determinant, and visibility with confidence. Plot clear results for faster engineering diagnostics and reporting.

Calculator Inputs

Enter matrix A as an n × n state matrix and C as a p × n output matrix. Separate values with spaces or commas. Separate rows with new lines.

Example Data Table

Parameter Example Value Meaning
n 3 Three system states are modeled.
p 1 One measured output is available.
A [0 1 0; 0 0 1; -6 -11 -6] Companion-form state matrix.
C [1 0 0] Output measures the first state directly.
Expected Rank 3 Full rank indicates observability for this example.

Formula Used

State equation: ẋ = A x + B u

Output equation: y = C x + D u

Observability matrix:

O = [ C ; C A ; C A² ; … ; C An−1 ]

Decision rule: The system is fully observable when rank(O) = n, where n is the number of states.

This calculator also reports the nullity n − rank(O), the first stacking depth that reaches full rank, and the determinant when O is square.

How to Use This Calculator

  1. Enter the number of states n and measured outputs p.
  2. Paste the state matrix A using rows on separate lines.
  3. Paste the output matrix C with p rows and n columns.
  4. Set a small tolerance for numerical rank testing.
  5. Optionally enable intermediate block display.
  6. Press Compute Observability.
  7. Review the rank, index, determinant, summary table, and heatmap.
  8. Download the resulting matrix summary as CSV or PDF.

Frequently Asked Questions

1) What is the observability matrix?

It is a stacked matrix built from C, CA, CA², and higher powers up to CAn−1. It tests whether outputs contain enough information to reconstruct internal states.

2) When is a system fully observable?

A linear time-invariant system is fully observable when the observability matrix has rank equal to the number of states. Then every state can be inferred from output measurements over time.

3) Why does the calculator use a tolerance?

Numerical rank tests can be sensitive to rounding and nearly dependent rows. A tolerance helps treat tiny pivot values as zero, producing more stable engineering conclusions.

4) What does observability index mean?

It is the first stacking depth where the partial observability matrix reaches full rank. Smaller values usually mean the system states become distinguishable with fewer output derivatives.

5) Can multi-output systems become observable faster?

Yes. Additional independent outputs often increase rank faster because each new measurement row can reveal more state information at earlier stacking depths.

6) What if the rank is smaller than n?

Then at least one state direction is hidden from the outputs. You may need extra sensors, different output placement, or a redesigned measurement model.

7) Does scaling the states change observability?

A valid nonsingular state transformation preserves observability theoretically. However, poor scaling can still affect numerical rank quality and lead to weak computational conditioning.

8) Does this tool support symbolic matrices?

No. This page is designed for numeric engineering calculations. Enter numeric values only, using decimals, integers, or scientific notation.

Related Calculators

inverse laplace calculatorclosed loop gain calculatoropen loop gain calculatorpole zero plot calculatorcontrollability matrix calculatorgain margin calculatorsteady state error calculator

Important Note: All the Calculators listed in this site are for educational purpose only and we do not guarentee the accuracy of results. Please do consult with other sources as well.