Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

✍️ 何星辰、田冬冬、姚家园📅 2025-11-07⏱️ 20 分钟


波形尖灭是指在信号首尾施加平滑衰减窗函数,使振幅在两端平滑过渡至零,从而减少因信号截断引起的频谱泄漏。

设原始信号为 x(j)x(j)、窗函数为 w(j)w(j),则尖灭后的信号可表示为:

x′(j)=w(j)∗x(j),x'(j) = w(j)*x(j),

其中 w(j)w(j) 在信号首尾逐渐从 0 过渡到 1,并在中间区域保持为 1,实现波形的尖灭。

下图比较了两种常用的尖灭窗:余弦窗 (cosine) 与 Hanning 窗 (hann)。本示例中,两端各 5% 长度用于平滑渐入/渐出,中间部分保持幅度 1。

Source
<Figure size 900x400 with 1 Axes>

我们以前一节使用的 2022 年 9 月 22 日墨西哥 Mw 6.8 地震在 ANMO 台站的波形为例。

/home/runner/micromamba/envs/seismo-learn/lib/python3.14/site-packages/obspy/clients/fdsn/client.py:257: ObsPyDeprecationWarning: IRIS is now EarthScope, please consider changing the FDSN client short URL to 'EARTHSCOPE'.
  warnings.warn(msg, ObsPyDeprecationWarning)
<Figure size 800x250 with 1 Axes>

进行尖灭处理之前,通常先进行去均值、去线性趋势。

波形尖灭可使用 ObsPy 的 obspy.core.trace.Trace.taper 实现。

在实际数据处理中,常使用 5% 的 Hanning 窗(taper 中的 type 参数默认即为 hann)。 本例中为了使尖灭的效果更明显,使用 10% 的 Hanning 窗(max_percentage=0.1):

IU.ANMO.00.BHZ | 2022-09-22T06:24:40.019538Z - 2022-09-22T06:29:39.994538Z | 40.0 Hz, 12000 samples

下图演示了尖灭操作的效果:黑色和红色分别为尖灭操作前后的波形。可以看到,原始波形(黑) 在截断处存在“硬边界”,而尖灭后(红)两端平滑过渡至零,能有效抑制频谱泄漏。

<Figure size 1000x400 with 1 Axes>