如何在Excel中地震波数据转换为使用过滤和采样傅里叶谱

37视图(30天)
鉴于信息
  • 时域信号文件:庆州(USN)。xlsx(附加)
  • 采样率(频率):100 hz
  • 在g加速度值(9.81米/秒^ 2)
我想把地面加速度数据的Excel文件附加到频率(赫兹)在水平轴和垂直轴上的大小通过执行FFT在MATLAB。
同时,它必须情节只有奈奎斯特频率。我。e 100样本(0 ~ 50赫兹)
此外,我需要原始数据的傅里叶谱和傅里叶频谱过滤100示例地震波数据上执行FFT 20 hz低通滤波器。换句话说,我需要100个样本(过滤、0 ~ 20 hz)傅里叶谱和100年样本(生,0 ~ 50 hz)傅里叶谱。
这次地震的主要频率应该是6到10赫兹。
我想100年的傅里叶谱样本(过滤、0 ~ 20 hz)和100年样本(生,0 ~ 50赫兹)的附加jpg文件。我尝试但失败了
对不起,我会感激你的帮助。请,帮我

接受的答案

威廉•罗斯
威廉•罗斯 2022年8月12日
编辑:威廉•罗斯 2022年8月12日
【编辑:我调整了频域滤波过滤X关于奈奎斯特频率的对称。这并不会影响显示的阴谋,因为只显示上升到奈奎斯特频率的阴谋。然而,它的好处是:如果你Xfilt invese FFT,你将得到一个真正的结果,将欲望。)
数据= xlsread (“庆州(MKL) .xlsx”);
N =长度(数据);
t =数据(:1);%向量的(s)
x =数据(:,2);%向量的值
dt = (t(结束)- t (1)) / (n - 1);%采样间隔(s)
fs = 1 / dt;
df = fs / N;
f = (0: n - 1) * df;%向量的频率(赫兹)
X = fft (X);%计算FFT (x)
% %阴谋的结果
情节(f、abs (X)“- b”)
包含(的频率(赫兹));ylabel (“X (f) | |”);
网格
xlim ([0, fs / 2]);
这是unfiiltered地震记录的振幅谱。你可以告诉通过检查th情节,如果我们滤波器频率高于20 Hz,它不会是这样,占主导地位的频率是6 - 10赫兹。的能量似乎从1到16赫兹,而广泛传播(ssuming上面的部分20 Hz过滤)。您可以过滤在频域或时域。在频域滤波是容易,一旦你有了FFT:简单地设置频率高于20赫兹的FFT为零。
Xfilt = X;
Xfilt (> 20 & f < (fs-20)) = 0;
持有;情节(f、abs (Xfilt),“- r”);
传奇(“Unfilt”。,“过滤”);
试试。
3评论
Changhyun金
Changhyun金 2022年8月12日
编辑:Changhyun金 2022年8月12日
编码我写下现在有错误的振幅,但图的形状是相同的。
clc;清晰;
数据= xlsread ( “庆州(USN) .xlsx” );
t =数据(:1);
dt =意味着(diff (t));
fs = 1 / dt;
y =数据(:,2);
情节(t、y);
Y = fft (Y);
F = abs (Y);
次要情节(1,1)
情节(F);
n =长度(F)
次要情节(1、2)
F1 = F (1: n / 2)
情节(F1);
次要情节(3、1,3)
F2 = F1 / (n / 2)
f = (1: n / 2) / (dt * n)
情节(f, F2);

登录置评。

答案(1)

威廉•罗斯
威廉•罗斯 2022年8月12日
在你发布的脚本,生成第一情节被生成第二个情节你书写过度。添加一个“图”命令之前,第二个情节将解决这个问题。
你和三个板生成的阴谋,但JPEG 3痕迹在一个阴谋。你想要哪一个?
我附加的脚本生成一个时域阴谋。这个情节是覆盖在你的脚本中,我添加了标签。也生成一个图有两个振幅谱在单一情节,如JPEG)提供。两个光谱过滤100赫兹的信号和100赫兹的信号,过滤在20 Hz。
我将讨论重采样,我将添加resamled信号的FFT的情节,在一个评论。
12个评论
威廉•罗斯
威廉•罗斯 2022年8月12日
你是受欢迎的。这是脚本生成的数据。
我添加了一个解释性的评论数。
脚本的最后一部分阴谋的结果。您将注意到图2中的情节包括2.5 * N y的正常化。2.5选择的因素给FFT JPEG图像匹配的振幅。

登录置评。

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!