matlab对一行矩阵fft,MATLAB?fft命令
%對y(1)取虛部
================================================================
函數fft的調用格式:
*Y=fft(X)
返回應用快速傅立葉方法計算得到的矢量X的離散傅立葉變換(DFT), 如果
X為矩陣,fft返回矩陣每一列的傅立葉變換,如果X為多維數組,fft運算從第一個非獨立維開始執行。
*Y=fft(X,n)
返回n點的離散傅立葉變換,如果X的長度小于n,X中補0使其與n的長度相同,
;如果X的長度大于n,則X的多出部分將被刪除;如X為矩陣,用同樣方法處理矩陣列的長度。
*Y=fft(X,[],dim)
和Y=fft(X,n,dim)沿dim維進行FFT操作。
注:快速傅立葉變換的結果為復數。
例:
產生一個正弦衰減曲線,進行快速傅立葉變換,并畫出幅值(amplitude)圖,相位(phase)圖、實部(real)圖和虛部(image)圖。
tp=0:2048;?%時域數據點數N
yt=sin(0.08*pi*tp).*exp(-tp/80);?%生成正弦衰減函數
figure(1),
plot(tp,yt),?axis([0,400,-1,1]),?%繪正弦衰減曲線
t=0:800/2048:800;?%頻域點數Nf
f=0:1.25:1000;
yf=fft(yt);?%快速傅立葉變換
ya=abs(yf(1:801));?%幅值
yp=angle(yf(1:801))*180/pi;?%相位
yr=real(yf(1:801));?%實部
yi=imag(yf(1:801));?%虛部
figure(2),
subplot(2,2,1)
plot(f,ya),axis([0,200,0,60])?%繪幅值曲線
subplot(2,2,2)
plot(f,yp),axis([0,200,-200,10])?%繪相位曲線
subplot(2,2,3)
plot(f,yr),axis([0,200,-40,40])?%繪實部曲線
subplot(2,2,4)
plot(f,yi),axis([0,200,-60,10])?%繪虛部曲線
總結
以上是生活随笔為你收集整理的matlab对一行矩阵fft,MATLAB?fft命令的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: java调试生命周期,一种基于JAVA的
 - 下一篇: matlab命名文件保存在哪里,用Mat