时程曲线傅里叶变换频谱曲线
这是我现在有点一组时程数据ya:ta:
plot就是时程曲线,现在我想做傅里叶变换得到频谱曲线,但是不知道采样频率。求大神指点MATLAB程序。
不知道采样频率怎能得到频谱呢? 本帖最后由 江树空 于 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 11:42
你不是有ya和ta两组数据吗?如果ya是信号,ta是时间轴的话,采样率是可以算出来的:fs=1/(ta(2)-ta(1))
代 ...
多谢了,现在懂了。
页:
[1]