生来糊涂虫 发表于 2014-8-4 11:07

时程曲线傅里叶变换频谱曲线

这是我现在有点一组时程数据ya:
ta:

plot就是时程曲线,现在我想做傅里叶变换得到频谱曲线,但是不知道采样频率。求大神指点MATLAB程序。

hcharlie 发表于 2014-8-4 11:26

不知道采样频率怎能得到频谱呢?

江树空 发表于 2014-8-4 11:42

本帖最后由 江树空 于 2014-8-4 11:43 编辑

你不是有ya和ta两组数据吗?如果ya是信号,ta是时间轴的话,采样率是可以算出来的:fs=1/(ta(2)-ta(1))
代码如下:
clear
clc
fs=1/(ta(2)-ta(1));
Y=fft(ya)/length(ya);
N=fix(length(ya)/2)+1;
A(1)=Y(1);
A(2:N)=2*Y(2:N);
f=fs/2*linspace(0,1,N);
plot(f,abs(A))
如果确实不知道采样频率,那就只能采用归一化的圆频率了,代码如下
clear
clc
Y=fft(ya)/length(ya);
N=fix(length(ya)/2)+1;
A(1)=Y(1);
A(2:N)=2*Y(2:N);
omega=pi*linspace(0,1,N);
plot(omega,abs(A))

生来糊涂虫 发表于 2014-8-4 12:59

江树空 发表于 2014-8-4 11:42
你不是有ya和ta两组数据吗?如果ya是信号,ta是时间轴的话,采样率是可以算出来的:fs=1/(ta(2)-ta(1))
代 ...

多谢了,现在懂了。
页: [1]
查看完整版本: 时程曲线傅里叶变换频谱曲线