




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 通信系統(tǒng)仿真 大作業(yè)報告專 業(yè): 通信工程 班 級: 120412 姓 名: 肖夢 學(xué) 號: 120412112 2015年11月19日1 matlab概論簡介和應(yīng)用領(lǐng)域32 matlab在系統(tǒng)控制中的應(yīng)用82.1 線性控制系統(tǒng)的數(shù)學(xué)模型82.2 線性系統(tǒng)的傳遞函數(shù)模型92.3 線性系統(tǒng)的狀態(tài)方程模型92.4 線性系統(tǒng)的零極點模型92.5 線性離散時間系統(tǒng)的數(shù)學(xué)模型102.6 線性控制系統(tǒng)的分析102.7 線性系統(tǒng)的穩(wěn)定性112.8 系統(tǒng)內(nèi)部穩(wěn)定性分析122.9 可控性與可觀性分析132.10 線性系統(tǒng)的可控性分析132.11 線性系統(tǒng)的可觀性分析132.12 二階系統(tǒng)的時域分析142.13
2、 二階系統(tǒng)的頻域分析162.14 MATLAB語言及工具箱182.15 MATLAB語言的變量與常量182.16 數(shù)據(jù)結(jié)構(gòu)193 matlab在數(shù)據(jù)分析中的應(yīng)用193.1 數(shù)值方法的特點203.2 數(shù)制與浮點運算203.3 誤差分析203.4 下面對于范數(shù)和極限的討論203.5 解線性方程組的直接法213.6 線性代數(shù)方程組的迭代解法223.7 矩陣特征值問題的求解223.8 非線性方程求根253.9 函數(shù)插值263.10 樣條函數(shù)273.11 一致逼近與平方逼近273.12 數(shù)值積分283.11 冪法的Matlab程序283.12 Newton法304 matlab在信號處理中的應(yīng)用314.
3、1 基本信號的表示及可視化314.2 MATLAB在采樣與波形發(fā)生的應(yīng)用324.3 MATLAB在數(shù)字濾波器中的應(yīng)用345 matlab在通信系統(tǒng)中的應(yīng)用385.1 DSB調(diào)制與解調(diào)385.2 AM調(diào)制和解調(diào)405.3 SSB調(diào)制和解調(diào)415.4 FM調(diào)制與解調(diào)435.5 載波幅度調(diào)制(PAM)445.6 差分相位調(diào)制和解調(diào)(DPSK)455.7 信道容量475.8 信道編碼486 matlab在金融系統(tǒng)中的應(yīng)用496.1 最小二乘法在MATLAB中的實現(xiàn)496.2 二次趨勢面516.3 三次趨勢面526.4 平滑異同平均線(MACD)536.5 威廉指標(biāo)546.6 相對強弱指標(biāo)556.6 單
4、變量線性隨機(jī)模型567 參看文獻(xiàn)58matlab在系統(tǒng)控制中的應(yīng)用參考文獻(xiàn)58matlab在數(shù)據(jù)分析中的應(yīng)用參考文獻(xiàn)58matlab在信號處理中的應(yīng)用參考文獻(xiàn)58Matlab在通信系統(tǒng)中的應(yīng)用參考文獻(xiàn)59matlab在金融系統(tǒng)中的應(yīng)用參考文獻(xiàn)591 matlab概論簡介和應(yīng)用領(lǐng)域MATLAB是由美國mathworks公司發(fā)布的主要面對科學(xué)計算、可視化以及交互式程序設(shè)計的高科技計算環(huán)境。它將數(shù)值分析、矩陣計算、科學(xué)數(shù)據(jù)可視化以及非線性動態(tài)系統(tǒng)的建模和仿真等諸多強大功能集成在一個易于使用的視窗環(huán)境中,為科學(xué)研究、工程設(shè)計以及必須進(jìn)行有效數(shù)值計算的眾多科學(xué)領(lǐng)域提供了一種全面的解決方案,并在很大程度上
5、擺脫了傳統(tǒng)非交互式程序設(shè)計語言(如C、Fortran)的編輯模式,代表了當(dāng)今國際科學(xué)計算軟件的先進(jìn)水平。 MATLAB和Mathematica、Maple并稱為三大數(shù)學(xué)軟件。它在數(shù)學(xué)類科技應(yīng)用軟件中在數(shù)值計算方面首屈一指。MATLAB可以進(jìn)行矩陣運算、繪制函數(shù)和數(shù)據(jù)、實現(xiàn)算法、創(chuàng)建用戶界面、連 matlab開發(fā)工作界面接其他編程語言的程序等,主要應(yīng)用于工程計算、控制設(shè)計、信號處理與通訊、圖像處理、信號檢測、金融建模設(shè)計與分析等領(lǐng)域。 MATLAB的基本數(shù)據(jù)單位是矩陣,它的指令表達(dá)式與數(shù)學(xué)、工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,F(xiàn)ORTRAN等語
6、言完成相同的事情簡捷得多,并且MATLAB也吸收了像Maple等軟件的優(yōu)點,使MATLAB成為一個強大的數(shù)學(xué)軟件。在新的版本中也加入了對C,F(xiàn)ORTRAN,C+ ,JAVA的支持??梢灾苯诱{(diào)用,用戶也可以將自己編寫的實用程序?qū)氲組ATLAB函數(shù)庫中方便自己以后調(diào)用,此外許多的MATLAB愛好者都編寫了一些經(jīng)典的程序,用戶可以直接進(jìn)行下載就可以用。一種語言之所以能如此迅速地普及,顯示出如此旺盛的生命力,是由于它有著不同于其他語言的特點。正如同F(xiàn)ORTRAN和C等高級語言使人們擺脫了需要直接對計算機(jī)硬件資源進(jìn)行操作一樣,被稱作為第四代計算機(jī)語言的MATLAB,利用其豐富的函數(shù)資源,使編程人員從繁
7、瑣的程序代碼中解放出來。MATLAB的最突出的特點就是簡潔。MATLAB用更直觀的、符合人們思維習(xí)慣的代碼,代替了C和FORTRAN語言的冗長代碼。MATLAB給用戶帶來的是最直觀、最簡潔的程序開發(fā)環(huán)境。以下簡單介紹一下MATLAB的主要特點。語言簡潔緊湊,使用方便靈活,庫函數(shù)極其豐富。MATLAB程序書寫形式自由,利用其豐富的庫函數(shù)避開繁雜的子程序編程任務(wù),壓縮了一切不必要的編程工作。由于庫函數(shù)都由本領(lǐng)域的專家編寫,用戶不必?fù)?dān)心函數(shù)的可靠性??梢哉f,用MATLAB進(jìn)行科技開發(fā)是站在專家的肩膀上。具有FORTRAN和C等高級計算機(jī)語言知識的讀者可能已經(jīng)注意到,如果用FORTRAN或C語言去編寫
8、程序,尤其當(dāng)涉及矩陣運算和畫圖時,編程會很麻煩。例如,如果用戶想求解一個線性代數(shù)方程,就得編寫一個程序塊讀入數(shù)據(jù),然后再使用一種求解線性方程的算法(例如追趕法)編寫一個程序塊來求解方程,最后再輸出計算結(jié)果。在求解過程中,最麻煩的要算第二部分。解線性方程的麻煩在于要對矩陣的元素作循環(huán),選擇穩(wěn)定的算法以及代碼的調(diào)試都不容易。即使有部分源代碼,用戶也會感到麻煩,且不能保證運算的穩(wěn)定性。解線性方程的程序用FORTRAN和C這樣的高級語言編寫至少需要好幾十行。再如用雙步QR方法求解矩陣特征值,如果用FORTRAN編寫,至少需要四百多行,調(diào)試這種幾百行的計算程序可以說很困難。以下為用MATLAB編寫以上兩
9、個小程序的具體過程。用MATLAB求解下列方程,并求矩陣A的特征值。 其中:解為:x=Ab;設(shè)A的特征值組成的向量為e,e=eig(A)??梢?,MATLAB的程序極其簡短。更為難能可貴的是,MATLAB甚至具有一定的智能水平,比如上面的解方程,MATLAB會根據(jù)矩陣的特性選擇方程的求解方法,所以用戶根本不用懷疑MATLAB的準(zhǔn)確性。運算符豐富。由于MATLAB是用C語言編寫的,MATLAB提供了和C語言幾乎一樣多的運算符,靈活使用MATLAB的運算符將使程序變得極為簡短,具體運算符見附表。MATLAB既具有結(jié)構(gòu)化的控制語句(如for循環(huán)、while循環(huán)、break語句和if語句),又有面向?qū)ο?/p>
10、編程的特性。語法限制不嚴(yán)格,程序設(shè)計自由度大。例如,在MATLAB里,用戶無需對矩陣預(yù)定義就可使用。程序的可移植性很好,基本上不做修改就可以在各種型號的計算機(jī)和操作系統(tǒng)上運行。MATLAB的圖形功能強大。在FORTRAN和C語言里,繪圖都很不容易,但在MATLAB里,數(shù)據(jù)的可視化非常簡單。MATLAB還具有較強的編輯圖形界面的能力。MATLAB的缺點是,它和其他高級程序相比,程序的執(zhí)行速度較慢。由于MATLAB的程序不用編譯等預(yù)處理,也不生成可執(zhí)行文件,程序為解釋執(zhí)行,所以速度較慢。功能強勁的工具箱是MATLAB的另一重大特色。MATLAB包含兩個部分:核心部分和各種可選的工具箱。核心部分中有
11、數(shù)百個核心內(nèi)部函數(shù)。其工具箱又可分為兩類:功能性工具箱和學(xué)科性工具箱。功能性工具箱主要用來擴(kuò)充其符號計算功能、圖示建模仿真功能、文字處理功能以及與硬件實時交互功能。功能性工具箱能用于多種學(xué)科。而學(xué)科性工具箱是專業(yè)性比較強的,如control、toolbox、signal processing toolbox、communication toolbox等。這些工具箱都是由該領(lǐng)域內(nèi)的學(xué)術(shù)水平很高的專家編寫的,所以用戶無需編寫自己學(xué)科范圍內(nèi)的基礎(chǔ)程序,而直接進(jìn)行高、精、尖的研究。下表列出了MATLAB的核心部分及其工具箱等產(chǎn)品系列的主要應(yīng)用領(lǐng)域。MATLAB的工具箱及主要應(yīng)用領(lǐng)域工 具 箱 名 稱應(yīng)
12、 用 領(lǐng) 域系統(tǒng)控制數(shù)據(jù)分析信號處理通信系統(tǒng)金融系統(tǒng)工程數(shù)學(xué)土木工程圖形可視化MATLAB核心NotebookMATLAB ComplierMATLAB C Math LibrarySimulinkSymbolic MathSimulink AcceleratorChemometricsCommunicationControl SystemFinanceSystem IdentificationFuzzy LogicalHigh-order Spectral Analysis工 具 箱 名 稱應(yīng) 用 領(lǐng) 域系統(tǒng)控制數(shù)據(jù)分析信號處理通信系統(tǒng)金融系統(tǒng)工程數(shù)學(xué)土木工程圖形可視化Image Proce
13、ssingModel Predictive ControlNGA FoundationNeural NetworkMMLE3 IdentificationLMI ControlModel Predictive ControlQFT Control DesignRobust ControlSplineStatisticsDSP BlocksetFixed-Point BlocksetNonlinear Control Design BlocksetReal-time WorkshopRTW Ada ExtentionWaveletPartial Differential EquationOpti
14、mizationStateflowSignal ProcessingMu Analysis and SynthesisFrequency Domain IdentificaionMap tools源程序的開放性。開放性也許是MATLAB最受人們歡迎的特點。除內(nèi)部函數(shù)以外,所有MATLAB的核心文件和工具箱文件都是可讀可改的源文件,用戶可通過對源文件的修改以及加入自己的文件構(gòu)成新的工具箱。2 matlab在系統(tǒng)控制中的應(yīng)用2.1 線性控制系統(tǒng)的數(shù)學(xué)模型控制系統(tǒng)的數(shù)學(xué)模型,在控制系統(tǒng)研究中是相當(dāng)重要的,要對系統(tǒng)進(jìn)行仿真處理,首先應(yīng)該知道系統(tǒng)的數(shù)學(xué)模型,然后才可以對之進(jìn)行模擬;知道了系統(tǒng)的模型,才可
15、以在此基礎(chǔ)上設(shè)計一個合適的控制器,使得原系統(tǒng)的響應(yīng)達(dá)到預(yù)期的效果。所以說控制系統(tǒng)的數(shù)學(xué)模型是系統(tǒng)分析和設(shè)計的基礎(chǔ)。目前大部分控制系統(tǒng)分析設(shè)計的算法都需要假設(shè)系統(tǒng)的模型已知,而獲得數(shù)學(xué)模型有兩種方法:其一是從已知的物理規(guī)律出發(fā),用數(shù)學(xué)推導(dǎo)的方法建立起系統(tǒng)的數(shù)學(xué)模型,另外一種方法是由實驗數(shù)據(jù)擬合系統(tǒng)的數(shù)學(xué)模型。一般線性系統(tǒng)控制理論科學(xué)和研究中,經(jīng)常將控制系統(tǒng)分為連續(xù)系統(tǒng)和離散系統(tǒng),描述線性連續(xù)系統(tǒng)常用的描述方式是傳遞函數(shù)和狀態(tài)方程,相應(yīng)地離散系統(tǒng)可以用離散傳遞函數(shù)和離散狀態(tài)方程表示。連續(xù)線性系統(tǒng)用傳遞函數(shù)表示方法和用狀態(tài)方程表示方法的不同在于他們使用在不同的場合,前者是經(jīng)典控制的常用模型,后者是現(xiàn)
16、代控制理論的基礎(chǔ),在MATLAB中可以用不同的方法來表示。除了這兩種描述方法以外,還常用零極點形式來表示連續(xù)線性系統(tǒng)模型。2.2 線性系統(tǒng)的傳遞函數(shù)模型連續(xù)動態(tài)系統(tǒng)一般是由微分方程來描述的,而線性系統(tǒng)又是以線性常微分方程來描述的。當(dāng)系統(tǒng)用傳遞函數(shù)表示如下所示時: (1)其中bi與ai為常數(shù)。這樣的系統(tǒng)又稱為線性時不變系統(tǒng),系統(tǒng)的分母多項式又稱為系統(tǒng)的特征多項式。在MATLAB中可以分別表示完分子和分母多項式后,再利用控制系統(tǒng)工具箱的tf()函數(shù)就可以用一個變量表示傳遞函數(shù)G: >> MATLAB還支持另一種特殊的傳遞函數(shù)的輸入格式,在這樣的輸入方式下,應(yīng)該用s=tf('s&
17、#39;)先定義傳遞函數(shù)的算子,然后用類似數(shù)學(xué)表達(dá)式的形式直接輸入系統(tǒng)的傳遞函數(shù)模型。2.3 線性系統(tǒng)的狀態(tài)方程模型當(dāng)系統(tǒng)是用狀態(tài)方程描述時,MATLAB要用到另一種表示函數(shù)的方法,例如系統(tǒng)用狀態(tài)方程的表示如下所示: (2) 此系統(tǒng)的狀態(tài)方程模型可以用下面的語句直接建立起來:2.4 線性系統(tǒng)的零極點模型零極點模型實際上是傳遞函數(shù)的另一種表現(xiàn)形式,對原系統(tǒng)傳遞函數(shù)的分子和分母分別進(jìn)行分解因式處理,則可得到系統(tǒng)的零極點模型為 (3) 在MATLAB下表示零極點模型的方法很簡單,先用向量的形式輸入系統(tǒng)的零點和極點,然后調(diào)用zpk()函數(shù)就可以輸入這個零極點模型了。 2.5 線性離散時間系統(tǒng)的數(shù)學(xué)模型
18、一般的單變量離散系統(tǒng)可以由下面的差分方程來表示。 (4)在MATLAB語言中,輸入離散系統(tǒng)的傳遞函數(shù)模型和連續(xù)系統(tǒng)傳遞函數(shù)模型一樣簡單,只需分別按要求輸入系統(tǒng)的分子和分母多項式,就可也以利用tf()函數(shù)將其輸入到MATLAB環(huán)境。和連續(xù)傳遞函數(shù)不同的是,同時還需要輸入系統(tǒng)的采樣周期T,具體語句如下: >> 用MATLAB可以表示的數(shù)學(xué)模型很多,出了上面的例子以外還有很多,如方框圖描述系統(tǒng)的簡化、系統(tǒng)模型的相互裝換、控制系統(tǒng)的狀態(tài)方程實現(xiàn)問題、線性系統(tǒng)的模型降階、線性系統(tǒng)的模式辨識等,通過MATLAB都可以很好的解決和簡化這類問題。2.6 線性控制系統(tǒng)的分析如果建立起了系統(tǒng)的數(shù)學(xué)模型
19、,就可以對系統(tǒng)的性質(zhì)進(jìn)行分析了。對線性系統(tǒng)來說,最重要的性質(zhì)是其穩(wěn)定性,在控制理論發(fā)展初期,相關(guān)的理論成果都是有關(guān)系統(tǒng)穩(wěn)定性的,最初的判定方法有,連續(xù)系統(tǒng)的Routh表、Hurwitz矩陣法,以及離散系統(tǒng)的Jury判據(jù)等。但是有了MATLAB后對系統(tǒng)的性質(zhì)分析就變得容易多了。2.7 線性系統(tǒng)的穩(wěn)定性在系統(tǒng)特性研究中,系統(tǒng)的穩(wěn)定性是最重要的指標(biāo),如果系統(tǒng)穩(wěn)定,則可以進(jìn)一步分析系統(tǒng)的其他性能,如果系統(tǒng)不穩(wěn)定,系統(tǒng)則不能直接應(yīng)用,需要引進(jìn)控制器來使得系統(tǒng)的穩(wěn)定。用系統(tǒng)的狀態(tài)方程判斷系統(tǒng)的穩(wěn)定性是看系統(tǒng)狀態(tài)方程中A矩陣的特征根是否均有負(fù)實部,在線性系統(tǒng)工具箱中,求取一個線性定常系統(tǒng)的特征根只需用p=e
20、ig(G)函數(shù)即可,其中p返回系統(tǒng)的全部特征根。不論系統(tǒng)的模型G是傳遞函數(shù)、狀態(tài)方程還是零極點模型,且不論系統(tǒng)是連續(xù)或離散的,都可以用這樣簡單的命令求解系統(tǒng)的全部特征根,這樣就使系統(tǒng)的穩(wěn)定性判定變得十分容易。另外,由pzmap(G)函數(shù)能用圖形的方式繪制出系統(tǒng)所有特征根在s復(fù)平面上的位置,所以判定連續(xù)系統(tǒng)是否穩(wěn)定只須看一下系統(tǒng)所有極點在s復(fù)平面上是否均位于虛軸左側(cè)即可。同樣還能用pzmap(G)命令在復(fù)平面上繪制系統(tǒng)所有零極點的位置,用圖示的方法也可以立即判定離散系統(tǒng)的穩(wěn)定性。例:(1)狀態(tài)方程系統(tǒng)的穩(wěn)定性u 解析階:u 穩(wěn)定性:A矩陣的特征根均有負(fù)實部(2)離散系統(tǒng)的穩(wěn)定性nn 離散系統(tǒng)時域
21、響應(yīng)解析階:n 穩(wěn)定性判定:所有特征根均在單位圓內(nèi)Routh判據(jù)只能得出是否穩(wěn)定,進(jìn)一步信息得不出來,如系統(tǒng)是否振蕩。離散系統(tǒng)無法由Routh方法直接判定,得借助于Jury判據(jù),更復(fù)雜。穩(wěn)定性分析方法不統(tǒng)一。2.8 系統(tǒng)內(nèi)部穩(wěn)定性分析在反饋控制系統(tǒng)的分析中,為了得到更好的控制效果,僅僅分析系統(tǒng)的輸入輸出穩(wěn)定性是不夠的,因為這樣的穩(wěn)定性分析只能保證由穩(wěn)定輸入激勵下的輸出信號的有界性,但不能保證系統(tǒng)的內(nèi)部信號都是有界的。若系統(tǒng)的內(nèi)部信號變成無界的,即使原系統(tǒng)穩(wěn)定,也將破壞原系統(tǒng)的物理結(jié)構(gòu)。如下圖1.1所示的反饋系統(tǒng)結(jié)構(gòu)圖1.1 反饋系統(tǒng)結(jié)構(gòu)果上系統(tǒng)中從輸入信號(r,d,n)到內(nèi)部輸出信號(x1,x
22、2,x3)的所有9個閉環(huán)系統(tǒng)函數(shù)都是穩(wěn)定的,則該系統(tǒng)是內(nèi)部穩(wěn)定的??梢宰C明,這9個傳遞函數(shù)可以表示成逐一去判斷每個式子傳遞函數(shù)的穩(wěn)定性無疑是很繁瑣的,所以可以根據(jù)內(nèi)部穩(wěn)定性定理,用簡單方法直接判定。該定理為:閉環(huán)系統(tǒng)內(nèi)部穩(wěn)定的充要條件為:Ø 傳遞函數(shù)沒有Res0的零點。Ø 乘積中沒有滿足Res0的零極點對消。用MATLAB可以編寫出判定反饋系統(tǒng)內(nèi)部穩(wěn)定性的函數(shù)如下:>>function key=instable(G,Gc,H) GG=minreal(feedback(G*Gc,H); Go=H*G*Gc;Go1=minreal(Go); P=eig(GG);z0
23、=eig(Go);z1=eig(Go1); zz=setdiff(z0,z1); if (G.Ts>1),%離散系統(tǒng)判定 key=any(abs(p)>1); if key=0,key=2*any(abs(zz)>1);end else,%連續(xù)系統(tǒng)判定 key=any(real(p)>0); if key=0,key=2*any(real(zz)>0;end end2.9 可控性與可觀性分析線性系統(tǒng)的可控性和客觀性是基于狀態(tài)方程控制理論的基礎(chǔ),這些性質(zhì)為系統(tǒng)的狀態(tài)反饋設(shè)計、觀測器的設(shè)計等提供了依據(jù)。2.10 線性系統(tǒng)的可控性分析系統(tǒng)的可控性就是指系統(tǒng)內(nèi)部的狀態(tài)是不
24、是可以由外部輸出信號控制的性質(zhì),對線性時不變系統(tǒng)來說,如果系統(tǒng)某個狀態(tài)可控,則可以由外部信號任意控制。如果系統(tǒng)中所有的狀態(tài)都是可控的,則稱該系統(tǒng)為完全可控的。對系統(tǒng)進(jìn)行可控性判定時,可以構(gòu)造起一個可控判定矩陣 (5) 若矩陣Tc是滿秩矩陣,則系統(tǒng)為完全可控的。如果該矩陣不是滿秩矩陣,則它的秩為系統(tǒng)的可控狀態(tài)的個數(shù)。用MATLAB求矩陣的秩可以用算法rank(T)得出,還可以用MATLAB構(gòu)造系統(tǒng)的可控性判定矩陣,用Tc=ctrb(A,B)函數(shù)就可以建立起可控性判定矩陣Tc。2.11 線性系統(tǒng)的可觀性分析系統(tǒng)的可觀測性就是指系統(tǒng)內(nèi)部的狀態(tài)是不是可以由系統(tǒng)輸出信號重建起來的性質(zhì),對線性時不變系統(tǒng)來
25、說,如果系統(tǒng)某個狀態(tài)可觀測,則可以由輸入輸出信號重建起來。如果系統(tǒng)中所有的狀態(tài)都是可觀的,則稱該系統(tǒng)為完全可觀測的系統(tǒng)。從定義判定系統(tǒng)的可觀性是很繁瑣的,可以構(gòu)造起一個可觀測性判定矩陣由控制理論可知,系統(tǒng)的可觀測性問題和系統(tǒng)的可控性問題是對偶關(guān)系,若研究系統(tǒng)的可觀測性問題可以將其轉(zhuǎn)換成系統(tǒng)的可控性問題,故前面所述的可控性分析的全部方法均可以擴(kuò)展到系統(tǒng)的可觀測性研究中。當(dāng)然,可觀測性分析也有自己的相應(yīng)函數(shù),如對應(yīng)于可控性的ctrb( )和ctrbf( )有obsv( )和obsvf( ),對應(yīng)于gram(G,'c')有g(shù)ram(G,'o')等,也可以利用這些函數(shù)直
26、接進(jìn)行可觀性分析與變換。2.12 二階系統(tǒng)的時域分析假設(shè)系統(tǒng)的開環(huán)模型為,并假設(shè)有單位負(fù)反饋構(gòu)造出整個閉環(huán)控制系統(tǒng)模型,則定義為系統(tǒng)的阻尼比,n為系統(tǒng)的自然震蕩頻率,這時閉環(huán)系統(tǒng)模型可以寫成 (6) 根據(jù)線性系統(tǒng)解析解的理論,不難導(dǎo)出這樣二階系統(tǒng)的階躍響應(yīng)y(t)的解析解的一般形式為 (7) 其中。根據(jù)的不同取值,或考慮d的情況,可以進(jìn)一步將解析解解釋為:l 若=0,則系統(tǒng)響應(yīng)可以簡化為,稱為無阻尼振蕩。l 若0<<1,則系統(tǒng)響應(yīng)稱為欠阻尼振蕩,系統(tǒng)響應(yīng)為 l 若=1,則系統(tǒng)的階躍響應(yīng)為,稱為臨界阻尼響應(yīng)。l 若>1,則階躍響應(yīng)稱為過阻尼響應(yīng),系統(tǒng)響應(yīng)為 選取n=1rad/s
27、,而選擇不同的阻尼比,則可以由下面的命令立即得出系統(tǒng)在不同阻尼比下的階躍響應(yīng)曲線。>>step(G)y,t=step(G)y,t=step(G,tf)y=step(G,t)通過一個例子來演示一個線性系統(tǒng)的時域分析:例:給出一個二階線性系統(tǒng)如下 對其進(jìn)行時域分析過程如下:l 系統(tǒng)的階躍響應(yīng)曲線>>num=4;,den=1,3,4; G=tf(num,den); step(G) % 求解系統(tǒng)的階躍響應(yīng)曲線圖1.2 系統(tǒng)的階躍響應(yīng)曲線由dcgain(G)可以直接得出系統(tǒng)的穩(wěn)態(tài)值為1。(穩(wěn)態(tài)值即系統(tǒng)在時間很大時的系統(tǒng)輸出極限值,對于不穩(wěn)定系統(tǒng)來說穩(wěn)態(tài)值趨于無窮大。)由系統(tǒng)的階躍
28、響應(yīng)曲線可以得到:1. 超調(diào)量(系統(tǒng)的峰值與穩(wěn)態(tài)值的差距) 2. 上升時間(一般定義為系統(tǒng)階躍響應(yīng)從穩(wěn)態(tài)值的10%到90%的這段時間) 3. 調(diào)節(jié)時間(一般指系統(tǒng)的階躍響應(yīng)進(jìn)入穩(wěn)態(tài)值附近的一個帶中,比如2%或5%的帶后不再出來時所需的時間) l 系統(tǒng)的根軌跡曲線>>rlocus(G),grid %繪制系統(tǒng)的根軌跡圖1.3 系統(tǒng)的根軌跡曲線由系統(tǒng)函數(shù)可知系統(tǒng)有兩個極點,沒有零點,因此系統(tǒng)的根軌跡曲線是兩條向遠(yuǎn)處無限延伸的曲線。對上述系統(tǒng)進(jìn)行頻域分析如下:2.13 二階系統(tǒng)的頻域分析對系統(tǒng)餓傳遞函數(shù)模型G(s)來說,若用頻率j取代復(fù)變量s,則可以將G(j)看成增益,這個增益是復(fù)數(shù)量,是
29、的函數(shù)。描述這個復(fù)數(shù)變量有幾種方法,根據(jù)表示方法的不同,就可以構(gòu)造出不同的頻域響應(yīng)曲線:l 系統(tǒng)的Nyquist曲線>>nyquist(G),grid %求系統(tǒng)的Nyquist曲線圖1.4 系統(tǒng)的Nyquist曲線 從得出的Nyquist圖可知整個Nyquist圖并不包圍(-1,j0)點,根據(jù)Nyquist定理可以斷定,該系統(tǒng)是穩(wěn)定的。l 系統(tǒng)的Bode圖由Bode圖可以觀察系統(tǒng)的相頻特性>>bode(G) %繪制系統(tǒng)的伯德圖圖1.5 系統(tǒng)的伯德圖 上圖它也可以得出系統(tǒng)是穩(wěn)定的。l 系統(tǒng)的Nichols圖>>figure,nichols(G),grid %繪
30、制系統(tǒng)的Nichols圖圖1.6 系統(tǒng)的Nichols曲線由系統(tǒng)的Nichols圖可以得到系統(tǒng)的幅值裕度、頻率、相角裕度和剪切頻率,MATLAB >>gm,pm,wg,wp=margin(G)也可以直接得出系統(tǒng)的幅值裕度、頻率、相角裕度和剪切頻率為gm =Inf pm=-180 wg=Inf wp=02.14 MATLAB語言及工具箱MATLAB語言是當(dāng)前國際上自動控制領(lǐng)域的首選計算機(jī)語言,也是很多理工科專業(yè)最適合的計算機(jī)數(shù)學(xué)語言,MATLAB語言簡潔性高,具有科學(xué)運算能力、繪圖功能,有龐大的工具箱與模塊集,還具有強大的動態(tài)系統(tǒng)仿真功能。MATLAB包括擁有數(shù)百個內(nèi)部函數(shù)的主包和三
31、十幾種工具包。工具包又可以分為功能性工具包和學(xué)科工具包。功能工具包用來擴(kuò)充MATLAB的符號計算,可視化建模仿真,文字處理及實時控制等功能。學(xué)科工具包是專業(yè)性比較強的工具包,控制工具包,信號處理工具包,通信工具包等都屬于此類。 2.15 MATLAB語言的變量與常量MATLAB語言變量名應(yīng)該由一個字母引導(dǎo),后面可以跟字母、數(shù)字、下劃線等。在MATLAB中變量名是區(qū)分大小寫的,也就是說,Abc和ABc兩個變量名表達(dá)的是不同的,在使用MATLAB語言編輯程序時一定要注意。在MATLAB語言中還為特定常數(shù)保留了一些名稱,雖然這些常量都可以重新賦值,但建議在編輯時應(yīng)盡量避免對這些量重新賦值。l esp
32、 機(jī)器的浮點運算誤差限。PC機(jī)上esp默認(rèn)的值為 l i和j 若i或j量不被改寫,則它們表示純虛數(shù)量jl Inf 無窮大量+的MATLAB表示,也可以寫成inf。同樣地,-可以表示為-Inf。l NaN 不定式,通常由0/0運算、Inf/Inf及其他可能的運算得出。l pi 圓周率的雙精度浮點表示。l lasterr 存放最新一次的錯誤信息。l laastwarn 存放最新的警告信息。2.16 數(shù)據(jù)結(jié)構(gòu)強大方便的數(shù)值運算功能是MATLAB語言的最顯著特色。為保證較高的計算精度,MATLAB語言中最常用的數(shù)值量為雙精度浮點數(shù),占8個字節(jié),其MATLAB表示為double()。MATLAB還定義了
33、“符號”型變量,以區(qū)別于常規(guī)的數(shù)值型變量,可以用于公式推導(dǎo)和數(shù)學(xué)問題的解析解法。進(jìn)行解釋運算前需要首先將采用的變量申明為符號標(biāo)量,這需要用syms命令來實現(xiàn)。該語句具體的用法syms var_list var_props,其中,var_list給出需要申明的變量列表,可以同時申明多個變量,中間用空格隔開,而不是用逗號等分隔。符號型數(shù)值可以通過變精度算法函數(shù)vpa( )以任意指定的精度顯示出來。該函數(shù)的調(diào)用格式為vpa(A),或vpa(A,n)。MATLAB還有其他的數(shù)據(jù)結(jié)構(gòu):字符串?dāng)?shù)據(jù)、多為數(shù)組、單元數(shù)組、類與對象等。3 matlab在數(shù)據(jù)分析中的應(yīng)用 首先要有可靠的理論分析,以確保算法在理論
34、上的收斂性和數(shù)值上的穩(wěn)定性.其次要對計算的結(jié)果進(jìn)行誤差估計,以確定其是否滿足精度,還要考慮算法的運行效率即算法的運算量和存儲量.以及編寫Matlab程序?qū)崿F(xiàn)在計算機(jī)上的應(yīng)用,使其能在一些問題上更快地收斂3.1 數(shù)值方法的特點1) 數(shù)值結(jié)果要能算得出來,其次結(jié)果應(yīng)有一定的精度2) 誤差滿足指定的值3) 計算時間應(yīng)盡可能少 3.2 數(shù)制與浮點運算1、數(shù)制即在計算機(jī)中一個數(shù)通??梢杂檬M(jìn)制、二進(jìn)制、八進(jìn)制等表示.2、浮點數(shù)即用整數(shù)部分加小數(shù)部分來表示一個實數(shù).對于二進(jìn)制的轉(zhuǎn)換舉例說明: =3.3 誤差分析誤差的具體數(shù)值無法確定,設(shè)法給出其絕對值的一個上界絕對誤差 相對誤差 %x的相對誤差對于方法的穩(wěn)
35、定:一種數(shù)值方法的傳播誤差應(yīng)該可以控制3.4 下面對于范數(shù)和極限的討論學(xué)習(xí)它主要目的是利用范數(shù)求特征值計算矩陣方程組1向量范數(shù) 2矩陣范數(shù)設(shè)是中的向量范數(shù),對于任何,若定義則是矩陣A的范數(shù),得到的范數(shù)即為向量范數(shù)的從屬范數(shù).1范數(shù)的從屬范數(shù) 范數(shù)的從屬范數(shù) 2范數(shù)的從屬范數(shù) 另:矩陣的F范數(shù)與譜范數(shù)均與2范數(shù)相容但F范數(shù)不是從屬范數(shù),從屬范數(shù)是所有相容范數(shù)中的最小者. 對于任何的充分必要條件是. 3.5 解線性方程組的直接法1.回迭過程的實現(xiàn): i=n-1,.,1整個回迭過程乘除法運算量為:.2.三對角矩陣是一類很重要的特殊矩陣,在數(shù)學(xué)和物理學(xué)中有廣泛的應(yīng)用.三對角矩陣的特征,用待定系數(shù)法求解
36、三對角線性方程組的數(shù)值解,并與常用的LU分解法從理論分析和數(shù)據(jù)實驗兩方面進(jìn)行比較,結(jié)果表明,兩者的時間復(fù)雜性前者稍差,而精度兩者則相當(dāng),最后寫出兩者的C程序并運行結(jié)果.接下來用一種簡單和容易實現(xiàn)的方法求出三對角矩陣的行列式,再利用其逆矩陣可以分解成兩個很特殊的矩陣的乘積,給出一種算法實現(xiàn)三對角矩陣的逆的簡便計算.LU分解:設(shè)A的前n-1個順序主子陣非奇異,則存在單位下三角矩陣L及上三角矩陣U使A=LU且分解是唯一的.3.6 線性代數(shù)方程組的迭代解法迭代法發(fā)的一般形式,改寫成,H為矩陣g 向量而定義向量序列;, 為迭代序列解方程組的方法:Jaclbi迭代法和Gauss-Seidel迭代法,超松弛
37、迭代法,對于一般的方程組Ax=b,其中,detA0,記A=D-L-U.D為對角部分 L為嚴(yán)格下三角部分 U嚴(yán)格上三角矩陣.設(shè)方程組 此為Jaclbi迭代法 . i=1,2,.,n;k=1,2,.另外:編程時雙保險,避免死循環(huán)給出值滿足精度,知最大循環(huán)次數(shù).3.7 矩陣特征值問題的求解它包括矩陣特征值和特征向量的計算,而矩陣特征值的計算方法本質(zhì)上都是迭代法.解決問題的方法有乘冪法和反乘冪法.乘冪法的基本公式帶原點位移的反冪法的計算公式在Matlab中的實驗舉例說明:function k,lambda,vk,wc=ydwyfmf(A,v0,jlamb,jd,max1) n,n=size(
38、A); A1=A-jlamb*eye(n);jd=jd*0.1; RAl=det(A1); if RA1=0disp('A-aE的n階行列式n1等于0,所以A-aE不能進(jìn)行LU分解') returnendlambda=0; if RAl=0 for p=1:n h(p)=det(A1(1:p,1:p); end
39、; hl=h(1:n); if h(1,i)=0 disp('因為A-aE的各階主子式等于0,所以A-aE不能進(jìn)行LU分解') return
40、; end end if h(1,i)=0 disp('因為A-aE的各階主子式都不等于0,所以A-aE不能進(jìn)行LU分解') k=1;wc=1;state=1;vk=v0;
41、160; while(k<=max1)&(state=1) L U=lu(A); Yk=L/Vk; Vk=U/Yk;
42、 m j=max(abs(Vk); mk=m; Vk1=Vk/mk;
43、 Yk1=L/Vk1; Vk1=U/Yk1; m j=max(abs(Vk1); mk1=m;
44、 Vk2=(1/mk1)*Vk1; tzw1=abs(mk-mk1)/mk1); tzw2=abs(mk1-mk);
45、; Txw1=norm(Vk)-norm(Vk1); Txw2=(norm(Vk)-norm(Vk1) rm(Vk1); Txw=min(Txw1,Txw2);tzw=min(tzw1,tzw2);Vk=Vk2;
46、; mk=mk1;wc=max(Txw,tzw);Vk=Vk2;mk=mk1;state=0; if(wc>jd) state=1;
47、 k=k+1;%Vk=Vk2,mk=mk1 endif(Wc<=jd) disp('A-aE的秩R(A-aE)和各階順序主子式值h1,迭代次數(shù)k,按模最小特征值的近似值lambda,特征向量的近似向量Vk,相鄰兩次迭代的誤差Wc如下:'
48、) else disp('A-aE的秩R(A-aE)和各階順序主子式值h1,迭代次數(shù)k已經(jīng)達(dá)到最大迭代次數(shù)max1,按模最小特征值的迭代值lambda,特征向量的迭代向量Vk,相鄰兩次迭代的誤差Wc如下:') endh1,RA1 endend V,D=eig(A,'nobalance'); Vk;k=k-1;Wc;lambdan=jlamb+1/mk1;3.8 非線性方程求根求=0的解,設(shè)為方程的根,即.如果存在正整數(shù)使,且0< ,則稱為他的m重根.當(dāng)在可微時,為的重根的充要條件是是的根.
49、確定根的存在性定理:若在上連續(xù),且,則在上至少有一個根,方法關(guān)于它還有一個重要定理,如果在處二次連續(xù)可微,且,則方法局部平方收斂,如果,則方法局部線性收斂.切線法(Newton法)在Matlab中編程如下:function C,D=newploy(X,Y) n=length(X); D=zeros(n,n); D(:,1)=Y' for j=2:nfor k=j:n D(k,j)=(D(k,j-1)-D(k-1,j-1)/(X(k)-X(k-j+1); endendC=D(n,n); for k=(n-1):-1:1 C=conv(C,poly(X(k); m=length(C); C
50、(m)=C(m)+D(k,k); end3.9 函數(shù)插值插值問題的提法是:假定區(qū)間a,b上的實值函數(shù)f(x)在該區(qū)間上 n+1個互不相同點x0,x1xn 處的值是f (x0),f(xn),要求估算f(x)在a,b中某點x*的值.基本思路是,找到一個函數(shù)P(x),在x0,x1xn 的節(jié)點上與f(x)函數(shù)值相同(有時,甚至一階導(dǎo)數(shù)值也相同),用P(x*)的值作為函數(shù)f(x*)的近似.拉格朗日插值公式對給定的n+1個節(jié)點x0,x1,x2,xn及對應(yīng)的函數(shù)值y0,y1,y2,yn,構(gòu)造一個n次插值多項式:簡單程序示例:x=0.0 0.1 0.195 0.3 0.401 0.5;y=0.39849 0.
51、39695 0.39142 0.38138 0.368120.35206 ;T=interp1(x,y,0.25,'linear')%線性插值(返回結(jié)果T=0.3862) T=interp1(x,y,0.25,'nearest')% 兩點插值(返回結(jié)果T=0.3814)T=interp1(x,y,0.25,'spline') % 三次樣條插值(返回結(jié)果T =0.3867)T=interp1(x,y,0.25,'cubic')%三次插值(返回結(jié)果T =0.3867)3.10 樣條函數(shù)在插值問題中,樣條插值通常比多項式插值好用.用低階
52、的樣條插值能產(chǎn)生和高階的多項式插值類似的效果,并且可以避免被稱為龍格現(xiàn)象的數(shù)值不穩(wěn)定的出現(xiàn).并且低階的樣條插值還具有“保凸”的重要性質(zhì).3.11 一致逼近與平方逼近近似代替又稱為逼近,函數(shù) f(x) 稱為被逼近函數(shù);P(x) 稱為逼近函數(shù),兩者之差稱為逼近的誤差.1、一致逼近(均勻逼近) 以 作為度量誤差f(x)- P(x) 的“大小” 標(biāo)準(zhǔn).2、 平方逼近(均方逼近) 以作為度量誤差f(x)- P(x)的“大小” 標(biāo)準(zhǔn).function c=pf1(f,n,a,b) %c最佳平方逼近多項式的系數(shù)syms x;for i=1:n+1for j=1:n+1A(i,j)=int(x(i+j-2),
53、x,a,b);endB(i)=int(f*x(i-1),x,a,b);endc=inv(A)*B'3.12 數(shù)值積分1.插值型的求積公式:構(gòu)造出的求積, 公式積稱為是插值型求積公式2.牛頓柯特斯公式:設(shè)將積分區(qū)間劃分為n等分,步長 ,選取等距節(jié)點 ,構(gòu)造出的插值型求積公式:稱為牛頓柯特斯公式,式中例x=0:1/8:1;y=x./(4+x.2);trapz(x,y)運行結(jié)果:ans= 0.111402354529553.11 冪法的Matlab程序用冪法計算矩陣的主特征值和對應(yīng)的特征向量的Matlab主程序function k,lambda,Vk,Wc=mifa(A,V0,jd,max1
54、)lambda=0;k=1;Wc =1; ,jd=jd*0.1;state=1; V=V0;while(k<=max1)&(state=1)Vk=A*V; m j=max(abs(Vk); mk=m;tzw=abs(lambda-mk); Vk=(1/mk)*Vk;Txw=norm(V-Vk); Wc=max(Txw,tzw); V=Vk;lambda=mk;state=0;if(Wc>jd)state=1;endk=k+1;Wc=Wc;endif(Wc<=jd)disp('請注意:迭代次數(shù)k,主特征值的近似值lambda,主特征向量的近似向量Vk,相鄰兩次迭
55、代的誤差Wc如下:')elsedisp('請注意:迭代次數(shù)k已經(jīng)達(dá)到最大迭代次數(shù)max1,主特征值的迭代值lambda,主特征向量的迭代向量Vk,相鄰兩次迭代的誤差Wc如下:')endVk=V;k=k-1;Wc; 用冪法計算下列矩陣的主特征值和對應(yīng)的特征向量的近似向量,精度. 解 (1)輸入MATLAB程序A=1 -1;2 4; V0=1,1';k,lambda,Vk,Wc=mifa(A,V0,0.00001,100),V,D = eig (A), Dzd=max(diag(D), wuD= abs(Dzd- lambda), wuV=V(:,2)./Vk,運行
56、后屏幕顯示結(jié)果請注意:迭代次數(shù)k,主特征值的近似值lambda,主特征向量的近似向量Vk,相鄰兩次迭代的誤差Wc如下:k = lambda = Wc =33 3.00000173836804 8.691862856124999e-007Vk = V = wuV =-0.49999942054432 -0.70710678118655 0.44721359549996 -0.894428227562941.00000000000000 0.70710678118655 -0.89442719099992 -0.89442719099992Dzd = wuD =3 1.738368038406435e-006由輸出結(jié)果可看出,迭代33次,相鄰兩次迭代的誤差Wc 8.69 19e-007,矩陣的主特征值的近似值lambda3.000 00和對應(yīng)的特征向量的近似向量Vk (-0.500 00,1.000 00, lambda與例5.1.1中
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 勞動合同勞務(wù)合同范例
- 公司合并協(xié)議合同范本
- 全職合同范本
- 醫(yī)院物業(yè)招聘合同范本
- 加盟快遞押金合同范本
- 單位電線更換維修合同范本
- 聲學(xué)顧問合同范本
- 單位車棚工程合同范本
- cpvc管購買合同范本
- ul認(rèn)證合同范本
- 2025電力物資檢儲配一體化建設(shè)技術(shù)導(dǎo)則
- 新學(xué)期 開學(xué)第一課 主題班會課件
- 民法典合同編講座
- 2024年青島港灣職業(yè)技術(shù)學(xué)院高職單招語文歷年參考題庫含答案解析
- 廣西壯族自治區(qū)公路發(fā)展中心2025年面向社會公開招聘657名工作人員高頻重點提升(共500題)附帶答案詳解
- 大學(xué)轉(zhuǎn)專業(yè)高等數(shù)學(xué)試卷
- DBJ51-T 198-2022 四川省既有民用建筑結(jié)構(gòu)安全隱患排查技術(shù)標(biāo)準(zhǔn)
- 公司廠區(qū)保潔培訓(xùn)
- 江蘇省招標(biāo)中心有限公司招聘筆試沖刺題2025
- 2024年防盜門銷售合同范本
- 支付令申請書(2025版)
評論
0/150
提交評論