一 實驗目的
1、理解和加深DFS和DFT的概念及其性質(zhì); 2、學習利用離散傅里葉變換分析信號的頻譜。
二 實驗設備
1、計算機
2、MATLAB R2007a仿真軟件
三 實驗原理
離散傅里葉變換在時域和頻域都離散有限的特點,使其成為信號分析與處理中的一個最根本的也是最常用的變換。然而,但序列的長度N很大時,直接計算DFT需要很大的計算量??焖俑道锶~變換使DFT的運算效率提高數(shù)個數(shù)量級,為數(shù)字信號處理技術應用與各種信號的實時處理創(chuàng)造了良好的條件。MATLAB提供了用于快速計算DFT的fft函數(shù),其調(diào)用格式為:y=fft(x) 或 y=fft(x,N);fft函數(shù)用來計算序列x(n)的N點DFT,如果序列的長度小于N,則函數(shù)在序列的尾部補零至N點;而當序列的長度大于N時,函數(shù)對序列進行截短。為了提高運行速度,通常將N取為2的整數(shù)次冪。
四 實驗內(nèi)容
1、上機實驗前,認真閱讀實驗原理,掌握DFS和DFT的基本概念; 2、掌握離散傅里葉變換分析信號頻譜的MATLAB實現(xiàn)方法。
實例1:求周期序列x(n)?R(n),周期分別為N=20 和N=60時的X(k)。
5將下列指令編輯到“exlfft.m”文件中: clc;
close all;
clear all;
L=5;N1=20;N2=60;
xn1=[ones(1,L),zeros(1,N1-L)]; xn2=[ones(1,L),zeros(1,N2-L)]; n1=0:N1-1; n2=0:N2-1; Xk1=fft(xn1,N1);
Xk2=fft(xn2,N2); magXk1=abs(Xk1); magXk2=abs(Xk2); k1=[-N1/2:N1/2];
~~~ k2=[-N2/2-10:N2/2+10];
magXk11=abs([Xk1(N1/2+1:N1),Xk1(1:N1/2+1)]); magXk22=abs([Xk2(N2/2-9:N2),Xk2(1:N2/2+11)]); subplot(3,2,1); stem(n1,xn1,'.');title('SQ WAVE:L=5,N=20');
subplot(3,2,2);
stem(n2,xn2,'.');title('SQ WAVE:L=5,N=60'); subplot(3,2,3);
stem(n1,magXk1,'.');xlabel('(a)'); subplot(3,2,4);
stem(n2,magXk2,'.');xlabel('(b)'); subplot(3,2,5);
stem(k1,magXk11,'.');xlabel('(c)'); subplot(3,2,6);
stem(k2,magXk22,'.');xlabel('(d)');
文件編輯后保存,然后單擊Debug→Run,運行“exlfft.m”,所示結(jié)果如下圖所示。
實例2:
實例3:
實例4:
MATLAB程序如下:
五 實驗報告要求
1、簡述實驗目的和實驗原理;
2、編程實現(xiàn)實驗內(nèi)容,要求附上詳細的源程序和清晰的截圖; 3、總結(jié)實驗中的主要結(jié)論。
作業(yè)三 離散傅里葉變換
~~題1:求周期序列x(n)?R4(n),周期分別為N=16 、N=32和N=時的X(k)。 題2:
~
題3:
題1: clc;
close all; clear all;
l=4;N1=16;N2=32;N3=; xn1=[ones(1,l),zeros(1,N1-l)]; xn2=[ones(1,l),zeros(1,N2-l)]; xn3=[ones(1,l),zeros(1,N3-l)]; n1=0:N1-1; n2=0:N2-1; n3=0:N3-1; xk1=fft(xn1,N1); xk2=fft(xn2,N2); xk3=fft(xn3,N3); magxk1=abs(xk1); magxk2=abs(xk2); magxk3=abs(xk3); k1=[-N1/2:N1/2]; k2=[-N2/2-8:N2/2+8]; k3=[-N3/2-18:N3/2+18];
magxk11=abs([xk1(N1/2+1:N1),xk1(1:N1/2+1)]); magxk22=abs([xk2(N2/2-7:N2),xk2(1:N2/2+9)]); magxk33=abs([xk3(N3/2-17:N3),xk3(1:N3/2+19)]); subplot(3,3,1);
stem(n1,xn1,'.');title('SQ WAVE:l=4,n=16'); subplot(3,3,2);
stem(n2,xn2,'.');title('SQ WAVE:l=4,n=32'); subplot(3,3,3);
stem(n3,xn3,'.');title('SQ WAVE:l=4,n='); subplot(3,3,4);
stem(n1,magxk1,'.');xlabel('(a)');
subplot(3,3,5);
stem(n2,magxk2,'.');xlabel('(b)'); subplot(3,3,6);
stem(n3,magxk3,'.');xlabel('(c)'); subplot(3,3,7);
stem(k1,magxk11,'.');xlabel('(d)'); subplot(3,3,8);
stem(k2,magxk22,'.');xlabel('(e)'); subplot(3,3,9);
stem(k3,magxk33,'.');xlabel('(f)');
程序二:
n=[0:1:99];y=2*sin(0.48*pi*n)+cos(0.52*pi*n); subplot(2,1,1);stem(n,y);
title('signal x(n),0<=n<=99');xlabel('n'); axis([0,100,-2.5,2.5]);
Y=fft(y);magY=abs(Y(1:1:51)); k=0:1:50;w=2*pi/100*k;
subplot(2,1,2);stem(w/pi,magY); title('samples of DTFTM agnitude'); xlabel('frequency in pi units'); Axis([0,1.4,0,100]);
程序三:
fn=[3 2 1 0 1 2 3];N=7;K=[0:1:6]; FK=fft(fn,N); magFK=abs(FK);
angFK=angle(FK).*180./pi; subplot(2,1,1);stem(K,magFK); title('振幅部分');ylabel('振幅'); subplot(2,1,2);stem(K,angFK);
xlabel('K');title('相位部分');ylabel('相位');
因篇幅問題不能全部顯示,請點此查看更多更全內(nèi)容
Copyright ? 2019- 91gzw.com 版權(quán)所有 湘ICP備2023023988號-2
違法及侵權(quán)請聯(lián)系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市萬商天勤律師事務所王興未律師提供法律服務