




已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
畢業(yè)設(shè)計(jì) 因果序列卷積的 ListConvolve 算法程序設(shè)計(jì) 院 系: 物理與電信工程學(xué)院 專 業(yè): 電子信息科學(xué)與技術(shù) 班 級(jí): 電信 101 班 姓 名: 張靜 學(xué) 號(hào): 1010064030 指導(dǎo)老師: 龍姝明 2014 年 5 月 20 日 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 因果序列卷積的 ListConvolve 算法程序設(shè)計(jì) 張靜 (陜理工物理與電信工程學(xué)院電子信息科學(xué)與技術(shù) 101 班,陜西 漢中 723001) 指導(dǎo)老師:龍姝明 摘要 采用調(diào)用Mathematica的內(nèi)部函數(shù)ListConvolve進(jìn)行因果序列卷積算法的程序設(shè)計(jì),并編寫因果序列卷積 的ListConvolve算法和其它兩種算法的程序,以及與其它兩種算法的比較。并從實(shí)例展示其程序用法和高效性。 關(guān)鍵字 Mathematica程序;卷積;ListConvolve算法;因果序列 Causal sequence convolution algorithm design ListConvolve Zhang Jing (Grade10,Class1,Major Electronic Information Science and Technology Department of Physics,Shannxi University of Technology,Hanzhong,723001) Tutor: Long Shuming Abstract Invoke the Mathematica ListConvolve internal function is adopted to improve the program L causal sequence convolution algorithm design, and write a causal sequence of convolution ListConvolve algorithm program and other two kinds of algorithm, and compared with the other two algorithms. From examples show its program usage and efficiency. Keywords Mathematica program;Convolution;ListConvolve algorithm;Causal sequence; 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 目錄 引言 1 1 因果序列卷積的意義 .2 2 常見有限長(zhǎng)因果序列卷積的計(jì)算方法 .2 2.1ListConvolve 算法2 2.2 矩陣乘法算法2 2.3 矢量乘法算法2 3 各種卷積計(jì)算方法程序?qū)崿F(xiàn)的編程思路 .2 3.1 各種算法編程前的準(zhǔn)備2 3.1.1 構(gòu)造濾波器2 3.1.2 計(jì)算濾波器時(shí)域系統(tǒng)函數(shù)的采樣數(shù)據(jù)3 3.1.3 構(gòu)造信號(hào)4 3.2 因果序列卷積的各種算法編程實(shí)現(xiàn)6 3.2.1 ListConvolve 算法程序設(shè)計(jì).6 3.2.2 矩陣乘法算法程序設(shè)計(jì)7 3.2.3 矢量乘法算法程序設(shè)計(jì)8 4 各種卷積算法的比較 .9 4.1 ListConvolve 算法本身的比較.9 4.2 卷積的三種算法比較9 5 應(yīng)用實(shí)例 .9 6 結(jié)語 .11 致謝 11 參考文獻(xiàn) 12 第 0 頁 共 12 頁 引言 Mathematica 是由英國(guó)科學(xué)家斯蒂芬沃爾夫勒姆領(lǐng)導(dǎo)的著名公司沃爾夫勒姆研究公司開發(fā)的 一款廣泛使用的科學(xué)計(jì)算軟件。它擁有強(qiáng)大的數(shù)值計(jì)算和符號(hào)運(yùn)算能力,是使用最廣泛的數(shù)學(xué)軟件 之一。Mathematica 的發(fā)布標(biāo)志著現(xiàn)代科技計(jì)算的開始1。當(dāng)然 Mathematica 是世界上通用計(jì)算系 統(tǒng)中最強(qiáng)大的系統(tǒng)。自從 1988 發(fā)布以來,它已經(jīng)對(duì)如何在科技和其它領(lǐng)域運(yùn)用計(jì)算機(jī)產(chǎn)生了深刻 的影響。就像人們常說,Mathematica 的發(fā)布標(biāo)志著現(xiàn)代科技計(jì)算的開始。自從上世紀(jì)六十年代以 來,在數(shù)值、代數(shù)、圖形、以及其它方面一直有個(gè)別的軟件包存在。但是,Mathematica 的基本概 念是用一個(gè)連貫的和統(tǒng)一的方法創(chuàng)造一個(gè)能適用于科技計(jì)算各個(gè)方面的軟件系統(tǒng)。至于如何實(shí)現(xiàn)這 一點(diǎn)的關(guān)鍵之處是發(fā)明了一種新的計(jì)算機(jī)符號(hào)語言。這種語言可以僅僅用很少量的基本元素制造出 廣泛的物體,而滿足科技計(jì)算的廣泛性。這在人類歷史上還是第一次出現(xiàn)。而且長(zhǎng)期以來, Mathematica 核心設(shè)計(jì)的普遍性使得它涉及的領(lǐng)域不斷增長(zhǎng),擴(kuò)大。從剛開始的是一個(gè)主要用于數(shù) 學(xué)和科技計(jì)算的系統(tǒng),到而今發(fā)展成為許多計(jì)算領(lǐng)域的主要力量,Mathematica 已經(jīng)成為世界上最 強(qiáng)大的通用計(jì)算系統(tǒng)之一。Mathematica 應(yīng)用廣泛,Mathematica 的用戶群中最主要的是科技工作 者和其它專業(yè)研究人士。不僅如此,Mathematica 還被廣泛地用于教學(xué)中。數(shù)學(xué)中的許多計(jì)算是非 常繁瑣的,特別是函數(shù)的作圖費(fèi)時(shí)又費(fèi)力,而且所畫的圖形很不規(guī)范,所以現(xiàn)在流行用 Mathematica 符號(hào)計(jì)算系統(tǒng)進(jìn)行學(xué)習(xí),從高中到研究生院的數(shù)以百計(jì)的課程都是在使用它,很多問 題便可以迎刃而解。此外,隨著學(xué)生版的出現(xiàn),Mathematica 已經(jīng)在全世界的學(xué)生中流行起來,成 為了一個(gè)著名的學(xué)習(xí),研究工具。在運(yùn)算領(lǐng)域里,Mathematica 作為當(dāng)前國(guó)際控制界最流行的面向 工程與科學(xué)計(jì)算的高級(jí)語言,近年來得到了業(yè)界的一致認(rèn)可2-7。而且在控制各種系統(tǒng)的分析、設(shè) 計(jì)算法方面得到了非常廣泛的應(yīng)用,其自身也因此得到了迅速的發(fā)展,功能也在不斷擴(kuò)充。便于對(duì) 通信系統(tǒng)的物理概念和運(yùn)行過程的直觀理解,所以近年來在通信工程專業(yè)中得到了廣大師生的特別 重視和廣泛的應(yīng)用,在理論教學(xué)、課程實(shí)踐環(huán)節(jié),以及理論和技術(shù)前沿的研究中發(fā)揮了非常重要作 用。而傳統(tǒng)的因果序列卷積運(yùn)算方法主要可以歸納為圖解法, 解析法, 位移法和乘式法,矩陣乘法 和矢量乘法等等。至于圖解法直觀明了但煩瑣,不便于編程計(jì)算;而解析法適合于短序列編程, 當(dāng)序 列較長(zhǎng)時(shí), 表達(dá)式冗長(zhǎng), 不便于編程計(jì)算; 乘式法與解析法有相同特點(diǎn), 不適合較長(zhǎng)的兩個(gè)序列的 卷積和運(yùn)算; 移位法有效的解決了較長(zhǎng)序列的卷積和運(yùn)算,是一種較好的計(jì)算方法, 特別對(duì)于長(zhǎng)序 列更顯示出其計(jì)算能力, 但是需要考慮數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)問題,而且也不便于理解。而本次畢業(yè)設(shè)計(jì)中 主要提出了另一種計(jì)算方法, 即 ListConvolve 算法,易于編程,算法高速8。 ListConvolve 算法適用于因果序列卷積的運(yùn)算,而且算法高速,占據(jù)內(nèi)存小,因此是一種有效 的計(jì)算方法. 在工程實(shí)際中具有較大的應(yīng)用價(jià)值。 在此調(diào)用 Mathematica 軟件中的軟件 ListConvolve 算法進(jìn)行程序設(shè)計(jì),使其能夠?qū)崿F(xiàn)因果序 列卷積的 ListConvolve 算法的運(yùn)算,使卷積運(yùn)算更加簡(jiǎn)便。 許多文獻(xiàn)討論了卷積的計(jì)算方法以及對(duì)各種算法的總結(jié),離散信號(hào)的卷積的多種求解方法, 包括解析法、列表法、利用卷積和性質(zhì)求解,應(yīng)用單位樣值信號(hào)求解,ListConvolve 算法,矩 陣算法及矢量空間算法。一般利用定義式、圖解法和卷積性質(zhì)這些通用方法進(jìn)行求解連續(xù)信號(hào) 的卷積或離散信號(hào)的卷積和。其中,利用定義式及卷積性質(zhì)的求解,需要根據(jù)信號(hào)形式做繁瑣 的積分或求和;利用圖解法進(jìn)行的反轉(zhuǎn)、平移、相乘、求和四個(gè)步驟,繪圖過程麻煩9。而利 用 ListConvolve 算法則簡(jiǎn)單高速,但算法不夠透明,而矩陣算法則屬于算法過程透明,但卻占 內(nèi)存過大,矢量空間算法則運(yùn)算時(shí)間過長(zhǎng)??傊鞣N算法都有利有弊。本文將利用矩陣乘法和 矢量乘法與 ListConvolve 算法相比較來突顯出 ListConvolve 算法的優(yōu)越性。 對(duì)于本文來說,主要研究了 ListConvolve 算法的如何調(diào)用,矩陣乘法算法和矢量乘法算法 的計(jì)算方法是如何實(shí)現(xiàn)的。以及如何各種算法的程序編寫10。 因?yàn)榫矸e在信號(hào)處理過程中是很常見的,所以研究如何實(shí)現(xiàn)卷積濾波是非常只有用的。相 信卷積濾波會(huì)得到廣泛應(yīng)用。 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 第 1 頁 共 12 頁 1 因果序列卷積的意義 任意兩個(gè)序列的卷積并無意義的,只有一個(gè)代表離散信號(hào)的序列 f(k)與描述離散 LTI 系統(tǒng)的序 列 g(k)(g(k)是離散 LTI 系統(tǒng)在單位脈沖序列k在它激勵(lì)下的零狀態(tài)響應(yīng)。 )卷積 y(k)=f(k)*g(k) 才有真實(shí)的物理意義,它就是離散 LTI 系統(tǒng)在輸入離散信號(hào) f(k)激勵(lì)下的零狀態(tài)響應(yīng),即系統(tǒng)的輸 出,能夠代表真是的離散信號(hào)的序列,只能是因果序列,所以,本文只討論一個(gè)描述輸入信號(hào)的有 限長(zhǎng)序列與一個(gè)描述系統(tǒng)濾波特性的有限長(zhǎng)序列之間的卷積,其結(jié)果是輸入信號(hào)經(jīng)過濾波器濾波后 的結(jié)果。 因?yàn)樵谛盘?hào)處理過程中會(huì)常遇到卷積計(jì)算問題,所以對(duì)于研究因果序列卷積的算法是非常有用 的。 2 常見有限長(zhǎng)因果序列卷積的計(jì)算方法 2.1ListConvolve 算法算法 ListConvolve算法,對(duì)于學(xué)者而言,只知道經(jīng)過編程實(shí)踐發(fā)現(xiàn),它的算法很優(yōu)越,省時(shí)省空間, 目前來說它的時(shí)間復(fù)雜度和空間復(fù)雜度都是最低的。它是由世界著名軟件公司(Mathematica軟件) 的精英們?cè)O(shè)計(jì)的,所以也只有他們清楚其內(nèi)部算法。這種算法的透明度不高,至于為什么還要對(duì)其 進(jìn)行研究,是因?yàn)橐獙W(xué)習(xí)如何熟練的使用它,如何熟練地調(diào)用其內(nèi)部函數(shù),以充分的利用其高速性 與占據(jù)內(nèi)存小的特點(diǎn)。 2.2 矩陣乘法算法矩陣乘法算法 矩陣乘法是一種高效的算法可以把一些一維遞推優(yōu)化到log( n ),還可以求路徑方案等,所以 更是一種應(yīng)用性極強(qiáng)的算法。矩陣,是線性代數(shù)中的基本概念之一。一個(gè)mn的矩陣就是mn個(gè)數(shù) 排成m行n列的一個(gè)數(shù)陣。由于它把許多數(shù)據(jù)緊湊的集中到了一起,所以有時(shí)候可以簡(jiǎn)便地表示一 些復(fù)雜的模型。例如: 序列x=2,3,4和序列y=4,5,6,7的卷積,可以等效為矩陣2 3 4和矩陣 作卷積結(jié)果為16,22,43,52,45,28 456700 045670 004567 2.3 矢量乘法算法矢量乘法算法 將兩個(gè)長(zhǎng)度分別為m與n的序列x,y進(jìn)行卷積求和,則其卷積結(jié)果序列長(zhǎng)度為L(zhǎng)=m+n-1,其計(jì)算 過程為,第一個(gè)序列保持不變,第二個(gè)序列補(bǔ)m-1個(gè)零,放在前面,后面加上倒置的第二個(gè)序列, 構(gòu)成新的第二個(gè)序列,在相乘的過程中,新生成的第二個(gè)序列每乘一次就右循環(huán)滾動(dòng)一次(第一次 乘就要右循環(huán)滾動(dòng)一次),其求和方式為每一次對(duì)應(yīng)位置相乘求和,即為矢量乘法算法。例如: 序列x=2,3,4和序列y=4,5,6,7的卷積,y序列改寫為y1=4,0,0,7,6,5y6=0,0,7,6,5,4卷積 結(jié)果如下:8,22,43,52,45,28 3 各種卷積計(jì)算方法程序?qū)崿F(xiàn)的編程思路 因?yàn)橛形锢硪饬x的卷積是,一個(gè)序列代表輸入信號(hào),另一個(gè)描述濾波器的濾波特性,它們的卷 積結(jié)果就是信號(hào)加到濾波器上以后,濾波的輸出信號(hào),所以,要討論序列卷積,都必須先準(zhǔn)備描述 濾波器的序列。因此,有如下編程。 3.1 各種算法編程前的準(zhǔn)備各種算法編程前的準(zhǔn)備 3.1.1 構(gòu)造濾波器構(gòu)造濾波器 濾波器設(shè)計(jì)主要是借助 MATLAB,設(shè)計(jì)程序如下: (*確定階數(shù) 255;確定通帶上限頻率; n = 255; w = 0.25; 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 第 2 頁 共 12 頁 b = fir1 (n, w); save zjfilter, b; 3.1.2 計(jì)算濾波器時(shí)域系統(tǒng)函數(shù)的采樣數(shù)據(jù)計(jì)算濾波器時(shí)域系統(tǒng)函數(shù)的采樣數(shù)據(jù) Ts = 0.01; fs = 1/Ts; b=-0.0000764706,-0.0001864,-0.000188868,- 0.0000795429,0.0000811504,0.000200526,0.000205885,0.0000878161,-0.000090675,-0.000226607,- 0.000235119,-0.000101259,0.000105479,0.000265703,0.000277638,0.000120318,-0.000126014,- 0.000318913,-0.000334555,-0.000145459,0.000152751,0.000387389,0.000407035,0.000177171,- 0.000186186,-0.000472349,-0.000496314,- 0.000215976,0.00022685,0.000575094,0.000603722,0.000262434,-0.000275315,-0.000697038,- 0.000730702,-0.000317159,0.00033221,0.000839738,0.000878855,0.000380831,-0.000398235,- 0.00100494,-0.00104998,-0.000454219,0.000474185,0.00119462,0.00124613,0.000538208,- 0.000560979,-0.00141109,-0.00146971,- 0.000633833,0.000659697,0.00165708,0.00172356,0.000742329,-0.000771633,-0.00193586,- 0.00201113,-0.000865196,0.000898366,0.00225145,0.00233666,0.00100429,-0.00104186,- 0.00260885,-0.00270545,-0.00116194,0.00120458,0.00301444,0.00312429,0.00134114,- 0.00138974,-0.00347646,-0.00360199,-0.0015458,0.00160153,0.00400579,0.00415026,0.00178116,- 0.00184558,-0.00461713,-0.004785,-0.00205434,0.00212963,0.00533079,0.00552834,0.00237534,- 0.00246463,-0.00617569,-0.006412,-0.00275862,0.00286649,0.00719432,0.00748305,0.00322583,- 0.00335934,-0.0084517,-0.00881436,-0.00381089,0.00398144,0.0100525,0.0105248,0.00457004,- 0.00479728,-0.012176,-0.0128223,-0.00560359,0.00592447,0.0151574,0.0161053,0.0071094,- 0.0076023,-0.0197024,-0.0212454,-0.00953894,0.0104034,0.0275931,0.0305833,0.0141941,- 0.0161227,-0.045,-0.0532711,- 0.0270068,0.0347619,0.11759,0.196093,0.243741,0.243741,0.196093,0.11759,0.0347619,-0.0270068,- 0.0532711,-0.045,-0.0161227,0.0141941,0.0305833,0.0275931,0.0104034,-0.00953894,-0.0212454,- 0.0197024,-0.0076023,0.0071094,0.0161053,0.0151574,0.00592447,-0.00560359,-0.0128223,- 0.012176,-0.00479728,0.00457004,0.0105248,0.0100525,0.00398144,-0.00381089,-0.00881436,- 0.0084517,-0.00335934,0.00322583,0.00748305,0.00719432,0.00286649,-0.00275862,-0.006412,- 0.00617569,-0.00246463,0.00237534,0.00552834,0.00533079,0.00212963,-0.00205434,-0.004785,- 0.00461713,-0.00184558,0.00178116,0.00415026,0.00400579,0.00160153,-0.0015458,-0.00360199,- 0.00347646,-0.00138974,0.00134114,0.00312429,0.00301444,0.00120458,-0.00116194,- 0.00270545,-0.00260885,-0.00104186,0.00100429,0.00233666,0.00225145,0.000898366,- 0.000865196,-0.00201113,-0.00193586,- 0.000771633,0.000742329,0.00172356,0.00165708,0.000659697,-0.000633833,-0.00146971,- 0.00141109,-0.000560979,0.000538208,0.00124613,0.00119462,0.000474185,-0.000454219,- 0.00104998,-0.00100494,-0.000398235,0.000380831,0.000878855,0.000839738,0.00033221,- 0.000317159,-0.000730702,-0.000697038,- 0.000275315,0.000262434,0.000603722,0.000575094,0.00022685,-0.000215976,-0.000496314,- 0.000472349,-0.000186186,0.000177171,0.000407035,0.000387389,0.000152751,-0.000145459,- 0.000334555,-0.000318913,-0.000126014,0.000120318,0.000277638,0.000265703,0.000105479,- 0.000101259,-0.000235119,-0.000226607,- 0.000090675,0.0000878161,0.000205885,0.000200526,0.0000811504,-0.0000795429,-0.000188868,- 0.0001864,-0.0000764706; L = Lengthb; Lh = FloorL/2; ts = Range0, L - 1*Ts; ListPlotTransposets/Ts, b, Filling - Axis, 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 第 3 頁 共 12 頁 AxesLabel - “t/Ts“, “h(n)“, PlotRange - All, PlotStyle - PointSize0.005 B = 2 Fourierb, FourierParameters - -1, -1; B1 /= 2; BA = AbsB1 ; Lh; CurlyPhi = ArgB1 ; Lh; F = Range0, Lh - 1*(fs/L); ListPlotTransposeF, BA, Filling - Axis, PlotStyle - PointSize0.005, PlotRange - All, AxesLabel - “f/Hz“, “A(f)“ ListPlotTransposeF, CurlyPhi, Filling - Axis, PlotStyle - PointSize0.005, PlotRange - All, AxesLabel - “f/Hz“, “CurlyPhi(f)“ 3.1.3 構(gòu)造信號(hào)構(gòu)造信號(hào) A = 10, 5, 4, 1, 0.5, 7, 2, 4; f = 2, 6, 8, 10, 13, 15, 18, 20; CurlyPhi0 = 0, 0, -Pi/2, Pi/4, -Pi/8, Pi/12, 0, Pi/20; LA = LengthA; xt_ = Sum Ak Cos2 Pi fk t + CurlyPhi0k, k, 1, LA; (*p1=Plotxt,t,0,2.56*) sL = 2000; m = 100; ts2 = Range0, sL - 1*Ts; xn = xts2; p2 = ListPlotTransposets2, xn1 ; m,(*FillingRuleAxis*) Joined - True, PlotStyle - PointSize0.005, AxesLabel - “t/Ts“, “x(n)“ 程序運(yùn)行結(jié)果如下: 濾波器單位沖激響應(yīng)時(shí)域波形如圖3.1: 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 第 4 頁 共 12 頁 圖3.1濾波器單位沖激響應(yīng)時(shí)域波形圖 濾波器幅頻特性如圖3.2: 圖3.2濾波器幅頻特性波形圖 濾波器相頻特性如圖 3.3: 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 第 5 頁 共 12 頁 圖 3.3 濾波器相頻特性波形圖 待處理信號(hào)濾波器波形如圖 3.4: 0.20.40.60.81.0 tTs 20 10 10 20 30 xn 圖 3.4 待處理信號(hào)濾波器波形 3.2 因果序列卷積的各種算法編程實(shí)現(xiàn)因果序列卷積的各種算法編程實(shí)現(xiàn) 3.2.1 ListConvolve 算法程序設(shè)計(jì)算法程序設(shè)計(jì) Clearx, y, a, b, c, d, u, v, w; tk = 0, 0, 0, 3600, 60, 1; 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 第 6 頁 共 12 頁 x = TableRandom, k, 5000; y = TableRandom, k, 8000; t3 = Date; z3 = ListConvolvex, y, 1, -1, 0; t4 = Date; ListPlotz3, Filling - Axis, AspectRatio - 1/4, PlotRange - All, PlotStyle - PointSize0.0001, AxesOrigin - 0, 0 Print“引用ListConvolve函數(shù)方法計(jì)算耗時(shí): “, (t4 - t3).tk, “sec“; 運(yùn)行結(jié)果: 引用ListConvolve函數(shù)方法計(jì)算耗時(shí): 0.*10-8sec 運(yùn)行結(jié)果: 圖3.5ListConvolve算法運(yùn)行圖 In3:= Clearu, v, w, x, y, z, p; ListConvolveu, v, w, x, y, z, p, 1, -1, 0 Out4= u x, v x + u y, w x + v y + u z, p u + w y + v z, p v + w z, p w 3.2.2 矩陣乘法算法程序設(shè)計(jì)矩陣乘法算法程序設(shè)計(jì) Clearx, y, z, s; tk = 0, 0, 0, 3600, 60, 1; x = TableCosPi*k/171 Exp-0.0002 k, k, 0, 79; y = Table(0.999)k, k, 0, 59; t1 = Date; z2 = ListConvolvex, y, 1, -1, 0; t3 = Date; n = Lengthx; m = Lengthy; L = n + m - 1; y0 = PadRighty, L; tem = y0; m = tem; Forj = 1, j 1/4, PlotRange - All, PlotStyle - PointSize0.0001 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 第 7 頁 共 12 頁 Print“按矩陣乘法計(jì)耗時(shí): “, (Date - t1).tk, “secnListConvolve用時(shí)“, (t3 - t1).tk, “sec“; 20406080100120140 10 20 30 40 50 圖3.6矩陣乘法算法運(yùn)行圖 按矩陣乘法計(jì)算耗時(shí): 0.1080062sec ListConvolve用時(shí)0.0010000sec 3.2.3 矢量乘法算法程序設(shè)計(jì)矢量乘法算法程序設(shè)計(jì) Clear“x*“, “y*“, “z*“, s; tk = 0, 0, 0, 3600, 60, 1; x = TableCosPi*k/171 Exp-0.0002 k, k, 0,9999 ; y = Table(0.999)k, k, 0, 9; t1 = Date; m = Lengthx; n = Lengthy; L = m + n - 1; z = ConstantArray0, L; s = JoinConstantArray0, m - 1, yn ; 1 ; -1; Forj = 1, j All, PlotStyle - PointSize0.006, Red; p2 = ListPlotz21 ; 15, PlotRange - All, PlotStyle - PointSize0.003, Blue; Showp1, p2 Print“矢量乘法用時(shí)“, (t2 - t1).tk, “secnListConvolve用時(shí)“, (t3 - t2).tk, “sec“; 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 第 8 頁 共 12 頁 2468101214 2 4 6 8 10 圖3.7矢量乘法算法運(yùn)行結(jié)果 矢量乘法用時(shí)12.3147043sec ListConvolve用時(shí)0.0840048sec 4 各種卷積算法的比較 4.1 ListConvolve 算法本身的比較算法本身的比較 表4.1ListConvolve算法不同長(zhǎng)序列耗時(shí)比較 算法名稱 序列(長(zhǎng)度) 耗時(shí) 1 2 5000 8000 極短,可以忽略不計(jì) ListConvolve算法 10000 20000 0.0156000sec 50000 80000 0.0468001sec ListConvolve算法本身是一種非常高速的算法,在序列數(shù)值不大的情況下算法耗時(shí)幾乎看不到, 但在其對(duì)序列長(zhǎng)度差異很大的序列進(jìn)行卷積運(yùn)算時(shí)還是會(huì)有耗時(shí)上的差異,即長(zhǎng)序列耗時(shí)大于短序 列耗時(shí)。 4.2 卷積的三種算法比較卷積的三種算法比較 表 4.2 卷積的三種算法比較 算法名稱 序列(長(zhǎng)度) 耗時(shí) 時(shí)間,空間復(fù)雜度 1 2 ListConvolve算法 極短 都很小 矩陣乘法算法 5000 8000 無法計(jì)算 空間復(fù)雜度過大 矢量乘法算法 17.1444299sec 都一般 根據(jù)本次畢業(yè)設(shè)計(jì)對(duì)以上三種算法的對(duì)比,可以明顯體現(xiàn)出ListConvolve算法的高速性,當(dāng)然, 陜西理工學(xué)院畢業(yè)設(shè)計(jì) 第 9 頁 共 12 頁 這三種算法也各有利弊,對(duì)于ListConvolve算法當(dāng)然就用來計(jì)算長(zhǎng)序列數(shù)值大的這類序列卷積,而 矩陣算法則用于學(xué)者做研究,至于矢量空間算法一般不太用。所以,在選擇運(yùn)用那種算法時(shí),要結(jié) 合它們的特點(diǎn)來選擇。 5 應(yīng)用實(shí)例 n=63; wp=0.3; fp=wp*fs/2; b=fir1(n,wp); save “zj009“ b; cd h=-0.000798867,-0.000390074,0.000436796,0.00110852,0.000950907,-0.000255716,-0.0017797,- 0.00217304,-0.000463884,0.00253415,0.00424909,0.00232847,-0.00275781,-0.00706324,- 0.005921,0.00152669,0.0100959,0.0116871,0.00237057,-0.0123678,-0.0199452,- 0.0106029,0.0123052,0.0312472,0.026339,-0.00694942,-0.0481115,-0.0601859,- 0.0138395,0.088797,0.208625,0.289004,0.289004,0.208625,0.088797,-0.0138395,-0.0601859,- 0.0481115,-0.00694942,0.026339,0.0312472,0.0123052,-0.0106029,-0.0199452,- 0.0123678,0.00237057,0.0116871,0.0100959,0.00152669,-0.005921,-0.00706324,- 0.00275781,0.00232847,0.00424909,0.00253415,-0.000463884,-0.00217304,-0.0017797,- 0.000255716,0.000950907,0.00110852,0.000436796,-0.000390074,-0.000798867; fs=100;Ts=1/fs; ta=0;tb=5; n=(tb-ta)/Ts; ts=Range0,n-1*Ts; L=Lengthh; ts1=Range0,L-1*Ts; ListPlotTransposets1,h,Filling-Axis,PlotRange-All,PlotStyle-PointSize0.008,AxesLabel- “Subscriptt, k/s“,“h(Subscriptt, k)“ F=Range0,L/2-1*fs/L; H=Fourierh,FourierParameters-1,-1; ListPlotTransposeF,AbsH1;L/2,Joined-True,PlotStyle-PointSize0.008,AxesLabel- “f/Hz“,“|H(f)|“ st_=10Cos10Pi t+5Cos40Pi t+2Cos80Pi t+0.5Cos100Pi t; sn=sts; ListPlotTransposets,sn1;100,Filling-Axis,PlotRange-All,PlotStyle- PointSize0.008,AxesLabel-“Subscriptt, k/s“,“s(Subscriptt, k)“ zn=ListConvo
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 找一下漢語拼音教學(xué)課件
- 小學(xué)教學(xué)課件封面
- 散兵介紹課件
- 教學(xué)課件電商
- 琥珀教學(xué)設(shè)計(jì)課件
- 《國(guó)家》音樂教學(xué)課件
- 日產(chǎn)換新車活動(dòng)方案
- 春季保養(yǎng)活動(dòng)方案
- 春天居家手工活動(dòng)方案
- 春節(jié)活動(dòng)剪紙活動(dòng)方案
- 2024年湘潭電化產(chǎn)投控股集團(tuán)有限公司招聘筆試沖刺題(帶答案解析)
- GB/T 13077-2024鋁合金無縫氣瓶定期檢驗(yàn)與評(píng)定
- 公路基本建設(shè)工程概算、預(yù)算編制辦法交公路發(fā)〔1996〕
- 杜邦十大安全管理理念課件
- T-QGCML 306-2022 鈉離子電池正極材料
- 《公共政策概論》形考任務(wù)1參考答案
- 國(guó)家基本公共衛(wèi)生服務(wù)項(xiàng)目績(jī)效考核課件
- 吃動(dòng)兩平衡快樂又健康課件
- 私女性密培訓(xùn)課件
- 關(guān)于畜牧創(chuàng)業(yè)計(jì)劃書
- 九宮格智力數(shù)獨(dú)200題(題+答案)
評(píng)論
0/150
提交評(píng)論