You are here : matlabSignal Processingss2sos

ss2sos() - Signal Processing

ss2sos converts a state-space representation
of a given digital filter to an equivalent second-order section representation.[sos,g] = ss2sos(A,B,C,D) finds
a matrix sos in second-order section form with
gain g that is equivalent to the state-space system
represented by input arguments A, B, C,
and D. The input system must be single output and
real. sos is an L-by-6 matrixsos=[b01b11b211a11a21b02b12b221a12a22⋮⋮⋮⋮⋮⋮b0Lb1Lb2L1a1La2L]whose rows contain the numerator and denominator coefficients bik and aik of
the second-order sections of H(z).H(z)=g∏k=1LHk(z)=g∏k=1Lb0k+b1kz−1+b2kz−21+a1kz−1+a2kz−2[sos,g] = ss2sos(A,B,C,D,iu) specifies
a scalar iu that determines which input of the
state-space system A, B, C, D is
used in the conversion. The default for iu is 1. [sos,g] = ss2sos(A,B,C,D,'order') and [sos,g] = ss2sos(A,B,C,D,iu,'order') specify
the order of the rows in sos, where 'order' is'down', to order the sections so
the first row of sos contains the poles closest
to the unit circle'up', to order the sections so
the first row of sos contains the poles farthest
from the unit circle (default)The zeros are always paired with the poles closest to them.[sos,g] = ss2sos(A,B,C,D,iu,'order','scale') specifies
the desired scaling of the gain and the numerator coefficients of
all second-order sections, where 'scale' is'none', to apply no scaling (default)'inf', to apply infinity-norm scaling'two', to apply 2-norm scalingUsing infinity-norm scaling in conjunction with up-ordering
minimizes the probability of overflow in the realization. Using 2-norm
scaling in conjunction with down-ordering minimizes
the peak round-off noise.Note  


Infinity-norm and 2-norm scaling are appropriate only for direct-form II implementations.sos = ss2sos(...) embeds
the overall system gain, g, in the first section, H1(z),
so that H(z)=∏k=1LHk(z)Note  


Embedding the gain in the first section when scaling a direct-form
II structure is not recommended and may result in erratic scaling.
To avoid embedding the gain, use ss2sos with
two outputs.


Syntax

[sos,g] = ss2sos(A,B,C,D)[sos,g] = ss2sos(A,B,C,D,iu)[sos,g] = ss2sos(A,B,C,D,'order')[sos,g] = ss2sos(A,B,C,D,iu,'order')[sos,g] = ss2sos(A,B,C,D,iu,'order','scale')sos = ss2sos(...)


Example

State-space system must have only one input.


Output / Return Value


Limitations


Alternatives / See Also


Reference