波形处理
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_977fd8ff/miniseed-processor。
技能介绍
它解决什么问题
处理 miniseed 地震波形时,你通常需要在好几个工具之间来回切换:先用 SCP 把数据从野外服务器拉下来,再用 ObsPy 读进内存,然后写一段 matplotlib 脚本画图,最后还要自己查文献实现 PGA、PGV 的积分计算和 MMI 烈度估计。这个 skill 把这些动作串成一条流水线,用自然语言触发,少写胶水代码。
它同时覆盖了两个容易出错的地方:远程下载时的参数传递,以及物理量计算时的积分异常。前者通过运行时交互式询问解决敏感信息问题,后者通过内置的去趋势和滤波检查来降低报错概率。
核心能力
远程下载:当对话中出现 scp、服务器、远程 等关键词时触发。运行时询问 IP、用户名、密码、远程路径和本地路径,只下载修改时间或大小有变化的文件,并保持远程目录结构。
波形可视化:用 ObsPy 的 read 函数读取 miniseed 文件,输出与源文件同名的 .png 波形图,支持 debug_headers 模式排查格式问题。
时间范围处理:检查文件是否覆盖指定时间点,支持 UTC 与北京时间互转(北京时间转 UTC 时减去 8 小时),并可以截取特定时段生成局部波形图。
物理参数计算:当提到 PGA、PGV、PGD、烈度、count/g 等关键词时触发。计算峰值加速度、速度、位移,并基于 PGA 与 PGV 估算 MMI 烈度。
批量处理:遍历文件夹中所有 miniseed 文件,对每个文件独立执行绘图、时段截取或参数计算,单个文件失败不会中断整个流程。
使用注意
时间统一使用 UTCDateTime 处理,避免时区混淆;截取时段前确认目标时间落在文件的 starttime 与 endtime 之间,否则会得到空流对象。
物理参数计算依赖灵敏度标定值,默认按 16384 count/g 处理,如果你的仪器标定不同需要在调用前确认。积分前必须去趋势,推荐加 0.1–20Hz 带通滤波,否则噪声会被积分放大导致结果失真。经验上 PGV 比 PGA 更适合作为烈度估计的主要输入。
波形图会保存在源文件所在目录,批量处理时注意磁盘占用。
使用场景
- 在处理野外台站数据时,需要批量生成所有miniseed文件的波形图用于快速浏览
- 需要从远程服务器下载指定时间段的miniseed文件并生成局部波形图
- 计算地震事件的PGA/PGV值时,需要批量处理多个台站的波形文件
- 检查某次地震的波形数据是否覆盖特定时间点,用于验证数据完整性
适合人员
- 地震台网数据处理工程师,需要快速生成波形图和计算物理参数
- 野外地震监测站运维人员,需要从远程服务器批量下载数据并可视化
- 地球物理研究方向研究生,需要处理实验或观测的miniseed数据并验证时间范围
- 地震应急响应团队,需要快速获取指定时段的波形数据和烈度参数用于快速评估