grpdelay
平均滤波器延迟(群延迟)。
库::`工程师`
语法
函数调用
* [参数:gd],[参数:w_out]=grpdelay(<参数:sos>>,<参数:n>>) -回报 [参数:n]-二阶段矩阵对应的群延迟时间的点特征 [参数:sos].
* [参数:gd],[参数:f_out]=grpdelay(___,[参数:n],[参数:fs]) -返回群延迟时间的特性向量 [参数:gd] 和物理频率的对应向量 [参数:f_out] 用于设计用于过滤以频率采样的信号的数字滤波器 [参数:fs].
* grpdelay(___,<参数:out>=:情节) -绘制滤波器的群延迟时间的特性。
争论
输入参数
# *n*是 用于评估特性的频率点的数量
+
512 (默认情况下)| 一个正整数
Details
特性进行评价的频率点的个数,设定为至少正整数 2. 如果论点是 n 未指定,默认值为 512. 为获得最佳结果,请设置参数 n 超过筛选顺序的值。
# *B,A*是 级联传递函数的系数
+
标量,标量 | 向量资料 | 矩阵
Details
级联传递函数的系数,指定为标量、矢量或矩阵。 在矩阵中 B 和 A 分别列出了级联传递函数的分子和分母的系数。
矩阵 B 必须有一个大小 上 ,和矩阵 A — 上 ,在哪里
* -过滤器部分的数量; * -过滤器的分子的顺序; * -过滤器分母的顺序。
有关级联传递函数格式和系数矩阵的详细信息,请参阅以CTF格式设置数字滤波器。
如果矩阵的任何元素 A[:,1] 不等于 1,则函数 *grpdelay* 通过归一化滤波器系数 A[:,1]. 在这种情况下 A[:,1] 它必须是非零。
|
| 数据类型 |
|
# *sos* — 二阶段的系数
+
矩阵
Details
二阶段的系数,指定为矩阵。 论点 sos —这是一个大小矩阵 上 ,节数在哪里 必须大于或等于 2. 如果节数较少 2,该函数将输入数据处理为数值器的向量。 每行 sos 对应于二阶滤波器(biquadrate filter)的系数; -我是一根绳子 sos 回应 繝ウ繝舌シ縺ォ縺、縺縺ヲ縺ッ縺薙■繧峨r縺碑ヲァ縺上□縺辅>缧.
| 数据类型 |
|
#
*财政司司长* —
抽样调查
费率+
标量,标量
Details
的采样率,设置为正标量。 如果时间单位是秒,则 财政司司长 以Hz表示。
| 数据类型 |
|
例子:
巴特沃斯滤波器群延迟
Details
让我们设计一个具有归一化的6阶巴特沃斯滤波器 3 dB频率 rad/倒计时。 使用函数 *grpdelay* 来显示群延迟。
import EngeeDSP.Functions: butter, zp2sos, grpdelay
z, p, k = butter(6, 0.2, out = 3)
sos = zp2sos(z, p, k)
grpdelay(sos, 128, out = :plot)

我们将在一个图形上显示系统的群延迟和相位延迟。
import EngeeDSP.Functions: freqz, unwrap
gd = grpdelay(sos, 512)
h, w = freqz(sos, 512)
pd = -unwrap(angle(h))./w
plot(w/π, real.(gd[1]), label = "Group delay",
xlabel = "Normalized Frequency (×π rad/sample)",
ylabel = "Group and phase delays")
plot!(w/π, pd, label = "Phase delay")
此外
以CTF格式设置数字滤波器
Details
过滤器的影响
形式设置系数时 -小写矩阵
假设滤波器被设置为
哪里
*如果
*如果
*如果
|
*要将二阶截面矩阵转换为级联传递函数,请使用该函数 |
效应和放大
如果有一个共同的尺度增益或几个尺度增益因子在滤波器系数的值之外,则可以将系数和增益指定为元组。 (B,A,g). 在使用定点算术时,缩放滤波器部分尤其重要,以确保每个滤波器部分的输出信号具有相似的幅度水平,这有助于避免由于计算精度有限而导致滤波器频率响应的不准确性。
增益可以是标量总增益或区段增益系数的向量。
*如果增益是标量的,则其值均匀地应用于级联滤波器的所有部分。
*如果增益因子是矢量,则它必须包含比滤波器节数多一个元素。
如果将滤波器系数矩阵和增益系数向量指定为
假设滤波器系统的传递函数具有形式