數(shù)字信號處理實驗-matlab版-離散傅里葉變換的性質(zhì)_第1頁
數(shù)字信號處理實驗-matlab版-離散傅里葉變換的性質(zhì)_第2頁
數(shù)字信號處理實驗-matlab版-離散傅里葉變換的性質(zhì)_第3頁
數(shù)字信號處理實驗-matlab版-離散傅里葉變換的性質(zhì)_第4頁
數(shù)字信號處理實驗-matlab版-離散傅里葉變換的性質(zhì)_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

實驗13離散傅里葉變換的性質(zhì)

(完美格式版,本人自己完成,所有語句正確,不排除極個別錯誤,特別適用于山大,勿用冰點等

工具下載,否則下載之后的word格式會讓很多部分格式錯誤,謝謝)

XXXX學(xué)號姓名處XXXX

一、實驗?zāi)康?/p>

1加深對離散傅里葉變換(DFT)基本性質(zhì)的理解。

2了解有限長序列傅里葉變換(DFT)性質(zhì)的研究方法c

3掌握用MATLAB語言進行離散傅里葉變換性質(zhì)分析時程序編寫的方法。

二、實驗內(nèi)容

1線性性質(zhì)。

2循環(huán)移位性質(zhì)。

3循環(huán)折疊性質(zhì)。

4時域和頻域循環(huán)卷積特性。

5循環(huán)對稱性。

三、實驗環(huán)境

MATLAB7.0

四、實驗原理

1線性性質(zhì)

如果兩個有限長序列分別為xl(n)和x2(n),長度分別為N1和N2,且

y(n)=axl(n)+bx2(n)(a、b均為常數(shù))

則該y(n)的N點DFT為

Y(k)-DFTCy(n)]-aXl(k)+bX2(k)OWkWN-1

其中:N=max[Nl,N2],Xl(k)和X2(k)分別為xl(n)和x2(n)的N點DFT。

例13?1已知x1(n)=[0,1,2,4],x2(n)=[1,0,I,0,1],求:

(l)y(n)=2xl(n)+3x2(n),再由y(n)的N點DFT獲得Y(k);

(2)由xl(n)、x2(n)求Xl(k)、X2(k),再求Y(k)=2Xl(k)+3X2(k)。

用圖形分別表示以上結(jié)果,將兩種方法求得的Y(k)進行比較,由此驗證有限長序列傅里葉變

換(DFT)的線性性質(zhì)。

解MATLAB程序如下:

