Main Content

tf2zp

Convert transfer function filter parameters to zero-pole-gain form

Description

[z,p,k] = tf2zp(b,a) finds the matrix of zeros z, the vector of poles p, and the associated vector of gains k from the transfer function parameters b and a. The function converts a polynomial transfer-function representation

H(s)=B(s)A(s)=b1sn1++bn1s+bna1sm1++am1s+am

of a single-input/multi-output (SIMO) continuous-time system to a factored transfer function form

H(s)=Z(s)P(s)=k(sz1)(sz2)(szm)(sp1)(sp2)(spn).

Note

Use tf2zp when working with positive powers (s2 + s + 1), such as in continuous-time transfer functions. A similar function, tf2zpk, is more useful when working with transfer functions expressed in inverse powers (1 + z–1 + z–2).

example

Examples

collapse all

Generate a system with the following transfer function.

H(s)=2s2+3ss2+12s+14=2(s-0)(s-(-32))(s--122(1-j))(s--122(1+j))

Find the zeros, poles, and gain of the system. Use eqtflength to ensure the numerator and denominator have the same length.

b = [2 3];
a = [1 1/sqrt(2) 1/4];

[b,a] = eqtflength(b,a);
[z,p,k] = tf2zp(b,a)
z = 2×1

         0
   -1.5000

p = 2×1 complex

  -0.3536 + 0.3536i
  -0.3536 - 0.3536i

k = 
2

Plot the poles and zeros to verify that they are in the expected locations.

zplane(b,a)
text(real(z)+0.1,imag(z),"Zero")
text(real(p)+0.1,imag(p),"Pole")

Figure contains an axes object. The axes object with title Pole-Zero Plot, xlabel Real Part, ylabel Imaginary Part contains 7 objects of type line, text. One or more of the lines displays its values using only markers

Input Arguments

collapse all

Transfer function numerator coefficients, specified as a vector or matrix. If b is a matrix, then each row of b corresponds to an output of the system. b contains the coefficients in descending powers of s. The number of columns of b must be less than or equal to the length of a.

Data Types: single | double

Transfer function denominator coefficients, specified as a vector. a contains the coefficients in descending powers of s.

Data Types: single | double

Output Arguments

collapse all

Zeros of the system, returned as a matrix. z contains the numerator zeros in its columns. z has as many columns as there are outputs.

Poles of the system, returned as a column vector. p contains the pole locations of the denominator coefficients of the transfer function.

Gains of the system, returned as a column vector. k contains the gains for each numerator transfer function.

Extended Capabilities

Version History

Introduced before R2006a

See Also

| | | | |