主要内容

freqz

离散时间滤波器 System object 的频率响应

说明

[h,w] = freqz(sysobj) 返回滤波器 System object™ sysobj 的复频率响应 h。向量 w 包含函数计算频率响应时的频率(以弧度/采样为单位)。频率响应在单位圆的上半部分周围等间隔的 8192 个点处计算。

[h,w] = freqz(sysobj,n) 返回滤波器 System object 的复频率响应以及在单位圆的上半部分周围等间隔的 n 个点处的对应频率。

freqz 使用与滤波器相关联的传递函数并使用当前系数值来计算滤波器的频率响应。

[h,w] = freqz(sysobj,Arithmetic=arithType) 基于 arithType 中指定的算术,使用上述任一语法分析滤波器 System object。

freqz(sysobj) 绘制滤波器对象的频率响应的幅值和展开相位。

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

示例

示例

全部折叠

此示例使用 freqz 绘制低通 FIR 滤波器的频率响应。

b = designLowpassFIR(FilterOrder=80,CutoffFrequency=0.5,Window="custom",CustomWindow=kaiser(81,8));
firFilt = dsp.FIRFilter(Numerator=b);
freqz(firFilt);

Figure contains 2 axes objects. Axes object 1 with title Phase, xlabel Normalized Frequency (\times\pi rad/sample), ylabel Phase (degrees) contains an object of type line. Axes object 2 with title Magnitude, xlabel Normalized Frequency (\times\pi rad/sample), ylabel Magnitude (dB) contains an object of type line.

输入参数

全部折叠

计算频率响应的点数。对于 n 是 2 的幂的 FIR 滤波器,使用 FFT 可以更快地完成计算。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

滤波器分析中使用的算术,指定为 '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' 且滤波器对象的系数数据类型设置为自定义数值类型时,对象函数基于自定义数值数据类型执行定点分析。

输出参量

全部折叠

复数 n 元素频率响应向量。如果未指定 n,函数使用默认值 8192。频率响应在单位圆的上半部分周围等间隔的 n 个点处计算。

数据类型: double
复数支持:

长度为 n 的频率向量,以弧度/采样为单位。w 由单位圆的上半部分(从 0 到 π 弧度/采样)周围等间隔的 n 个点组成。如果未指定 n,函数使用默认值 8192。

数据类型: double

提示

有多种方法可以分析滤波器的频率响应。freqz 考虑滤波器系数中的量化效应,但不考虑滤波算术中的量化效应。要了解滤波算术中的量化效应,请参考函数 noisepsd

算法

freqz 根据滤波器传递函数 Hq(z) 计算滤波器的频率响应。复数值频率响应通过在您使用的语法指定的离散 w 值处计算 Hq(ejω) 得到。整数输入参量 n 确定 freqz 计算频率响应的单位圆的上半部分周围等间隔点的数量。当您不提供采样频率作为输入参量时,频率范围为 0 到 π 弧度/采样。当您将标量采样频率 fs 作为输入参量提供给 freqz 时,频率范围为 0 到 fs/2 Hz。

版本历史记录

在 R2011a 中推出

全部展开