Main Content


Converts rffilter to zero-pole-gain representation

Since R2019b



[z,p,k] = zpk(filter) returns zero-pole-gain representation of S-parameters, Sij contained in z{i,j}, p, and k{i,j} of the filter. This method only works for the 'Transfer function' implementation of rffilter object.


collapse all

Generate the zpk of a high-pass fourth-order Chebyshev filter for cut-off frequency of 1 rad/sec.

Create the rffilter object.

filtobj = rffilter('FilterType',"Chebyshev",'ResponseType','Highpass', ...
    'FilterOrder',4,'Implementation',"Transfer function",               ...

Use zpk function to generate the zeroes, poles, and gain.

[zeros,poles,gain] = zpk(filtobj);
ans = 4×1 complex

   0.0000 + 1.0824i
   0.0000 - 1.0824i
   0.0000 + 2.6131i
   0.0000 - 2.6131i

poles = 4×1 complex

  -0.0941 + 1.0482i
  -0.0941 - 1.0482i
  -1.0482 + 2.0022i
  -1.0482 - 2.0022i

ans = 0.1250

Input Arguments

collapse all

RF filter, specified as an rffilter object.

Output Arguments

collapse all

Zeroes of the filter, returned as a 2-by-2 cell array. Each cell contains zeros corresponding to its S-parameter.

Poles of the filter, returned as a 1-D array of doubles or a 2-D array of doubles.

Gain of the filter, returned as a 2-by-2 cell array. k{i,j} corresponds to the gain of the Sij S-parameter.

Version History

Introduced in R2019b

See Also