Matlab 进行FFT
原文地址:http://http://blog.sina.com.cn/s/blog_49c02a8c0100ysuc.html
x=load(‘cur.txt’); %讀入變換數據
fs = 100; %設定采樣率
N=128; %變換點數
n=0:N-1;
t=n/fs;
y=fft(x); %進行FFT變換
mag = abs(y); %求取幅值
f=(0:length(y)-1)’*fs/length(y); %進行對應的頻率轉換
figure(1);subplot(231);
plot(f,mag); %繪制頻譜圖
axis([0,100,0,80]); %設置坐標范圍,前面為X,后面為Y
xlabel(‘Hz’);ylabel(‘mag’);
grid;
%求取均方根譜
sq=abs(y);-
figure(1);-
subplot(232);-plot(f,sq);-
xlabel('頻率(Hz)');-
ylabel('均方根譜');-
%下面求取功率譜
power=sq.^2;-
figure(1);-
subplot(234);-
plot(f,power);-
xlabel('頻率(Hz)');-
ylabel('功率譜');-
grid;
%求對數譜-
ln=log(sq);-
figure(1);-
subplot(235);-
plot(f,ln);-
xlabel('頻率(Hz)');-
ylabel('對數譜');-
grid;-
%用IFFT恢復原始信號-
xifft=ifft(y);-
magx=real(xifft);-
ti=[0:length(xifft)-1]/fs;-
figure(1);-
subplot(236);-
plot(ti,magx);-
xlabel('t');-
ylabel('y');-
grid;-
轉載于:https://blog.51cto.com/qtgeo/1674222
總結
以上是生活随笔為你收集整理的Matlab 进行FFT的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 英镑纸币面额有几种 英镑的纸币面额有哪些
- 下一篇: 税码在发票的哪个位置