State Space to Transfer Function

Quick Answer

To convert a state-space model ẋ = Ax + Bu, y = Cx + Du to a transfer function: H(s) = C(sI − A)⁻¹B + D, where I is the identity matrix. This formula takes the Laplace transform of the state equations, solves for X(s), and substitutes into the output equation. The reverse conversion (transfer function to state-space) produces one of many possible realizations: controllable canonical form, observable canonical form, diagonal form, or Jordan form. MATLAB: tf(ss(A,B,C,D)) converts state-space to transfer function. Compute transfer functions at www.lapcalc.com.

State Space to Transfer Function: The Formula

The state-space model ẋ = Ax + Bu, y = Cx + Du describes a system using matrices A (system/state), B (input), C (output), and D (feedthrough). To derive the transfer function, take the Laplace transform (assuming zero initial conditions): sX(s) = AX(s) + BU(s). Solve for X(s): (sI − A)X(s) = BU(s), giving X(s) = (sI − A)⁻¹BU(s). Substitute into the output equation: Y(s) = CX(s) + DU(s) = [C(sI − A)⁻¹B + D]U(s). Therefore: H(s) = Y(s)/U(s) = C(sI − A)⁻¹B + D. This is the fundamental formula connecting state-space and transfer function representations. The characteristic polynomial det(sI − A) gives the denominator of H(s). The computation involves matrix inversion and is automated in MATLAB and at www.lapcalc.com.

Key Formulas

State Space to Transfer Function: Step-by-Step Example

Example: A = [0 1; −2 −3], B = [0; 1], C = [1 0], D = [0]. Step 1: compute sI − A = [s −1; 2 s+3]. Step 2: compute det(sI − A) = s(s+3) + 2 = s² + 3s + 2. Step 3: compute (sI − A)⁻¹ = (1/det)[s+3 1; −2 s]. Step 4: multiply C·(sI − A)⁻¹·B: [1 0]·(1/(s²+3s+2))·[s+3 1; −2 s]·[0; 1] = [1 0]·(1/(s²+3s+2))·[1; s] = 1/(s²+3s+2). Step 5: add D = 0. Result: H(s) = 1/(s²+3s+2) = 1/[(s+1)(s+2)]. The poles are at s = −1 and s = −2 (eigenvalues of A), confirming that det(sI−A) = 0 gives the same poles. This second-order system has DC gain H(0) = 1/2 = 0.5.

Compute state space to transfer function Instantly

Get step-by-step solutions with AI-powered explanations. Free for basic computations.

Open Calculator

Transfer Function to State Space: Canonical Forms

The reverse conversion has infinitely many solutions because different state variable choices produce different (A,B,C,D) matrices with the same transfer function. Standard forms include: Controllable canonical form: for H(s) = (b₁s+b₀)/(s²+a₁s+a₀), A = [0 1; −a₀ −a₁], B = [0; 1], C = [b₀ b₁], D = [0]. Observable canonical form: A = [0 −a₀; 1 −a₁], B = [b₀; b₁], C = [0 1], D = [0]. Diagonal form: if eigenvalues are distinct (λ₁, λ₂), A = diag(λ₁, λ₂), with B and C determined by partial fraction residues. Jordan form: for repeated eigenvalues with Jordan blocks. MATLAB: [A,B,C,D] = tf2ss(num,den) gives controllable canonical form. These realizations have identical input-output behavior but different internal state structures.

State Space Representation of Transfer Function: MIMO

For MIMO (multi-input multi-output) systems, the state-space to transfer function conversion produces a transfer function matrix: H(s) = C(sI − A)⁻¹B + D, where H(s) is a p×m matrix (p outputs, m inputs). Each element H_ij(s) is the transfer function from input j to output i. The denominator polynomial is common: det(sI − A) appears in all entries (though cancellations may occur). MIMO transfer functions are cumbersome — a 3-input, 3-output system requires 9 transfer functions — which is why state-space is the preferred representation for MIMO systems. The conversion is automated: MATLAB tf(ss(A,B,C,D)) handles any dimensions. State-space also captures internal dynamics (uncontrollable/unobservable modes) that transfer functions miss due to pole-zero cancellation.

When to Use State-Space vs Transfer Functions

Transfer functions are preferred for: SISO system analysis and design, frequency-domain methods (Bode, Nyquist), classical controller design (PID, lead-lag), and intuitive understanding of poles, zeros, and gain. State-space is preferred for: MIMO systems (multiple inputs/outputs), modern control design (pole placement, LQR, LQG), simulation of systems with initial conditions, handling of internal dynamics and system order, computer-aided design (MATLAB, Simulink), and nonlinear system linearization. Both representations contain the same input-output information for SISO systems — they are connected by H(s) = C(sI−A)⁻¹B + D. The choice is a matter of convenience and the design method being used. The LAPLACE Calculator at www.lapcalc.com computes transfer functions that can be converted to state-space using the canonical form formulas.

Related Topics in transfer function concepts

Understanding state space to transfer function connects to several related concepts: state space representation of transfer function, and tf to state space. Each builds on the mathematical foundations covered in this guide.

Frequently Asked Questions

Apply H(s) = C(sI−A)⁻¹B + D. Steps: compute (sI−A), find its inverse using adjugate/determinant, multiply C·(sI−A)⁻¹·B, and add D. The denominator is det(sI−A) = characteristic polynomial. MATLAB: [num,den] = ss2tf(A,B,C,D) or tf(ss(A,B,C,D)).

Master Your Engineering Math

Join thousands of students and engineers using LAPLACE Calculator for instant, step-by-step solutions.

Start Calculating Free →

Related Topics