?xnl=[0,l,2,4J;%建立xnl序列

?xn2=[l,0JAH;%建立xn2序列

?N1=lcngth(xnl);N2=lcngth(xn2);

?N=max(NI,N2);%確定N

?ifNl>N2xn2=[xn2,zeros(l,Nl-N2)];%對長度短的序列補0

?elseifN2>NIxnl=[xnl,zeros(l,N2-Nl)];

?end

?yn=2*xnl+3*xn2;%計算yn

?n=0:N-l;k=0:N-l;

?Yk1=yn*(exp(-j*2*pi/N)).A(n**k);%求yn的N點DFT

?Xk1=xn1*(exp(-i*2*pi/N)).A(n**k);%求xnl的N點DFT

?Xk2=xn2*(exp(-j*2*pi/N)).A(n'*k);%求xn2的N點DFT

?Yk2=2*Xkl+3*Xk2;%?Xkl、Xk2求Yk

?subplot(4,2,1),stem(n,xnI);

?title('xl(ny);

?subplot(3,2,2),stcm(n,Xk1);

?title('Xl(kD;

?subplot(4,2,3),stem(n,xn2);

?litle(,x2(n)^);

?suhplot(3,2,4),steni(n,Xk2);

?title('Xl(ky);

?subplot(4,2,5),stem(n,yn);

?title('yn');

?subplot(3,2,6),stem(n,Yk2);

?title(,2*Xkl+3*Xk2,);

?subplot(4,2,7),stem(n,Yk1);

?title('DFT[y(n)]');

求得的Y(k),如下所示:

Yk=

23.0000-7.5902+1.5388i3.5902—0.3633i

3.5902+0.3633i-7.5902-1.5388i

運行結(jié)果如圖13-1所示。

那)

5x1(n)10

5

0

12345-5

x2(n)

-1012345

X1(k)

3

2

012345

yn1

????

:1012345

2(Xk1+3*Xk2

30

012345

DFT[y(n)]20

30J11

2010

10

Q0

(b

*

-101111.10

012345-1012345

圖13-I例13-1有限長序列的傅里葉變換的線性性質(zhì)

2循環(huán)移位性質(zhì)

如果有限長序列為x(n),長度為N,將x(n)左移m位,則y(n)=x((n+m)N)RN(n)

x(n)左移m位的過程可由以下步驟獲得:

⑴將x(n)以N為周期進行周期延拓,得到x(n)=x((n)N);

⑵將x(n)左移m位,得到x(n+m);

(3)取x(n+m)的主值序列,得到x(n)循環(huán)移位序列y(n)o

有限長序列的移位也稱為循環(huán)移位,原因是將x(n)左移m位時,移出的m位又依次從右端進

入主值區(qū)。下面舉例說明。

例13?2已知有限長序歹Jx(n)=[I,2,3,4,5,6],求x(n)左移2位成為新的向量y(n),

并畫出循環(huán)移位的中間過程。

解MA1LAB程序如下:

?xn=[1,2,3,4,5,6];%建立xn序列

?Nx=length(xn);nx=O:Nx-1;

?nxl=-Nx:2*Nx-l;%設(shè)立周期延拓的范圍

?x1=xn(mod(nx1,Nx)+1);%建立周期延拓序列

?nyl=nxl-2;yl=xl;%將乂1左移2位,得到y(tǒng)l

?RN=(nx1>=0)&(nx1<Nx);%在xl的位置向量nxl上設(shè)置主值窗

?RN1=(ny1>=())&(nyl<Nx);%在yl的位置向最nyl上設(shè)置主值窗

?subplot(4,1,1),stem(nxl,RN.*xI);%畫出xl的主值部分

?subplot(4,l,2),stcm(nxl,xl);%畫出xl

?subplot(4,1,3),stem(nyi,y1);%畫出yl

?subplot(4,l,4),stem(nyLRNl.*y1);%畫出yl的主值部分

運行結(jié)果如圖13-2所示。

10-

-4-2024681012

10-

)C))T

C)C

Q9111

0t----------r-------------r------------c-------------r-------------1------------£------------[-------------:------------:r

-8-6-4-20246810

??

kdA、A.Arf*

-8-6-4-20246810

13-2例13?2有限長序列的循環(huán)移位

3循環(huán)折疊性質(zhì)

如果要把有限長N點序列x(n)直接進行折疊,則x的下標(一n)將不在OWnWN-1區(qū)域內(nèi)。

但根據(jù)有限長序列傅里葉變換隱含的周期性,可以對變量(一n)進行N求余運算。即在MATLAB

中,序列x(n)的折疊可以由y=x(mod(—nx,N)+l)得到。

有限長N點序歹ljx(n)的循環(huán)折疊序歹ijy(n)定義為

fx(O)n=0

y(n尸X((一n)N)=、i

[x(N—n)1<n<N—1

可以想像成,序列x(n)以反時針方向等間隔放置在一個圓周上,則x(-n)是將x(n)沿著圓周

順時針方向等間隔放置.

循環(huán)折疊性質(zhì)同樣適用于頻域。經(jīng)循環(huán)折疊后,序列的DFT由下式給出:

Y(k)=DFT[x((-n)N)]

x(0)k=0

X*((-k))=

NX(N-k)l<k<N-l

就是說,在時域循環(huán)折疊后H勺函數(shù),其對應(yīng)的DFT在頻域也作循環(huán)折疊,并取X(k)的共施。

例13-3求x(n)=[1,2,3,4,5,6,7],循環(huán)長度分別取N=7,N=IO

⑴畫出x(n)的圖形;

(2)畫出x(—n)的圖形。

解MATLAB程序如下:

?x1=11,2,3,4,5,6,7];%建立x(n),N=7序列

?N1=length(xl);nl=O:N1-1;

?y1=x1(mod(-n1,N1)+1);%建立x(-n),N=7序列

?N2=10;

?x2=[xl,zeros(l,N2-Nl)];%建立x(n),N=10序列

?n2=0:N2-l;

?y2=x2(mod(-n2,N2)+1);%建立x(-n),N=10序列

?subplot(2,2,1),stcm(nl,x%畫x(n),N=7

?titIe('x(n),N=7');

?subplot(2,2,3),stem(n1,y1/k');%畫x(-n),N=7

?title('x(-n),N=7');

?subplot(2,2,2),stem(n2,x2/k');%畫x(n),N=10

?title('x(n),N=IO');

?subplot(2,2,4),stem(n2,y2,'k');%畫x(-n),N=10

?title('x(-n),N=10');

運行結(jié)果如圖13-3所示。

x(n),N=7x(n),N=10

13-3例13-3離散序列的循環(huán)折疊

例13-4如例13-3求x(n)=[1,2,3,4,5,6,7],循環(huán)長度取N=7。求證:在時域循環(huán)

折疊后的函數(shù)x(—n),其對應(yīng)的DFT在頻域也作循環(huán)折疊,并取X(k)的共挽。

解MATLAB程序如下:

?xl=[l,2,3,4,5,6,7];%建立x(n),N=7序列

?N=length(xl);

?n=O:N-l;k=O:N-l;

?y1=x1(inod(-n,N)+1);%建立x(-n),N=7序列

?Xk=xl*exp(-j*2*pi/N).Nn'*k)%求x(n)的DFT

?Yk=y1*exp(-j*2xpi/N).A(n**k)%求x(-n)的DFT

運行結(jié)果:

Xk=

Columns1through5

28.0000-3.5000+7.2678i-3.5000+2.7912i-3.5000+0.7989i-3.5000-0.79891

Columns6through7

-3.5000-2.7912i-3.5000-7.26781

Yk=

Columns1through5

28.0000-3.5000-7.2678i-3.5000-2.7912i-3.5000-0.7989i-3.5000+0.7989i

Columns6through7

-3.5000+2.7912i-3.5000+7.2678i

4時域和頻域循環(huán)卷積特性

離散傅里葉變換的循環(huán)卷積特性也稱為圓周卷積,分為時域卷積和頻域卷積兩類。

1)時域循環(huán)卷積

假定x(n)、h(n)都是N點序列,則時域循環(huán)卷積的結(jié)果y(n)也是N點序列:

y(n)=x(n)⑤h(n)?

若x(n)、h(n)和y(n)的DFT分別為X(k)、H(k)和Y(k),則Y(k)=X(k)H(k)

2)頻域循環(huán)卷積

利用時域和頻域的對稱性,可以得到頻域卷積特性。若y(n)=x(n)h(n)

Y(k)=X(k)(N)H(k)

下面重點討論時域循環(huán)卷積。時域循環(huán)卷積的方法有多種:

方法1:直接使用時域循環(huán)卷積。

由于有限長序列可以看成是周期序列的主值,因此,時域圓周卷枳的結(jié)果可以由對應(yīng)的周期

序列卷積和取主值部分獲得,請參考例11-4。

方法2:用頻域DFT相乘再求逆變換。

即先分別求xl(n)、x2(n)的DFTXI(k)、X2(k),再求Y(k)的IDFT獲得y(n).

方法3:用FFT和IFFT進行循環(huán)卷積。

基本思路同方法2,但直接使用了MATLAB提供的fft和ifft子函數(shù)來實現(xiàn)。見后面的快速傅

里葉變換實驗。

例13-5將例11-4已知的兩個時域周期序列分別取主值,得到xl=[1,1,1,0,0,0],

x2=[0,i,2,3,0,0],求時域循環(huán)卷積y(n)并用圖形表示。

解本例采用方法2。程序如下:

?xnl=[0,l,2,3A0];%建立xl(n)序列

?xn2=[l,l,l,0A0];%建立x2(n)序列

?N=length(xnl);

?n=0:N-l;k=0:N-l;

?Xkl=xn1*(cxp(-j*2*pi/N)).A(n'*k);%由x1(n)的DFT求X1(k)

?Xk2=xn2*(exp(-j*2*pi/N)).A(n,*k);%由x2(n)的DFT求X2(k)

?Yk=Xk1.*Xk2;%Y(k)=Xl(k)X2(k)

?yn=Yk*(exp(j*2s4pi/N)).A(n,*k)/N;%由Y(k)的IDFT求y(n)

?yn=abs(yn)%取模值,消除DFT帶來的微小復(fù)數(shù)影響

?subplot(2,3,1),stem(n,xn1);

?title('xl(n),)

?subplot(2,3,2),stem(n,xn2);

?title('x2(n),)

?subplot(2,3,3),stem(n,yn);

?title('y(n)')

?subplot(2,3,4),stem(n,Xk1);

?title('Xl(k),)

?subplot(2,3,5),stem(n,Xk2);

?title('X2(k)')

?subplot(2,3,6),stem(n,Yk);

?title('Y(k)')

得到:

yn=

320

2

10

1

0

06

-1-10

0505

圖13-5例13-5離散序列時域循環(huán)卷積的結(jié)果

5循環(huán)對稱性

由于序列x(n)及其離散傅里口|變換X(k)的定義在主值為。?N—1的區(qū)間,囚此DFT的循環(huán)

對稱性對時間序列是指關(guān)于n=0和n=N/2的對稱性,對頻譜序列是關(guān)于數(shù)字頻率為0和p的對

稱性。

本實驗重點分析實序列的循環(huán)對稱性。

實序列x(n)可以分解為循環(huán)偶序列Xc(n)和循環(huán)奇序列xo(n):

x(n)=xe(n)+xo(n)OWnWN—1

其中:

Xe(n)=?[x(n)+x(-n)]x0(n)=![x(n)—x(—n)]

2,2

設(shè)DFT[x(n)]=X(k)=Re[X(k)]+j*Im[X(k)],則有

DFT[xe(n)]=Re[X(k)]

DFT[xo(n)]=j*Im[X(k)]

即實序列中的偶序列xe(n)對應(yīng)于x(n)的離散傅里葉變換X(k)的實部,而實序列中的奇序列

xo(n)對應(yīng)于x(n)的離散傅里葉變換X(k)的虛部。

例13-6已知一個定義在主值區(qū)間的實序列x=[ones。,4),zeros(1,4)],試將其分解成為

偶對稱序列和奇對稱序列,并求它們的DFT,驗證離散傅里葉變換的循環(huán)對稱性。

解程序如下:

?x=[ones(1,5),zeros(1,5)j%建立x(n)序列

?N=length(x);

?n=0:N-l;k=0:N-l;

?xr=x(mod(-n,N)+1);%求x(-n)

?xe=0.5*(x+xr)%求x(n)的偶序列

?xo=0.5*(x-xr)%求x(n)的奇序列

?X=x*(exp(-j*2*pi/N)).A(n'*k);%Ft|x(n)的DFT求X(k)

?Xe=xe*(exp(-j*2*pi/N)).A(n'*k);%由xe(n)的DFT求Xe(k)

?Xo=xo*(exp(-j*2*pi/N)).A(n**k);%由xo(n)的DFT求Xo(k)

?errorl=(max(abs(rcal(X)-Xe)))%計算X(k)的實部與Xe(k)的差值

?error2=(max(abs(j*iinag(X)-Xo)))%計算X(k)的虛部與Xo(k)的差值

?subpiot(2,4,1),stcm(n,x);

?litle('x(n)')

?subplot(2,4,2),stem(n,xr);

?litle('x(-n)')

?subplot(2,4,3),stem(n,xe);

?title('xc(n),)

?subplot(2,4,4),stem(n,xo);

?titlc('xo(ny)

?subplol(2,4,5),stem(n,real(X));

?titlefX(k)的實部)

?subplo((2,4,6),stem(n,imag(X));

?title('X(k)的虛部)

?subplot(2,4,7),stem(n,Xe);

?ti(Ie(,Xe(k)=DFT(xe(n)),)

?subplot(2,4,8),stem(n,Xo);

?title('Xo(k)=DFT(xo(n)),)

運行結(jié)果顯示:

1111100000

xe=

Columns1through8

1.00000.50000.50000.50000.500000.5000().5000

Columns9through10

0.50000.5000

xo=

Columns1through8

00.50(H)0.50000.5(X)00.500()0-0.5000-0.5()(X)

Columns9through10

-0.5()(X)-0.5(X)0

error1=

4.0932c-015

error2=

3.9475e-015

Xe(k)=DFT(xe(n))2成心(k)

5

13-6;對稱性

0可知:%?

。對稱目

'Q(夕乂0("只Q陋了個傳刈州j生。]中也必'仕*=11赳nq?處木

(3)從圖上看,Xe(k)與X(k)的實部相等,Xo(k)與X(k)的虛部相等;從輸出數(shù)據(jù)也可見,errorl

和error2的差約為0。即可證明,時域的偶、奇分星的確對應(yīng)于頻域的離散傅里口I變換的實部和

虛部。

五、實驗過程

2己知有限長序列x(n)=[4,0,3,020J],求x(n)右移2位成為新的向量y(n),并畫出循環(huán)移

位的中間過程。

解MATLAB程序如下:

?xn=[4030201];

?Nx=lcngth(xn);nx=O:Nx-1;

?nxl=-Nx:2*Nx-i;

?x1=xn(mod(nx1,Nx)+1);

?nyl=nxl+2;yl=xl;

?RN=(nx1>=0)&(nx1<Nx);

?RNI=(nyl>=0)&(nyl<Nx);

?subplot(4,l,l),stem(nx1,RN.*x1);

?title('主值序列');

?subplot(4,l,2),stem(nxl,xl);

?title(倜期序列上

?subplot(4,1,3),stem(nxi,y1);

?title(,移位周期序列,);

?subplot(4,1,4),stem(nxl,RN.*yI);

?title(,移位主值序列);

運行結(jié)果如圖13-7所示。

主值序列

周期序列

?n=O:N-l;k=O:N-l;

?yl=xl(mod(-n,N)+1);

?Xk=x1*exp(-j*2xpi/N).A(n**k)

?Yk=yI*exp(-j*2xpi/N).A(n**k)

運行結(jié)果:

Xk=

Columns1through6

33.00007.7361-I6.9273i5.5000-3.44lOi3.2639-3.9960i5.5000-0.8123i

3.0000-O.OOOOi

Columns7through10

5.5000+0.8123i3.2639+3.9960i5.5000+3.44lOi7.7

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論