这段代码使用 MATLAB 实现了一个带通滤波器,具体步骤如下:

  1. 加载.mat文件,文件路径为'D:\春苗结冰预警实验数据+代码\Al1_ice1.mat'。
  2. 绘制一个新的图形窗口。
  3. 从 Frequency_Hz 中提取一部分频率数据,选择第 1 到第 25 个元素,步长为 4。
  4. 从 Group_Velocity_m_s 中提取一部分速度数据,选择第 1 到第 25 列,步长为 4。
  5. 使用 for 循环,循环 6 次,变量 i 从 1 到 6。
  6. 计算带通滤波器的参数,包括中心频率 f_central_、带宽 f_band、左边界频率 f_left 和右边界频率 f_right。
  7. 使用 bandpass 函数对 acor 进行带通滤波,滤波频率范围为 [f_left f_right],采样率为 fs。
  8. 对滤波后的信号 acor_ 进行包络提取,采用峰值检测方法,窗口大小为 5。
  9. 在第 i 个子图中绘制滤波前的信号 acor_,使用红色线条,线宽为 1。
  10. 计算时间延迟 tim_a,该值为 dis(距离)除以 cg_all(1, i)(群速度)。
  11. 在第 i 个子图中绘制时间延迟范围内的红色交叉标记点,坐标为 [-tim_a tim_a, 0 0],标记大小为 8,线宽为 3。
  12. 在第 i 个子图中绘制滤波后的包络信号 env,使用红色线条,线宽为 1。
  13. 设置 x 轴标签为 'Time [s]'。
  14. 设置子图标题为 'Central frequency: ' 加上 f_central_/1000 的值加上 ' kHz'。
  15. 设置 x 轴范围为 [-0.0004, 0.0004]。
  16. 打开网格显示。
  17. 结束 for 循环。

原文地址: https://www.cveoy.top/t/topic/piog 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录