




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第2
章
MATLAB語言程序設計基礎薛定宇著《控制系統計算機輔助設計——MATLAB語言與應用》清華大學出版社4/19/20251控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用東北大學信息學院MATLAB語言的簡潔高效性MATLAB語言的科學運算功能MATLAB語言的繪圖功能MATLAB龐大的工具箱與模塊集MATLAB強大的動態系統仿真功能
MATLAB
語言是當前國際上自動控制領域的首選計算機語言,也是很多理工科專業最適合的計算機數學語言,本課程以MATLAB為主要計算機語言。4/19/20252控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用本章主要內容MATLAB程序設計語言基礎基本數學運算MATLAB語言流程控制函數編寫與調試二維圖形繪制三維圖形表示MATLAB語言與現代科學運算4/19/20253控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用
2.1MATLAB程序設計語言基礎MATLAB語言的變量名規則由一個字母引導,后面可以為其他字符區分大小寫Abc
ABc有效MYvar12,MY_Var12
和MyVar12_錯誤的變量名12MyVar,_MyVar12
MATLAB的保留常量eps,i,j,i=sqrt(-1),pi,NaN,Inflastwarn,lasterr
4/19/20254控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用數值型數據結構雙精度數值變量IEEE標準,64位(8字節),11指數位,53數值位和一個符號位
double()函數的轉換其他數據類型uint8,常用于圖像表示和處理,8位int8(),int16(),int32(),uint16(),uint32()4/19/20255控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用符號型變量數據類型符號型,sym(A),常用于公式推導變量聲明采用變精度函數求值【例2-1】求出自然對數底的前300位有效數字4/19/20256控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用符號型變量數據類型例一symsxy=sqrt(x)*cos(x)+4*log(x)diff(y,x)1/2/x^(1/2)*cos(x)-x^(1/2)*sin(x)+4/xlatex(diff(y,x))4/19/20257控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用MATLAB支持的其他數據結構基本數值變量類型:雙精度復數矩陣字符串型數據:用單引號括起來多維數組:是矩陣的直接擴展,多個下標單元數組:將不同類型數據集成到一個變量名下面,用{}表示結構體:A.b,引用也用A.b,不是A->b類與對象:可以定義重載函數4/19/20258控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用MATLAB的基本語句結構直接賦值語句【例2-2】表示矩陣4/19/20259控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-3】試輸入復數矩陣需要避免的語句4/19/202510控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用函數調用語句冒號表達式4/19/202511控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-4】用不同的步距生成(0,p)間向量4/19/202512控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用子矩陣提取基本語句格式【例2-5】子矩陣提取提取A
矩陣全部奇數行,所有列提取A
矩陣3,2,1行、2,3,4列構成子矩陣將A
矩陣左右翻轉,即最后一列排在最前面4/19/202513控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.2基本數學運算2.2.1矩陣的代數運算2.2.2矩陣的邏輯運算2.2.3矩陣的比較運算2.2.4解析結果的化簡與變換2.2.5基本數論運算4/19/202514控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.2.1矩陣的代數運算矩陣表示矩陣轉置數學表示MATLAB
求解4/19/202515控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用矩陣加減法注意其一為標量的情形矩陣乘法數學表示MATLAB表示注意相容性4/19/202516控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用矩陣除法矩陣左除:AX=B,求XMATLAB求解:X=A\B最小二乘解
矩陣右除:XA=B,求XMATLAB求解:X=B/A最小二乘解
4/19/202517控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用矩陣翻轉左右翻轉上下翻轉旋轉90o如何旋轉180o?矩陣乘方
A
為方陣,求
MATLAB實現:4/19/202518控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用點運算矩陣對應元素的直接運算例如4/19/202519控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.2.2矩陣的邏輯運算邏輯變量:當前版本有邏輯變量對double變量來說,非0表示邏輯1邏輯運算(相應元素間的運算)與運算或運算非運算異或運算4/19/202520控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.2.3矩陣的比較運算各種允許的比較關系
>,>=,<,<=,==,~=,find(),all(),any()實例4/19/202521控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.2.4解析結果的化簡與變換其他常用化簡函數【例2-6】4/19/202522控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用返回化簡方法為因式分解方法多項式展開方法變量替換4/19/202523控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-7】由表達式替換
【例2-6】中定義多項式中的
算子。該語句將得出替換的結果:4/19/202524控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.2.5基本數論運算4/19/202525控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-8】對下面的數據進行取整運算
-0.2765,0.5772,1.4597,2.1091,1.191,-1.61874/19/202526控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-9】3x3Hilbert矩陣的有理數變換【例2-10】求和的最大公約數、最小公倍數或4/19/202527控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.3MATLAB語言流程控制2.3.1循環結構for結構while結構4/19/202528控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-11】用循環求解4/19/202529控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-12】求4/19/202530控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-13】求滿足的最小值4/19/202531控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.3.2轉移結構4/19/202532控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用4/19/202533控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-14】用循環和語句求解的最小m4/19/202534控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.3.3開關結構4/19/202535控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用4/19/202536控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用和C語言的區別當開關表達式的值等于某表達式,執行該語句后結束該結構,不用break同時滿足若干個條件之一,則用單元形式otherwise語句,不是default程序的執行結果和各個case順序無關case語句中條件不能重復,否則列在后面的條件將不能執行4/19/202537控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.3.4試探結構全新結構4/19/202538控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.4函數編寫與調試M-函數是MATLAB編程的主流方法除了M-函數外,還可以采用M-script文件M-script適合于小規模運算【例2-15】若最大值不為10000,需修改程序對m和10000值的設置,不適合于M-script4/19/202539控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.4.1MATLAB語言函數的
基本結構
nargin,nargout,varargin,varargout4/19/202540控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-16】前面的要求,m,10000無需修改程序4/19/202541控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-17】編寫一個函數生成若只給出一個輸入參數,則會自動生成一個方陣在函數中給出合適的幫助信息檢測輸入和返回變量的個數4/19/202542控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用4/19/202543控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用4/19/202544控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-18】函數的遞歸調用:階乘4/19/202545控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-19】比較遞歸算法和循環算法在
數列中應用的優劣4/19/202546控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.4.2可變輸入輸出個數【例2-20】可以計算兩個多項式的積用varargin
實現任意多個多項式的積4/19/202547控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.4.3inline函數和匿名函數inline函數,可以免去文件MATLAB7.04/19/202548控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.5二維圖形繪制
2.5.1二維圖形繪制基本語句構造向量:4/19/202549控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用4/19/202550控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用4/19/202551控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-21】4/19/202552控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-22】4/19/202553控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用界面編程中的常用語句:4/19/202554控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.5.2其他二維圖形繪制語句4/19/202555控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-23】繪制極坐標曲線4/19/202556控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-24】在不同的區域繪制正弦信號的不同表示將一個圖形窗口分割成若干個小的區域4/19/202557控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.5.3隱函數繪制及應用隱函數【例2-25】4/19/202558控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.5.4圖形修飾直接采用工具欄文字修飾特殊符號表上下標分別用
^和_表示優越性MATLAB7.0的新功能4/19/202559控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.6三維圖形繪制
2.6.1
三維曲線繪制stem3(),fill3(),bar3()等4/19/202560控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-26】參數方程4/19/202561控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.6.2三維曲面繪制一般曲面繪制其他函數,surfl(),surfc(),waterfall()等高線繪制contour(),contour3()4/19/202562控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-27】繪制的三維表面圖4/19/202563控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-28】繪制該曲線的三維表面圖4/19/202564控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用視角轉換的方法圖形窗口工具欄
2.6.3三維圖形視角設置4/19/202565控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-29】繪制的三視圖4/19/202566控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.7
MATLAB語言與
現代科學運算
1、矩陣的參數化分析矩陣的行列式2.7.1線性代數問題的MATLAB求解4/19/202567控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用Hilbert矩陣的通項為【例2-30】計算10階Hilbert矩陣的行列式4/19/202568控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-31】變量的Vandermonde
矩陣的特征多項式4/19/202569控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用矩陣的跡矩陣的秩矩陣的范數只能用于數值解求取4/19/202570控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用矩陣的特征多項式、特征方程與特征根多項式及多項式矩陣的求值4/19/202571控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用矩陣的特征值問題矩陣指數和指數函數矩陣其他函數如4/19/202572控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-32】矩陣的指數和指數函數4/19/202573控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2、矩陣的分解矩陣的相似變換矩陣的三角分解4/19/202574控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用對稱矩陣的Cholesky分解矩陣的正交基矩陣的奇異值分解矩陣的條件數4/19/202575控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用3、方程求解問題及MATLAB實現矩陣求逆矩陣的廣義逆4/19/202576控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用線性方程求解的不同情況求解①如果矩陣A為非奇異方陣,則方程的惟一解為或4/19/202577控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用②若A為奇異方陣,如果A和[A,B]矩陣的秩相等,則線性代數方程有無窮多解③若A和[A,B]矩陣的秩不同,則原方程沒有解,只能用求出方程的最小二乘解基礎解系一個特解4/19/202578控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-33】線形方程組
4/19/202579控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用Lyapunov
方程求解Sylvester方程求解4/19/202580控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用一般Lyapunov
方程和Sylvester方程的解析解函數4/19/202581控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用Riccati方程求解4/19/202582控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2.7.2常微分方程問題的MATLAB求解1、一階常微分方程組的數值解法ode23()、ode45()、ode15s()通用調用格式:4/19/202583控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-34】微分方程組
4/19/202584控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用4/19/202585控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用附加參數的M-函數4/19/202586控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用2、常微分方程的轉換單個高階微分方程ode45(),ode15s()4/19/202587控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用高階微分方程組4/19/202588控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-35】方程4/19/202589控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用4/19/202590控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用【例2-36】3、線性常微分方程的解析求解4/19/202591控制系統計算機輔助設計-MATLAB語言與應用——MATLAB語言與應用4/19/202592控制系統計算機輔助設計-MATLAB語言與應用——MA
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 灑水汽車租賃合同7篇
- 公司合作養殖合同5篇
- 材料采購補充協議范本
- 協辦單位合作協議書范本10篇
- 【正版授權】 ISO/IEC/IEEE 8802-1Q:2024/AMD37:2025 EN Telecommunications and exchange between information technology systems - Requirements for local and metropolitan area networks - Part
- 2025年應急救援與危機管理考試模擬試題及答案
- 2025年數字貨幣與金融監管考試題及答案
- 2025年電子商務專業相關考試題及答案
- 2025年國際關系理論與實踐考試試題及答案
- 2025年全國社會科學專碩入學考試試卷及答案
- 急性心肌梗死診斷和治療
- 2025年武漢鐵路局集團招聘(180人)筆試參考題庫附帶答案詳解
- 殯葬人員勞務合同協議
- 北京開放大學2025年《企業統計》形考作業3答案
- 國內外著名幼兒教育家及其教育理念
- 2025年大數據分析師職業技能測試卷:數據倉庫設計與數據建模實戰試題匯編
- 2025屆福州教育學院附屬中學高考語文四模試卷含解析
- 2025年南京市七下期中英語試卷 (試卷版)
- 國有企業雙重目標導向與雙軌治理機制的研究進展及前景展望
- 浙江省寧波市2024學年第二學期高考與選考模擬考試化學試卷及答案(寧波二模)
- 國開電大軟件工程形考作業3參考答案 (二)
評論
0/150
提交評論