sos2zp

Convert digital filter second-order section parameters to zero-pole-gain form

Syntax

[z,p,k] = sos2zp(sos)
[z,p,k] = sos2zp(sos,g)

Description

sos2zp converts a second-order section representation of a given digital filter to an equivalent zero-pole-gain representation.

[z,p,k] = sos2zp(sos) returns the zeros z, poles p, and gain k of the system given by sos in second-order section form. The second-order section format of H(z) is given by

H(z)=k=1LHk(z)=k=1Lb0k+b1kz1+b2kz21+a1kz1+a2kz2.

sos is an L-by-6 matrix that contains the coefficients of each second-order section in its rows.

sos=[b01b11b211a11a21b02b12b221a12a22b0Lb1Lb2L1a1La2L].

Column vectors z and p contain the zeros and poles of the transfer function H(z).

H(z)=k(zz1)(zz2)(zzn)(pp1)(pp2)(ppm)

where the orders n and m are determined by the matrix sos.

[z,p,k] = sos2zp(sos,g) returns the zeros z, poles p, and gain k of the system given by sos in second-order section form with gain g.

H(z)=gk=1LHk(z).

Examples

expand all

Zeros, Poles, and Gain of a System

Compute the zeros, poles, and gain of a simple system in second-order section form.

sos = [1  1  1  1  0 -1; -2  3  1  1  10  1];
[z,p,k] = sos2zp(sos)
z =

  -0.5000 + 0.8660i
  -0.5000 - 0.8660i
   1.7808 + 0.0000i
  -0.2808 + 0.0000i


p =

   -1.0000
    1.0000
   -9.8990
   -0.1010


k =

    -2

More About

expand all

Algorithms

sos2zp finds the poles and zeros of each second-order section by repeatedly calling tf2zp.

See Also

| | | | |

Was this topic helpful?