信號(hào)與系統(tǒng)課程設(shè)計(jì)——FFT的計(jì)算機(jī)實(shí)現(xiàn)快速傅立葉變換(FFT)的計(jì)算機(jī)實(shí)現(xiàn).doc_第1頁
信號(hào)與系統(tǒng)課程設(shè)計(jì)——FFT的計(jì)算機(jī)實(shí)現(xiàn)快速傅立葉變換(FFT)的計(jì)算機(jī)實(shí)現(xiàn).doc_第2頁
信號(hào)與系統(tǒng)課程設(shè)計(jì)——FFT的計(jì)算機(jī)實(shí)現(xiàn)快速傅立葉變換(FFT)的計(jì)算機(jī)實(shí)現(xiàn).doc_第3頁
信號(hào)與系統(tǒng)課程設(shè)計(jì)——FFT的計(jì)算機(jī)實(shí)現(xiàn)快速傅立葉變換(FFT)的計(jì)算機(jī)實(shí)現(xiàn).doc_第4頁
信號(hào)與系統(tǒng)課程設(shè)計(jì)——FFT的計(jì)算機(jī)實(shí)現(xiàn)快速傅立葉變換(FFT)的計(jì)算機(jī)實(shí)現(xiàn).doc_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

信號(hào)與系統(tǒng)課程設(shè)計(jì)fft的計(jì)算機(jī)實(shí)現(xiàn)快速傅里葉變換(fft)的計(jì)算機(jī)實(shí)現(xiàn)摘要:本文是信號(hào)與系統(tǒng)課程的課程設(shè)計(jì),旨在熟悉fft的計(jì)算過程,結(jié)合dft物理意義和實(shí)驗(yàn)結(jié)果加深對(duì)傅立葉變換的理解。文章首先用matlab對(duì)一個(gè)簡(jiǎn)單信號(hào)進(jìn)行fft仿真,得出頻譜圖;其次完成了fft的c語言實(shí)現(xiàn),結(jié)合matlab作圖及數(shù)據(jù)處理功能得出了c實(shí)現(xiàn)下的fft結(jié)果;最后,討論分析實(shí)驗(yàn)結(jié)果。關(guān)鍵詞:dft、基-2按時(shí)間抽取fft算法、matlab、c、頻譜、物理意義1. 算法描述1) dft的運(yùn)算量2) 減少運(yùn)算的方法:v 化長(zhǎng)序列為短序列。如將長(zhǎng)度為n的序列分解為兩個(gè)長(zhǎng)度為n/2的序列v 利用的性質(zhì)(注:本文中的c程序未用到此性質(zhì)) 3) c程序采用基-2按時(shí)間抽取的fft算法設(shè)輸入序列長(zhǎng)度為 (m為正整數(shù)),將該序列按時(shí)間順序的奇偶分解為越來越短的子序列,稱為基2按時(shí)間抽取的fft算法,也稱為coolkey-tukey算法。若n不滿足條件,則人為地加上若干零值,使。2. 實(shí)驗(yàn)設(shè)計(jì)與步驟為簡(jiǎn)單起見,同時(shí)不失一般性,本實(shí)驗(yàn)采用三個(gè)余弦成分和一個(gè)支流偏置成分疊加所得的信號(hào)作為信號(hào)源。3. matlab的fft仿真和c的fft實(shí)現(xiàn)1) 關(guān)于頻譜的理論分析:2) matlab的fft仿真v matlab程序代碼function output_args = fft2( x0,x1,f1,w1,x2,f2,w2,x3,f3,w3,fs )%這是一個(gè)自定義函數(shù),輸入被采樣的信號(hào)的參數(shù)和采樣頻率,然后輸出原信號(hào)波形、采樣信號(hào)序列、采樣序列幅度譜和相位譜。函數(shù)規(guī)定信號(hào)由一個(gè)直流成分(大小為x0),三個(gè)余弦成分(各自頻率分別為f1,f2,f3,幅值為x1,x2,x3,初相位為w1,w2,w3),采樣頻率為fs,采樣時(shí)間為1秒。x0,x1,f1,w1,x2,f2,w2,x3,f3,w3,fs作為參數(shù)輸入t=0:1/fs:1-1/fs;%定義采樣時(shí)刻n=length(t);%采樣序列長(zhǎng)度s=x0+x1*cos(2*pi*f1*t+pi/180*w1)+x2*cos(2*pi*f2*t+pi/180*w2)+x3*cos(2*pi*f3*t+pi/180*w3);%采樣信號(hào)y=fft(s);%快速傅立葉變換tt=0:1/10000:1;%原信號(hào)描點(diǎn)ss=x0+x1*cos(2*pi*f1*tt+pi/180*w1)+x2*cos(2*pi*f2*tt+pi/180*w2)+x3*cos(2*pi*f3*tt+pi/180*w3);%原信號(hào)figure;plot(tt,ss);grid;title(原始信號(hào));%原信號(hào)波形figure;subplot(3,1,1);plot(0:n-1,s(1:n),-o);xlim(0 n-1);grid;title(采樣信號(hào));subplot(3,1,2);plot(0:n-1,abs(y(1:n),-o);xlim(0 n-1);grid;xlabel(k);ylabel(幅度);title(理想采樣信號(hào)的幅度譜);subplot(3,1,3);plot(0:n-1,angle(y(1:n),-o);grid;xlabel(k);ylabel(相位);axis(0 n-1 -pi pi);title(理想采樣信號(hào)的相位譜);end;v 改變采樣頻率 依次鍵入:%其中fft2()是自定義函數(shù),對(duì)信號(hào)在1秒內(nèi)以頻率fs進(jìn)行采樣fft2(1,1,1,90,2,2,180,3,3,180,32)fft2(1,1,1,90,2,2,180,3,3,180,16)fft2(1,1,1,90,2,2,180,3,3,180,8)fft2(1,1,1,90,2,2,180,3,3,180,4)原始信號(hào)如圖:圖1 圖2、fs =32hz圖3、fs =16hz圖4、fs =8hz圖5、fs =4hz注意到:1、幅度譜,除卻k=0外,圖形呈軸對(duì)稱分布;2、相位譜,n為偶數(shù)時(shí)除卻k=0和n/2外(n為奇數(shù)時(shí),除卻k=0外),圖形呈中心對(duì)稱分布。理論上,由于復(fù)指數(shù)的周期性,長(zhǎng)度為n(假設(shè)n為偶數(shù),n為奇數(shù)時(shí)類似)的的dft頻譜分析,可把k=n/2,n/2+1,n-1看作是負(fù)頻率-n/2,-n/2+1,-n/2+2,-2,-1,特別的,對(duì)于實(shí)序列而言,正負(fù)頻率成分的幅值必須相等,而初相位必須相反。下面取fs=8hz和4hz部分計(jì)算結(jié)果分析,其他情況可類似處理??煽吹剑篺s=8hz時(shí),由頻譜結(jié)合物理意義計(jì)算的得到的余弦成分的幅值和初相位與原信號(hào)一致;fs=4hz時(shí),由頻譜結(jié)合物理意義計(jì)算的得到的余弦成分的幅值和初相位與原信號(hào)不同。對(duì)此,可根據(jù)抽樣定理解釋。因?yàn)閒1=1hz,f2=2hz, f3=3hz,所以連續(xù)時(shí)間信號(hào)的截至頻率fm=f3=3hz,所以抽樣頻率fs=4hz時(shí),fs %改變信號(hào)的直流成分(由1變?yōu)?),原信號(hào)和頻譜如下fft2(2,1,1,90,2,2,180,3,3,180,32)圖9 圖10 fs=32hz變化趨勢(shì):幅度譜中k=0對(duì)應(yīng)的幅度變?yōu)?n=64(原為32),其余處無明顯變化,相位譜中,k=0,1,2,3對(duì)應(yīng)的相位值都不變。 鍵入: %改變第三個(gè)余弦成分的幅值(由3改為4),原信號(hào)圖和頻譜圖如下fft2(2,1,1,90,2,2,180,4,3,180,32)圖11 圖12 fs=32hz變化趨勢(shì):幅度譜中k=3對(duì)應(yīng)的幅度變?yōu)?4(4*32/2=64,原來這個(gè)值為3*32/2=48),其余處無明顯變化,相位譜中k=0,1,2,3對(duì)應(yīng)的相位值都未發(fā)生變化。 鍵入: %改變第三個(gè)余弦成分的頻率(由3hz改為4hz),原信號(hào)圖和頻譜如下fft2(2,1,1,90,2,2,180,4,4,180,32)圖13 圖14 fs=32hz變化趨勢(shì):幅度譜中,k=4處幅度為n/2*4=64,k=3處幅度變?yōu)?,k=0,1,2處幅度不變;相位譜中,k=4處相位變?yōu)?80,k=0,1,2,3處相位值不變。 鍵入:%改變第三個(gè)余弦成分的初相位(由180改為270),原信號(hào)和頻譜如下圖fft2(2,1,1,90,2,2,180,4,4,270,32)圖15 圖16 fs=32hz變化趨勢(shì):幅度譜波形無明顯變化;相位譜中,k=4處相位值變?yōu)?90度,即270度。由此可見,改變信號(hào)的波幅、頻率和相位,幅度譜和相位譜將發(fā)生相應(yīng)的變化,即恰合頻譜的物理意義。3) c語言實(shí)現(xiàn)fftv c代碼/*此代碼用于fft計(jì)算,采用基-2按時(shí)間抽取的fft算法decimation-in-time(dit)(coolkey-tukey)。為方便起見,同時(shí)不失一般性,把含有一個(gè)直流成分和三個(gè)正弦成分的信號(hào)作為被采樣信號(hào),信號(hào)的輸入由函數(shù)input()完成,若想改變信號(hào)波形只需改變input()函數(shù)代碼。代碼分別定義了復(fù)數(shù)結(jié)構(gòu)體、復(fù)數(shù)運(yùn)算和碼位倒讀函數(shù)。計(jì)算結(jié)果分別在命令窗口和文件e:keshe.txt中輸出,keshe.txt文件數(shù)據(jù)可用于matlab作圖分析*/#include#include/*圓周率*/double pi=3.141592653589793;int m,n;/*定義復(fù)數(shù)*/struct complex_double real;double img;*a,*b;/*定義2的冪計(jì)算*/int x_2(int a)int i,r;r=1;for(i=0;i=0;j-)ii+=(int)(i/x_2(j)*x_2(m-1-j);/*先把i用二進(jìn)制表示,然后碼位倒讀*/i-=(int)(i/x_2(j)*x_2(j);return(ii);/*定義復(fù)數(shù)乘法*/struct complex_ multi(struct complex_ a,struct complex_ b)struct complex_ c;c.real=a.real*b.real-a.img*b.img;c.img=a.real*b.img+a.img*b.real;return(c);/*定義復(fù)數(shù)冪運(yùn)算*/struct complex_ w_k(struct complex_ w,int k)int i;struct complex_ x,y;x=w;if(k=0)x.real=1;x.img=0;return(x);elsefor(i=1;ik;i+)y=multi(x,w);x=y;return(x);/*定義復(fù)數(shù)加法*/struct complex_ add(struct complex_ a,struct complex_ b)struct complex_ c;c.real=a.real+b.real;c.img=a.img+b.img;return(c);/*離散序列的輸入*/void input()int nn,i;float f1,f2,f3,a0,a1,a2,a3,w1,w2,w3;m=0;/*在一秒鐘內(nèi),采點(diǎn)數(shù)*/printf(采點(diǎn)數(shù):);scanf(%d,&nn);printf(n);/*信號(hào)的直流成分*/printf(信號(hào)的直流成分:n);scanf(%f,&a0);/*信號(hào)有三個(gè)余弦成分*/*余弦成分1*/printf(第1個(gè)正弦成分的頻率:n);scanf(%f,&f1);printf(幅值:n);scanf(%f,&a1);printf(初相位:n);scanf(%f,&w1);/*余弦成分2*/printf(第2個(gè)正弦成分的頻率:n);scanf(%f,&f2);printf(幅值:n);scanf(%f,&a2);printf(初相位:n);scanf(%f,&w2);/*余弦成分3*/printf(第3個(gè)正弦成分的頻率:n);scanf(%f,&f3);printf(幅值:n);scanf(%f,&a3);printf(初相位:n);scanf(%f,&w3);for(i=0;x_2(i)nn;i+)m=i+1;n=x_2(m);/*n為不小于nn的最小的2的冪*/a=(struct complex_*)calloc(n,sizeof(struct complex_);/*動(dòng)態(tài)開辟n個(gè)單位*/b=(struct complex_*)calloc(n,sizeof(struct complex_);/*動(dòng)態(tài)開辟n個(gè)單位*/*把采樣信號(hào)用碼位倒讀的方法存入計(jì)算機(jī)中*/for(i=0;inn;i+)areverse(i).real=a0+a1*cos(2*pi*f1*i/n+w1/180*pi)+a2*cos(2*pi*f2*i/n+w2/180*pi)+a3*cos(2*pi*f3*i/n+w3/180*pi);/*其中reverse()為碼位倒讀函數(shù)*/areverse(i).img=0;/*動(dòng)態(tài)空間空閑處,補(bǔ)零*/for(i=nn;in;i+)areverse(i).real=0;areverse(i).img=0;/*主函數(shù)*/void main()int i,j,k,m,n,q,r;file *fp;/*文件指針,指向存儲(chǔ)fft結(jié)果的文件*/struct complex_ d,w,wk,x,y;j=0;input();m=1;n=n;for(i=0;im;i+)/*m級(jí)運(yùn)算*/n=n/2;m=m*2;q=x_2(i+1);/*q=2(i+1)*/w.real=cos(-2*pi/q);/*旋轉(zhuǎn)因子實(shí)部*/w.img=sin(-2*pi/q);/*旋轉(zhuǎn)因子虛部*/ for(j=0;jn;j+)/*n群運(yùn)算*/ for(k=0;km/2;k+)wk=w_k(w,k); bj*m+k=add(aj*m+k,multi(wk,aj*m+k+m/2);/*add()為復(fù)數(shù)相加函數(shù),multi()為復(fù)數(shù)相乘函數(shù)*/ for(k=m/2;km;k+) wk=w_k(w,k); bj*m+k=add(aj*m+k-m/2,multi(wk,aj*m+k); /*add()為復(fù)數(shù)相加函數(shù),multi()為復(fù)數(shù)相乘函數(shù)*/ for(r=0;rn;r+) ar=br; /*將結(jié)果寫入文件e:keshe.txt*/if(fp=fopen(e:keshe.txt,w+)=null)printf(cannot open file strike any key exit!);getch();exit(1);for(n=0;nn;n+)fprintf(fp,%16.14f %16.14fn,an.real,an.img);for(n=0;nn;n+)printf(%16.14f+%16.14fin,an.real,an.img);free(a);/*釋放內(nèi)存空間*/free(b);/*釋放內(nèi)存空間*/v 改變采樣頻率實(shí)驗(yàn)數(shù)據(jù)將由keshe.txt調(diào)入到matlab中,做出頻譜圖。 參數(shù)設(shè)置1圖17 fs=32hz(c實(shí)現(xiàn))圖18 fs=32hz(matlab仿真)注意到兩圖的幅度譜圖,很相似,而相位譜卻相差很大。用c實(shí)現(xiàn)的fft得到的相位譜也似乎沒有什么對(duì)稱性,但可以看到兩個(gè)相位譜在k=0,1,2,3和31,30,29處的相位值是基本一致的,而其他點(diǎn)處,相位值差異則很大。(表1,列出了具體的數(shù)值計(jì)算結(jié)果)表1kfft(c)fft(matlab)fft結(jié)果相位值fft結(jié)果相位值032.0000000000000 + 0.00000000000000i032.0000000000000 + 0.00000000000000i010.00000000000000 + 16.0000000000000i1.5707962.99760216648792e-15 - 16.0000000000000i1.5707962-32.0000000000000 + 1.00000000000000e-14i3.141593-32.0000000000000 - 9.76996261670138e-15i3.1415933-48.0000000000000 + 3.00000000000000e-14i3.141593-48.0000000000000 - 4.04121180963557e-14i3.1415934-1.00000000000000e-14 + 0.00000000000000i3.141593-1.16001965116118e-14 - 9.42055475210265e-16i3.0605650.00000000000000 + 0.00000000000000i0-3.99680288865056e-15 - 1.77635683940025e-15i2.72336861.00000000000000e-14 + 1.00000000000000e-14i0.7853987.54951656745106e-15 - 4.88498130835069e-15i0.57430571.00000000000000e-14 + 1.00000000000000e-14i0.7853981.11022302462516e-15 - 5.21804821573824e-15i1.3611568-1.00000000000000e-14 + 1.00000000000000e-14i2.356194-1.06581410364015e-14 - 7.10542735760100e-15i2.5535990.00000000000000 - 1.00000000000000e-14i-1.57081.11022302462516e-15 + 7.21644966006352e-15i-1.41815100.00000000000000 + 0.00000000000000i0-2.22044604925031e-15 - 2.22044604925031e-15i2.356194110.00000000000000 + 0.00000000000000i01.11022302462516e-14 - 5.32907051820075e-15i0.4475212-1.00000000000000e-14 + 0.00000000000000i3.141593-9.71608556119124e-15 - 9.42055475210265e-16i3.044936130.00000000000000 + 0.00000000000000i03.55271367880050e-15 - 1.33226762955019e-15i0.35877114-1.00000000000000e-14 + 0.00000000000000i3.1415933.55271367880050e-15 + 0.00000000000000i015-2.00000000000000e-14 + 1.00000000000000e-14i2.677945-1.58761892521397e-14 - 1.15463194561016e-14i2.512796161.00000000000000e-14 + 0.00000000000000i0-3.55271367880050e-15 + 0.00000000000000i3.14159317-2.00000000000000e-14 - 1.00000000000000e-14i-2.67795-1.58761892521397e-14 + 1.15463194561016e-14i-2.512818-1.00000000000000e-14 + 0.00000000000000i3.1415933.55271367880050e-15 + 0.00000000000000i019-1.00000000000000e-14 + 0.00000000000000i3.1415933.55271367880050e-15 + 1.33226762955019e-15i-0.3587720-1.00000000000000e-14 + 0.00000000000000i3.141593-9.71608556119124e-15 + 9.42055475210265e-16i-3.04494211.00000000000000e-14 + 0.00000000000000i01.11022302462516e-14 + 5.32907051820075e-15i-0.44752220.00000000000000 + 0.00000000000000i0-2.22044604925031e-15 + 2.22044604925031e-15i-2.35619230.00000000000000 + 1.00000000000000e-14i1.5707961.11022302462516e-15 - 7.21644966006352e-15i1.41814724-1.00000000000000e-14 - 1.00000000000000e-14i-2.35619-1.06581410364015e-14 + 7.10542735760100e-15i-2.55359250.00000000000000 - 1.00000000000000e-14i-1.57081.11022302462516e-15 + 5.21804821573824e-15i-1.36116261.00000000000000e-14 - 1.00000000000000e-14i-0.78547.54951656745106e-15 + 4.88498130835069e-15i-0.574327-1.00000000000000e-14 + 0.00000000000000i3.141593-3.99680288865056e-15 + 1.77635683940025e-15i-2.7233728-1.00000000000000e-14 + 0.00000000000000i3.141593-1.16001965116118e-14 + 9.42055475210265e-16i-3.0605629-48.0000000000000 - 5.00000000000000e-14i-3.14159-48.0000000000000 + 4.04121180963557e-14i-3.1415930-32.0000000000000 - 2.00000000000000e-14i-3.14159-32.0000000000000 + 9.76996261670138e-15i-3.14159311.00000000000000e-14 - 16.0000000000000i-1.57082.99760216648792e-15 + 16.0000000000000i-1.5708結(jié)合圖17、18和表1,可以發(fā)現(xiàn)兩個(gè)相位譜在k=0,1,2,3和31,30,29處一致,而在其他點(diǎn)相差很大,注意到這些點(diǎn)的幅值很?。ɡ碚撋蠎?yīng)該為0,實(shí)際上卻由于計(jì)算機(jī)的誤差,而使之非0),可認(rèn)為為0,可忽略這些點(diǎn),而主要考慮主頻率成分。事實(shí)上,結(jié)合圖表可發(fā)現(xiàn),c程序所得的結(jié)果也并非完全無對(duì)稱性的,并且可注意到所有不對(duì)稱點(diǎn)的相位值接近圓周率或0。這種差異是由于計(jì)算機(jī)的誤差導(dǎo)致的,在一般情況下,這不會(huì)造成太大的影響,而在相位處于邊界值(和0)時(shí),這種誤差將計(jì)算結(jié)果發(fā)生很大變化。注:在先前編寫的c程序中,把復(fù)數(shù)實(shí)部和虛部的數(shù)據(jù)類型設(shè)置為float時(shí),相位譜的不對(duì)稱更加嚴(yán)重,甚至c和matlab仿真的兩個(gè)相位譜在k= 31,30,29都不一致,此處實(shí)驗(yàn)結(jié)果是把數(shù)據(jù)類型改為double類型后(即提高精度后)所得的,仍存在這種不對(duì)稱,理論上可通過不斷提高精度進(jìn)行改進(jìn),但只要是某頻率成分初相位為或0,就存在這種嚴(yán)重不對(duì)稱的風(fēng)險(xiǎn)。 參數(shù)設(shè)置2圖19 fs=16hz(c實(shí)現(xiàn)) 圖20 fs=16hz(matlab仿真) 可發(fā)現(xiàn)c實(shí)現(xiàn)下的fft幅度譜圖隨采樣頻率變化的趨勢(shì)與matlab仿真實(shí)驗(yàn)類似,而由于參數(shù)1實(shí)驗(yàn)相同的原因,c實(shí)現(xiàn)的fft相位譜并不對(duì)稱。 參數(shù)設(shè)置3圖21 fs=8hz(c實(shí)現(xiàn)) 圖22 fs=8hz(matlab仿真)類似的,可發(fā)現(xiàn)幅度譜圖隨采樣頻率變化的趨勢(shì)與matlab仿真實(shí)驗(yàn)類似。而c和matlab實(shí)現(xiàn)下,k=6時(shí)的相位值一個(gè)為3.14,一個(gè)為-3.14,具體原因同上。而和相差,理論上初相位為是無差異的,但是體現(xiàn)在相位譜上就是造成不對(duì)稱。 參數(shù)設(shè)置4圖23 fs=4hz(c實(shí)現(xiàn))圖24 fs=4hz(matlab仿真)同matlab仿真結(jié)果一樣出現(xiàn)混疊現(xiàn)象。 參數(shù)設(shè)置5圖25 fs=14hz(c實(shí)現(xiàn)) 圖26 fs=14hz(matlab仿真)注意到幅度譜和相位譜都有很大區(qū)別,其中相位譜的區(qū)別是由兩種不同的計(jì)算機(jī)語言規(guī)則造成的(正如之前提到的),而幅度譜的區(qū)別是由算法不同造成的, c程序是采用補(bǔ)零的方法把序列長(zhǎng)度湊成,然后把長(zhǎng)度為n的序列輸出為結(jié)果,這樣做的后果是改變了進(jìn)行dft的序列, 得到的自然不是所求的結(jié)果,所以這個(gè)c程序,只能針對(duì)序列長(zhǎng)度滿足的情況。v 改變被采樣信號(hào)波形 參數(shù)設(shè)置6圖27 fs=32hz(c實(shí)現(xiàn))圖28 fs=32hz(matlab仿真)二者幅度譜相同,相位譜只在中間部分有差異(此差異對(duì)實(shí)際分析影響很小,且也無實(shí)際意義,可忽略),而在k=0,1,2,3和31,30,29處兩幅圖的情況一致,故驗(yàn)證了之前關(guān)于出現(xiàn)圖17和圖18二者相位譜如此大差異原因的猜想。 參數(shù)設(shè)置7圖29 fs=32hz(c實(shí)現(xiàn))圖30 fs=32hz(matlab仿真)二者幅度譜圖相同,且較上一參數(shù)時(shí)發(fā)生的變化趨勢(shì)與matlab仿真試驗(yàn)中一樣;相位譜圖在k=0,1,2,3和31,30,29處相位值相同。 參數(shù)設(shè)置8圖31 fs=32hz(c實(shí)現(xiàn))圖32 fs=32hz(matlab仿真)二者幅度譜圖相同,且較上一參數(shù)時(shí)發(fā)生的變化趨勢(shì)與matlab仿真試驗(yàn)中一樣;相位譜圖在k=0,1,2,4和31,30,28處相位值相同。至此,考察了序列長(zhǎng)度和信號(hào)諧波成分對(duì)matlab的fft仿真和c實(shí)現(xiàn)的fft的影響,并結(jié)合了dft的物理意義,對(duì)實(shí)驗(yàn)現(xiàn)象做出了解釋。對(duì)比matlab和c實(shí)現(xiàn)下的fft結(jié)果的差異,做出了自己的解釋。4. 課程設(shè)計(jì)心得與自我評(píng)價(jià)這個(gè)課程設(shè)計(jì)的主要部分是在暑假完成的,課程設(shè)計(jì)是關(guān)于fft的計(jì)算機(jī)實(shí)現(xiàn),要求掌握fft算法,并分別用matlab進(jìn)行fft仿真和編寫實(shí)現(xiàn)fft的c代碼。記得之前學(xué)習(xí)電路理論、復(fù)變函數(shù)、數(shù)理方程和信號(hào)系統(tǒng)時(shí)都遇到過把時(shí)域上的問題轉(zhuǎn)化為頻域上的問題解決的情況,電路中主要是laplace變換的實(shí)際應(yīng)用,而復(fù)變函數(shù)里面主要講的是各種變換的技術(shù)新性問題,數(shù)理方程里面研究的是一些數(shù)學(xué)方程的物理模型,而信號(hào)與系統(tǒng)課程則引入了離散的概念。首先是時(shí)域上的離散,由對(duì)連續(xù)時(shí)間進(jìn)行信號(hào)采樣,即x(t)xn,把連續(xù)時(shí)間信號(hào)的各種性質(zhì)在離散時(shí)間信號(hào)做推廣,如ctftdtft,laplace變換z-變換;其次是頻域上的離散,對(duì)連續(xù)頻率進(jìn)行信號(hào)采樣,即dtftdft,而fft則是處理dft的一種快速算法。課程設(shè)計(jì)完成的過程中遇到許多問題:首先是matlab

溫馨提示

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

評(píng)論

0/150

提交評(píng)論