主要内容

hann

汉宁窗

说明

w = hann(L) 返回一个长度为 L 个点的对称汉宁窗。

示例

w = hann(L,sflag) 使用 sflag 所指定的窗采样返回汉宁窗。

w = hann(___,typeName) 指定以单精度或双精度返回窗 w 的选项。

示例

全部折叠

创建一个长度为 64 个点的汉宁窗。使用 wvtool 显示结果。

L = 64;
wvtool(hann(L))

Figure Window Visualization Tool contains 2 axes objects and other objects of type uimenu, uitoolbar, uipanel. Axes object 1 with title Time domain, xlabel Samples, ylabel Amplitude contains an object of type line. Axes object 2 with title Frequency domain, xlabel Normalized Frequency (\times\pi rad/sample), ylabel Magnitude (dB) contains an object of type line.

输入参数

全部折叠

窗长度,指定为正整数。

注意

如果将 L 指定为非整数,该函数会将其舍入为最接近的整数值。

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

窗采样方法,指定为:

  • "symmetric" - 在使用窗进行滤波器设计时使用此选项。

  • "periodic" - 在使用窗进行频谱分析时使用此选项。指定 "periodic" 时,hann 计算长度为 L +1 的窗,并返回前 L 个点。缺失端点是序列的周期性扩展的下一个周期的起点。因此,序列满足离散傅里叶变换的周期性假设。

数据类型: char | string

自 R2024b 起

输出数据类型(类),指定为以下类型之一:

  • "double" - 使用此选项返回双精度输出 w

  • "single" - 使用此选项返回单精度输出 w

数据类型: char | string

输出参量

全部折叠

汉宁窗,以列向量形式返回。

算法

以下方程可生成汉宁窗的系数:

w(n)=0.5(1cos(2πnN)),0nN.

窗长度 L = N + 1。

参考

[1] Oppenheim, Alan V., Ronald W. Schafer, and John R. Buck. Discrete-Time Signal Processing. Upper Saddle River, NJ: Prentice Hall, 1999.

扩展功能

全部展开

C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。

GPU 代码生成
使用 GPU Coder™ 为 NVIDIA® GPU 生成 CUDA® 代码。

版本历史记录

在 R2006a 之前推出

全部展开

另请参阅

App

函数