文档

stepz

数字滤波器的阶跃响应

语法

[h,t] = stepz(b,a)
[h,t] = stepz(so)
[h,t] = stepz(d)
[h,t] = stepz(…,n)
[h,t] = stepz(…,n,fs)
stepz(…)

描述

[h,t] = stepz(b,a)返回带有分子系数的滤波器的阶跃响应,b,分母系数,一个stepz选择样本的数量,并在列向量中返回响应h在列向量上的采样次数t(T = [0:n-1]',n=长度(t)是自动计算的)。

[h,t] = stepz(so)返回二阶截面矩阵的阶跃响应,紧急求救信号紧急求救信号是一个K-by-6矩阵,其中节数,K,必须大于或等于2。如果节数小于2,stepz认为输入是分子向量,b。每行紧急求救信号对应于二阶(双四)滤波器的系数。的第一行紧急求救信号矩阵对应于[bi(1) bi(2) bi(3) ai(1) ai(2) ai(3)]

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

[h,t] = stepz(…,n)计算n为整数时阶跃响应的前n个样本(t=(0: n - 1)”)。如果n是一个整数向量,阶跃响应仅在以0表示时间原点的整数值处计算。

[h,t] = stepz(…,n,fs)计算n个样本并产生一个向量t的长度n这样样本是间隔的1 / fs单位分开。fs假设以Hz为单位。

stepz(…)在没有输出参数的情况下,绘制过滤器的阶跃响应。如果输入滤波器系数或二阶截面矩阵,则使用当前图形窗口。如果你输入adigitalFilter时,阶跃响应显示在FVTool

请注意

如果输入stepz在单精度情况下,采用单精度算法计算阶跃响应。输出,h,为单精度。

例子

全部折叠

创建一个标准化半功率频率的三阶巴特沃斯滤波器 0 4 π rad /样品。显示其阶跃响应。

[b,a] =黄油(3,0.4);stepz网格(b, a)

使用创建一个相同的过滤器designfilt并显示其阶跃响应fvtool

D = designfilt(“lowpassiir”“FilterOrder”3,“HalfPowerFrequency”, 0.4);stepz (d)

设计了一种归一化通带频率的四阶低通椭圆滤波器 0 4 π rad /样品。指定通带纹波为0.5 dB,阻带衰减为20 dB。绘制滤波器阶跃响应的前50个样本。

[b,a] = ellip(4,0.5,20,0.4);stepz (b, a, 50)网格

使用创建相同的过滤器designfilt并显示其阶跃响应fvtool

D = designfilt(“lowpassiir”“FilterOrder”4“PassbandFrequency”, 0.4,“PassbandRipple”, 0.5,“StopbandAttenuation”, 20岁,“DesignMethod”“ellip”);stepz (d, 50)

算法

stepz过滤长度n步进序列使用

过滤器(b, a, (1, n))

阀杆

来计算n在自动长度的情况下,stepz要么使用N =长度(b)对于FIR的情况或首先找到极点使用P = roots(a),如果长度(一个)大于1

如果过滤器不稳定,n被选为从最大极点出发的项到达的点106乘以它的原始值。

如果过滤器是稳定的,n被选为最大振幅极点的项所在的点5 × 105它的原始振幅。

如果滤波器是振荡的(只在单位圆上的极点),stepz计算最慢振荡的五个周期。

如果滤波器既有振荡项又有阻尼项,n是等于最慢振荡的五个周期还是等于最大非单位振幅极点的项所在的点5 × 105乘以原始振幅,取较大的值。

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

R2006a之前介绍