| Products & Services | Solutions | Academia | Support | User Community | Company |
| Download Product Updates | | | Get Pricing | | | Trial Software |
| Documentation → Signal Processing Toolbox |
| Contents | Index |
| Learn more about Signal Processing Toolbox |
[A,B,C,D] = sos2ss(sos)
[A,B,C,D] = sos2ss(sos,g)
sos2ss converts a second-order section representation of a given digital filter to an equivalent state-space representation.
[A,B,C,D] = sos2ss(sos) converts the system sos, in second-order section form, to a single-input, single-output state-space representation.
![]()
The discrete transfer function in second-order section form is given by
![]()
sos is a L-by-6 matrix organized as

The entries of sos must be real for proper conversion to state space. The returned matrix A is size N-by-N, where N = 2L-1, B is a length N-1 column vector, C is a length N-1 row vector, and D is a scalar.
[A,B,C,D] = sos2ss(sos,g) converts the system sos in second-order section form with gain g.
![]()
Compute the state-space representation of a simple second-order section system with a gain of 2:
sos = [1 1 1 1 0 -1; -2 3 1 1 10 1];
[A,B,C,D] = sos2ss(sos)
A =
-10 0 10 1
1 0 0 0
0 1 0 0
0 0 1 0
B =
1
0
0
0
C =
21 2 -16 -1
D =
-2
sos2ss first converts from second-order sections to transfer function using sos2tf, and then from transfer function to state-space using tf2ss.
sos2tf, sos2zp, ss2sos, tf2ss, zp2ss
![]() | sos2cell | sos2tf | ![]() |

Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.
| © 1984-2009- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |