Contents

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

3 of 10 articles

State Space from Transfer Function

Controllable and observable canonical forms.

Darshan N
Updated: 19 March 2026
10 min read

Converting a transfer function to state space form is a fundamental skill in modern control systems. A given transfer function can be represented in multiple state space forms depending on the choice of state variables. The most common and exam-relevant forms are the controllable canonical form and the observable canonical form. Each form preserves the input-output behavior while organizing matrices to highlight specific system properties.

Transfer Function to State Space: Two Canonical FormsG(s) = (b1*s + b0) / (s^2 + a1*s + a0)Transfer function (n=2 example)Controllable Canonical FormA = [[0, 1], [-a0, -a1]]B = [0, 1]^TC = [b0, b1]Last row of A: negatives ofdenominator coefficientsEnsures controllabilityObservable Canonical FormA = [[0, -a0], [1, -a1]]B = [b0, b1]^TC = [0, 1]Last column of A: negatives ofdenominator coefficientsEnsures observabilityBoth forms yield same transfer functionH(s) = C(sI-A)^-1 B + D for both representations
Figure 1: Two canonical state space forms derived from the same transfer function

Core Concept Explanation

Consider a general nth-order transfer function G(s) = N(s)/D(s) where the denominator D(s) = s^n + a_{n-1} s^{n-1} + ... + a1 s + a0 and numerator N(s) = b_{n-1} s^{n-1} + ... + b1 s + b0. This assumes the system is strictly proper (numerator degree less than denominator degree), so D = 0. The conversion process systematically fills the A, B, C matrices based on the polynomial coefficients.

The controllable canonical form (CCF) is constructed by choosing state variables as the outputs of a chain of integrators. The A matrix has ones on the first superdiagonal and the negatives of denominator coefficients a0, a1, ..., a_{n-1} filling the last row. The B matrix has all zeros except a 1 in the last position. The C matrix contains the numerator coefficients b0, b1, ..., b_{n-1}.

The observable canonical form (OCF) is the transpose dual of CCF. The A matrix has ones on the first subdiagonal and the negatives of denominator coefficients in the last column. The B matrix contains the numerator coefficients, and the C matrix has a 1 in the last position with zeros elsewhere. CCF and OCF are related by A_OCF = A_CCF^T, B_OCF = C_CCF^T, C_OCF = B_CCF^T.

Mathematical Expression

For the transfer function G(s) = (b1 s + b0) / (s^2 + a1 s + a0), the controllable canonical form matrices are: A = [[0, 1],[-a0, -a1]], B = [0, 1]^T, C = [b0, b1]. For observable canonical form: A = [[0, -a0],[1, -a1]], B = [b0, b1]^T, C = [0, 1]. The characteristic polynomial in both cases is det(sI - A) = s^2 + a1 s + a0, confirming identical poles. The name controllable canonical refers to the fact that the controllability matrix Mc = [B, AB] is guaranteed to have full rank for this form.

Practical Understanding

These canonical forms are used as starting structures for controller design. When applying pole placement using state feedback u = -Kx, the controllable canonical form makes gain matrix computation straightforward using Ackermann's formula. The observable canonical form simplifies observer (Luenberger observer) design.

When a transfer function has repeated poles or is not in simplified form, the conversion becomes more involved. If the transfer function can be partially fraction expanded, each first or second-order term can be converted separately and the results combined in a block-diagonal form called the diagonal canonical form or Jordan form.

Solved Numerical Example

Example
Given:
G(s) = (2s + 5) / (s^2 + 4s + 3)
Find controllable canonical form and observable canonical form.

Why this formula applies:
Strictly proper transfer function (numerator degree 1 < denominator degree 2).
Coefficients directly map to canonical form matrices.

Denominator: s^2 + 4s + 3 → a1 = 4, a0 = 3
Numerator: 2s + 5 → b1 = 2, b0 = 5

Controllable Canonical Form:
A_CCF = [[0,  1], [-3, -4]]
B_CCF = [0, 1]^T
C_CCF = [5, 2]
D     = 0

Observable Canonical Form:
A_OCF = [[0, -3], [1, -4]]
B_OCF = [5, 2]^T
C_OCF = [0, 1]
D     = 0

Verification (CCF):
det(sI - A) = det([[s,-1],[3, s+4]]) = s(s+4) + 3 = s^2 + 4s + 3 ✓

Final Answer:
Both forms have same poles at s = -1 and s = -3
System is stable (both poles in left half plane)
Exam Tip: To quickly write CCF from G(s) = N(s)/D(s), the last row of A is always [-a0, -a1, ..., -a_{n-1}], B has 1 only in the last row, and C contains numerator coefficients starting from b0. OCF is simply the transpose dual. GATE often asks to identify which canonical form a given matrix set represents.

Mechanism Diagram

Signal Flow: Controllable Canonical Form (n=2)+sumu1/sIntegratorx21/sIntegratorx1+outputyb1b0-a0 (feedback)-a1 (feedback)
Figure 2: Signal flow realization of controllable canonical form showing integrator chain and feedback

Steps for Conversion

  • Write transfer function as G(s) = N(s)/D(s). Ensure it is strictly proper. If not, perform polynomial long division to separate the improper part into D matrix.
  • Read denominator coefficients a0, a1, ..., a_{n-1} and numerator coefficients b0, b1, ..., b_{n-1}.
  • For CCF: fill A with superdiagonal of ones and last row as negatives of denominator coefficients. Set B as last-row-unit vector. Set C as numerator coefficient row.
  • For OCF: transpose the roles. A has subdiagonal of ones and last column as negatives of denominator coefficients. B holds numerator coefficients. C is last-row-unit vector.
  • Verify by computing det(sI - A) and confirming it matches the denominator polynomial.

Quick Revision

  • CCF: A has last row [-a0,-a1,...,-a_{n-1}], B=[0,...,0,1]^T, C=[b0,b1,...,b_{n-1}].
  • OCF: A has last column [-a0,-a1,...,-a_{n-1}]^T, B=[b0,...,b_{n-1}]^T, C=[0,...,0,1].
  • Both forms give the same transfer function and same poles.
  • CCF is used for pole placement design. OCF is used for observer design.
  • A_OCF = A_CCF^T, B_OCF = C_CCF^T, C_OCF = B_CCF^T.
  • Common trap: putting denominator coefficients without the negative sign. Always negate when filling last row of A in CCF.
  • D = 0 only if deg(numerator) < deg(denominator). Otherwise extract D by long division first.

Canonical Form Derivation

Test your ability to derive controllable and observable canonical state space forms from transfer functions.

Question 1 of 3

Q1.For G(s) = (2s + 3)/(s^2 + 4s + 5), what is the A matrix in the controllable canonical form?