主要内容

impz

数字滤波器的脉冲响应

描述

例子

(h,t] = IMMZ(b,一个)用分子系数返回数字滤波器的脉冲响应b和分母系数一个。函数选择样本数并返回响应系数h样本乘以t

(h,t] = IMMZ(SOS.)返回由二阶分段矩阵指定的滤波器的脉冲响应SOS.

例子

(h,t] = IMMZ(d)返回数字滤波器的脉冲响应d。使用designfilt生成d基于频率响应规范。

例子

(h,t] = IMMZ(___,n)指定要计算的脉冲响应样本。您可以使用前面的任何语法指定过滤器。

例子

(h,t] = IMMZ(___,n,fs)返回一个向量t随着连续的样本间隔开1 /fs单位分开。

例子

impz (___)没有输出参数绘制过滤器的脉冲响应。

例子

全部收缩

设计一个归一化通带频率0.4 rad/采样的四阶低通椭圆滤波器。指定通带纹波为0.5 dB,阻带衰减为20 dB。绘制脉冲响应的前50个样本。

[B,a] =椭圆(4,0.5,20,0.4);IMMZ(B,A,50)

图中包含一个轴。标题为“脉冲响应”的轴包含一个类型为干的对象。

使用相同的滤波器使用designfilt。绘制其脉冲响应的前50个样本。

d = designfilt('洛链',“DesignMethod”,'椭圆',“FilterOrder”,4,'Passband职业',0.4,“PassbandRipple”,0.5,'stopbandattenuation', 20);impz (d, 50)

图形过滤器可视化工具-脉冲响应包含一个轴和其他类型的uittoolbar, uimenu对象。标题为“脉冲响应”的轴包含一个类型为干的对象。

设计了一个18阶的FIR高通滤波器 β = 4 。指定100 Hz的采样率和30 Hz的截止频率。显示过滤器的脉冲响应。

B = FIR1(18,30 /(100/2),“高”kaiser (4));impz (b 1 [], 100)

图中包含一个轴。标题为“脉冲响应”的轴包含一个类型为干的对象。

使用相同的滤波器使用designfilt并绘制其脉冲响应。

d = designfilt('highpassfir',“FilterOrder”,18,“SampleRate”, 100,“CutoffFrequency”,30,“窗口”,{'kaiser'4});impz (d, [], 100)

图形过滤器可视化工具-脉冲响应包含一个轴和其他类型的uittoolbar, uimenu对象。标题为“脉冲响应”的轴包含一个类型为干的对象。

输入参数

全部收缩

传递函数系数,指定为向量。用表示传递函数b一个作为

H ( e j ω. ) = B ( e j ω. ) 一个 ( e j ω. ) = b (1) + b (2) e j ω. + b (3) e j 2 ω. + + b(米) e j ( 1 ) ω. (1) + (2) e j ω. + (3) e j 2 ω. + + 一个) e j ( N 1 ) ω.

例子:B = [1 3 3 1]/6A = [3 0 1 0]/3指定三阶Butterworth滤波器,具有归一化的3 dB频率0.5πrad /样品。

数据类型:双倍的|
复数的支持:万博1manbetx是的

二阶截面系数,用矩阵表示。SOS.是一个K- × 6矩阵,其中的分段数,K,必须大于或等于2。如果分段数小于2,则函数将输入作为分子向量。每一行的SOS.对应于二阶(双四分量)滤波器的系数。的Th行SOS.对应于[bi(1) bi(2) bi(3) ai(1) ai(2) ai(3)]

例子:S = [2 4 2 6 0 2;3 3 0 6 0 0]指定归一化3 dB频率0.5π rad/采样的三阶巴特沃斯滤波器。

数据类型:双倍的|
复数的支持:万博1manbetx是的

数字滤波器,指定为adigitalFilter目的。使用designfilt生成数字基于频率响应规范的滤波器。

例子:d = designfilt(“lowpassiir”、“FilterOrder”、3、“HalfPowerFrequency”,0.5)指定归一化3 dB频率0.5π rad/采样的三阶巴特沃斯滤波器。

示例数字,指定为正整数,非负整数的向量或空向量。

  • 如果n为正整数,impz计算第一n脉冲响应和返回的样本t作为(0:n-1)'

  • 如果n是一个非负整数的向量,impz计算在矢量中指定位置的脉冲响应。

  • 如果n是一个空向量,impz自动计算样本数量。看算法想要查询更多的信息。

例子:Impz ([2 4 2 6 0 2;3 3 0 6 0 0],5)计算Butterworth滤波器的脉冲响应的前五个样本。

例子:IMMZ([2 4 2 6 0 2; 3 3 0 6 0 0],[0 3 2 1 4 5])计算Butterworth滤波器的脉冲响应的前六个样本。

例子:Impz ([2 4 2 6 0 2;3 3 0 6 0 0],[],5e3)计算巴特沃斯滤波器的脉冲响应,该滤波器设计用于过滤在5khz采样的信号。

采样率,指定为一个正标量。当时间的单位是秒时,fs用赫兹表示。

数据类型:双倍的

输出参数

全部收缩

脉冲响应系数,作为列向量返回。

样本时间,作为列向量返回。

算法

impz过滤一个长度 -n使用脉冲序列

过滤器(B,A,[1零(1,N-1)])

然后用阀杆

请注意

如果输入impz是单精度,该函数使用单精度算法计算脉冲响应并返回单精度输出。

什么时候impz计算n自动,算法取决于过滤器的属性:

  • 冷杉过滤器 -nb

  • IIR过滤器 -impz首先使用使用的传递函数的极点

    • 如果过滤器不稳定,n是从最大的极点到达的点106次的原始价值。

    • 如果过滤器稳定,n被选为从最大幅度杆的术语是5×105乘以它的原始振幅。

    • 如果过滤器仅在单位圈上有磁极振荡,impz计算最慢振荡的五个时段。

    • 如果滤波器既有振荡项又有阻尼项,n是最慢的振荡的五个时期,或者由于最大杆的术语是的5×105乘以它的原始振幅。

impz也允许分子多项式中的延迟。延迟的数量被纳入到样本数量的计算中。

扩展功能

另请参阅

||||(控制系统工具箱)

在R2006A之前介绍