主要内容

zpk

离散时间滤波器 System object 的零极点增益转换

说明

[z,p,k] = zpk(sysobj) 分别在向量 z、向量 p 和标量 k 中返回对应于滤波器 System object™ 的零点、极点和增益。

示例

[z,p,k] = zpk(sysobj,Arithmetic=arithType) 根据 arithType 中指定的算术分析滤波器 System object。

有关更多输入选项,请参阅 Signal Processing Toolbox™ 中的 zpk

示例

全部折叠

使用 zpk 函数计算高通滤波器的零极点增益形式。

设计一个通带频率为 75 kHz、通带波纹为 0.2 dB 的最小阶高通 FIR 滤波器。指定采样率为 200 kHz。

hFilt = dsp.HighpassFilter(PassbandFrequency=75e3,...
    PassbandRipple=0.2,SampleRate=200e3)
hFilt = 
  dsp.HighpassFilter with properties:

               FilterType: 'FIR'
    DesignForMinimumOrder: true
        StopbandFrequency: 8000
        PassbandFrequency: 75000
      StopbandAttenuation: 80
           PassbandRipple: 0.2000
      NormalizedFrequency: false
               SampleRate: 200000

  Show all properties

使用 zpk 函数找到所设计滤波器的零点、极点和增益。

[z,p,k] = zpk(hFilt)
z = 8×1 complex

  24.6347 + 0.0000i
  -3.0983 + 0.0000i
   0.9732 + 0.2300i
   0.9732 - 0.2300i
   0.9954 + 0.0956i
   0.9954 - 0.0956i
  -0.3228 + 0.0000i
   0.0406 + 0.0000i

p = 8×1

     0
     0
     0
     0
     0
     0
     0
     0

k = 
-0.0017

输入参数

全部折叠

滤波器分析中使用的算术,指定为 'double''single''Fixed'。当未指定算术输入且滤波器 System object 未锁定时,分析工具假定为双精度滤波器。当未指定算术输入且 System object 锁定时,该函数基于锁定输入的数据类型执行分析。

'Fixed' 值仅适用于具有定点属性的滤波器 System object。

'Arithmetic' 输入参量指定为 'Fixed' 且滤波器对象的系数数据类型设置为 'Same word length as input' 时,算术分析取决于 System object 是未锁定还是锁定。

  • 未锁定 - 分析对象函数无法确定系数数据类型。该函数假定系数数据类型为有符号,具有 16 位字长,并且是自动定标的。该函数基于此假设执行定点分析。

  • 锁定 - 当输入数据类型为 'double''single' 时,分析对象函数无法确定系数数据类型。该函数假定系数的数据类型为有符号,具有 16 位字长,并且是自动定标的。该函数基于此假设执行定点分析。

要检查 System object 是锁定还是未锁定,请使用 isLocked 函数。

当算术输入指定为 'Fixed' 且滤波器对象的系数数据类型设置为自定义数值类型时,对象函数基于自定义数值数据类型执行定点分析。

输出参量

全部折叠

滤波器的零点,以列向量形式返回。

数据类型: double
复数支持:

滤波器的极点,以列向量形式返回。

数据类型: double
复数支持:

滤波器的增益,以实数标量形式返回。

数据类型: double

版本历史记录

在 R2011a 中推出

全部展开