版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、1,數(shù)值計算方法,高云鵬,E-Mail : Tel :湖南大學電氣與信息工程學院,(MATLAB語言版),2,了解數(shù)值計算方法的特點、基本方法及基本原則 掌握誤差、有效數(shù)字的定義及二者之間的關系,第一章小結,3,練習:,2.,3.,4,Matlab 入門,5,追根求源,MATLAB名字由MATrix和 LABoratory 兩詞的前三個字母組合而成。那是20世紀七十年代,時任美國新墨西哥大學計算機科學系主任的Cleve Moler出于減輕學生編程負擔的動機,為學生設計了一組調用LINPACK和EISPACK矩陣軟件工具包庫程序的“通俗易用”的接口,此即用FORTRAN
2、編寫的萌芽狀態(tài)的MATLAB。,1984年由Little、Moler、Steve Bangert合作成立MathWorks公司,并把MATLAB正式推向市場。從這時起,MATLAB的內核采用C語言編寫,而且除原有的數(shù)值計算能力外,還新增了數(shù)據(jù)圖視功能。,6,追根求源,1997年春,MATLAB5.0版問世,緊接著是5.1、5.2,以及和1999年春的5.3版。現(xiàn)今的MATLAB擁有更豐富的數(shù)據(jù)類型和結構、更友善的面向對象、更加快速精良的圖形可視、更廣博的數(shù)學和數(shù)據(jù)分析資源、更多的應用開發(fā)工具。,7,1 Matlab 操作基礎,2 變量與函數(shù),3 數(shù)組,4 矩陣,6 Matlab 編程,7 Ma
3、tlab 繪圖,5 多項式,8,第1章 MATLAB操作基礎1.1 MATLAB概述1.2 MATLAB的運行環(huán)境與安裝1.3 MATLAB集成環(huán)境1.4 MATLAB幫助系統(tǒng),9,1.1 MATLAB概述,1.1.1 MATLAB的發(fā)展 1984年,MATLAB第1版(DOS版) 1992年,MATLAB4.0版 1997年,MATLAB 5.0版 1999年,MATLAB 5.3版 2000年,MATLAB 6.0版 2002年,MATLAB 6.5版 2004年,MATLAB 7.0版 2005年, MATLAB 7.1版 2006年(上半年),MATLAB 2006a (7.2版) 2
4、006年(下半年) ,MATLAB 2006b (7.3版) 2007年(上半年),MATLAB 2007a (7.4版) 2007年(下半年) ,MATLAB 2007b (7.5版) 2008年(上半年),MATLAB 2008a (7.6版) 2008年(下半年) , MATLAB 2008b (7.7版) 2009年(上半年),MATLAB 2009a (7.8版) 2009年(下半年) , MATLAB 2009b (7.9版),1.1.2 MATLAB的主要功能1數(shù)值計算和符號計算功能MATLAB以矩陣作為數(shù)據(jù)操作的基本單位,還提供了十分豐富的數(shù)值計算函數(shù)。MATLAB和著名的符號
5、計算語言Maple相結合,使得MATLAB具有符號計算功能。,10,1.1.2 MATLAB的主要特點,(1)具有豐富的數(shù)學功能,包括矩陣各種運算。如:正交變換、三角分解、特征值、常見的特殊矩陣等。,包括各種數(shù)學運算功能。如:數(shù)值微分、數(shù)值積分、插值、求極值、方程求根、FFT 、常微分方程的數(shù)值解等。,包括各種特殊函數(shù)。如:貝塞爾函數(shù)、勒讓德函數(shù)、伽碼函數(shù)、貝塔函數(shù)、橢圓函數(shù)等。,11,(2)具有很好的圖視系統(tǒng),可方便地畫出兩維和三維圖形。,圖形用戶界面GUI制作工具,可以制作用戶菜單和控件。使用者可以根據(jù)自己的需求編寫出滿意的圖形界面。,高級圖形處理。如:色彩控制、句柄圖形、動畫等。,12,
6、(3)可以直接處理聲言和圖形文件。,(4)具有若干功能強大的應用工具箱。,聲音文件。如: WAV文件(例:wavread,sound等)。,圖形文件。如: bmp 、gif 、 pcx 、tif 、jpeg等文件。,如:SIMULINK、COMM、DSP、 SIGNAL等16種工具箱。,13,(5)使用方便,具有很好的擴張功能。,(6)具有很好的幫助功能,可以M文件轉變?yōu)楠毩⒂谄脚_的EXE可執(zhí)行文件。,使用MATLAB語言編寫的程序可以直接運行,無需編譯。,提供十分詳細的幫助文件(PDF 、HTML 、demo文件)。,聯(lián)機查詢指令:help指令(例:help elfun,help exp,h
7、elp simulink),lookfor關鍵詞(例: lookfor fourier )。,MATLAB的應用接口程序API是MATLAB提供的十分重要的組件 ,由 一系列接口指令組成 。用戶就可在FORTRAN或C中 , 把MATLAB當作計算引擎使用 。,14,1.1.3 初識MATLAB,例1-1 繪制正弦曲線和余弦曲線。x=0:0.5:360*pi/180;plot(x,sin(x),x,cos(x); 例1-2 求方程 3x4+7x3 +9x2-23=0的全部根。p=3,7,9,0,-23; %建立多項式系數(shù)向量x=roots(p) %求根,例1-3 求積分 quad(x.*log
8、(1+x),0,1); 例1-4 求解線性方程組。a=2,-3,1;8,3,2;45,1,-9; b=4;2;17; x=inv(a)*b,15,1.2 MATLAB的運行環(huán)境與安裝,1.2.1 MATLAB的運行環(huán)境硬件環(huán)境:(1) CPU (2) 內存(3) 硬盤(4) CD-ROM驅動器和鼠標。軟件環(huán)境:(1) Windows 98/NT/2000 或Windows XP(2) 其他軟件根據(jù)需要選用,16,1.2.2 MATLAB的安裝安裝MATLAB 6.5系統(tǒng),需運行系統(tǒng)自帶的安裝程序setup.exe,可以按照安裝提示依次操作。,17,1.3 MATLAB集成環(huán)境,1.3.1 啟動
9、與退出MATLAB集成環(huán)境1MATLAB系統(tǒng)的啟動與一般的Windows程序一樣,啟動MATLAB系統(tǒng)有3種常見方法:(1)使用Windows“開始”菜單。(2)運行MATLAB系統(tǒng)啟動程序matlab.exe。(3) 利用快捷方式。,18,當MATLAB安裝完畢并首次啟動時,展現(xiàn)在屏幕上的界面為MATLAB的默認界面,如右圖所示。,19,啟動MATLAB后,將進入MATLAB 6.5集成環(huán)境。MATLAB 6.5集成環(huán)境包括MATLAB主窗口、命令窗口(Command Window)、工作空間窗口(Workspace)、命令歷史窗口(Command History)、當前目錄窗口(Curre
10、nt Directory)和啟動平臺窗口(Lauch Pad)。,20,2MATLAB系統(tǒng)的退出要退出MATLAB系統(tǒng),也有3種常見方法:(1) 在MATLAB主窗口File菜單中選擇Exit MATLAB命令。(2) 在MATLAB命令窗口輸入Exit或Quit命令。(3) 單擊MATLAB主窗口的“關閉”按鈕。,21,1.3.2 主窗口MATLAB主窗口是MATLAB的主要工作界面。主窗口除了嵌入一些子窗口外,還主要包括菜單欄和工具欄。1菜單欄在MATLAB 6.5主窗口的菜單欄,共包含F(xiàn)ile、Edit、View、Web、Window和Help 6個菜單項。,22,(1) File菜單項
11、:File菜單項實現(xiàn)有關文件的操作。(2) Edit菜單項:Edit菜單項用于命令窗口的編輯操作。(3) View菜單項:View菜單項用于設置MATLAB集成環(huán)境的顯示方式。,23,(4) Web菜單項:Web菜單項用于設置MATLAB的Web操作。(5) Window菜單項:主窗口菜單欄上的Window菜單,只包含一個子菜單Close all,用于關閉所有打開的編輯器窗口,包括M-file、Figure、Model和GUI窗口。(6) Help菜單項:Help菜單項用于提供幫助信息。,24,2工具欄MATLAB 6.5主窗口的工具欄共提供了10個命令按鈕。這些命令按鈕均有對應的菜單命令,但
12、比菜單命令使用起來更快捷、方便。,25,1.3.3 命令窗口 在命令窗口中輸入MATLAB的命令和數(shù)據(jù)后按回車鍵,立即執(zhí)行運算并顯示結果。 MATLAB在命令窗口中的語句形式為: 變量表達式; 說明:命令窗口中的每個命令行前會出現(xiàn)提示符“”,沒有“”符號的行則是顯示的結果。,26,例1-1 在命令窗口中輸入不同的命令和數(shù)值,并查看其顯示方式。 a=0.5 a = 0.5000 b=sin b = sin if a1 c=true %如果a1則c為true end c = 1,練習,27,一般來說,一個命令行輸入一條命令,命令行以回車結束。但一個命令行也可以輸入若干條命令,各命令之間以逗號分隔。
13、若一命令后帶有分號,matlab不顯示命令的結果。 例如p=15,m=35,28,如果一個命令行很長,一個物理行之內寫不下,可以在第一個物理行之后加上3個小黑點并按下回車鍵,然后接著下一個物理行繼續(xù)寫命令的其他部分。3個小黑點稱為續(xù)行符,即把下面的物理行看作該行的邏輯繼續(xù)。 在MATLAB里,有很多的控制鍵和方向鍵可用于命令行的編輯。調出下一行命令,調出上一行命令,29,表1-7常用標點練習: a=1 2;. 3 4 a=hello%字符串,30,數(shù)值計算結果的顯示格式 : 一種方法是在參數(shù)設置對話框 的“Numeric Format”欄設置數(shù)據(jù)的顯示格式。 另一種方法是直接在命令窗口中使用“
14、format”命令來進行數(shù)值顯示格式的設置: format 格式描述,31,例1-3 使用format函數(shù)在命令窗口中顯示運算結果。 a=sin(60*pi/180) a = 0.8660 format long a a = 0.86602540378444 format short e a a = 8.6603e-001 程序分析: long格式為15位數(shù)字顯示,short e為5位科學計數(shù)顯示。,練習,32,1.3.4 工作空間窗口工作空間是MATLAB用于存儲各種變量和結果的內存空間。在該窗口中顯示工作空間中所有變量的名稱、大小、字節(jié)數(shù)和變量類型說明,可對變量進行觀察、編輯、保存和刪除。
15、,33,用來設置當前目錄,并顯示當前目錄下的M文件、MAT文件、MDL文件等文件信息,窗口中包括文件類型(File Type)、文件大?。⊿ize)、最后修改(Last Modified)時間和文件的說明信息(Description)等。,1.3.5 當前目錄窗口和搜索路徑 1當前目錄窗口,34,查看工作目錄下文件的相關信息的常用命令如下: what:列出當前目錄下的M、MAT、MEX文件清單。(ops) dir:顯示當前目錄或指定當前目錄下的文件。 cd 路徑:改變或顯示當前工作目錄;路徑可省略,省略時為顯示當前工作目錄;cd .表示回到上一級目錄(空格.)。 type:顯示文件內容。 de
16、lete:刪除文件。 which 文件名:指出M文件、MEX文件、工作空間變量、內置函數(shù)或Simulink模型所在的目錄。(box),練習,35,2MATLAB的搜索路徑 當用戶在MATLAB命令窗口輸入一條命令后,MATLAB按照一定次序尋找相關的文件?;镜乃阉鬟^程是:(1) 檢查該命令是不是一個變量。(2) 檢查該命令是不是一個內部函數(shù)。(3) 檢查該命令是否當前目錄下的M文件。(4) 檢查該命令是否MATLAB搜索路徑中其他目錄下的M文件。,36,用戶可以將自己的工作目錄列入MATLAB搜索路徑,從而將用戶目錄納入MATLAB系統(tǒng)統(tǒng)一管理。設置搜索路徑的方法有: (1) 用path命令
17、設置搜索路徑。例如,將用戶目錄c:mydir加到搜索路徑下,可在命令窗口輸入命令:path(path,c:mydir),37,(2) 用對話框設置搜索路徑 在MATLAB的File菜單中選Set Path命令或在命令窗口執(zhí)行pathtool命令,將出現(xiàn)搜索路徑設置對話框。通過Add Folder或Add with Subfolder命令按鈕將指定路徑添加到搜索路徑列表中。在修改完搜索路徑后,則需要保存搜索路徑。,38,1.3.6 命令歷史記錄窗口 在默認設置下,歷史記錄窗口中會自動保留自安裝起所有用過的命令的歷史記錄,并且還標明了使用時間,從而方便用戶查詢。而且,通過雙擊命令可進行歷史命令的再
18、運行。如果要清除這些歷史記錄,可以選擇Edit菜單中的Clear Command History命令。,39,在默認設置下,該窗口會顯示自安裝以來所有使用過命令的歷史記錄,并標明每次開啟MATLAB的時間。,40,1.3.7 啟動平臺窗口和Start按鈕 MATLAB 6.5的啟動平臺窗口可以幫助用戶方便地打開和調用MATLAB的各種程序、函數(shù)和幫助文件。MATLAB 6.5主窗口左下角還有一個Start按鈕,單擊該按鈕會彈出一個菜單,選擇其中的命令可以執(zhí)行MATLAB產(chǎn)品的各種工具,并且可以查閱MATLAB包含的各種資源。,41,1.3.8 MATLAB文件格式,MATLAB 的常用文件有.
19、m、.fig、.mdl、 .mat、.mex、.prj、.p等類型 。 1. 程序文件 程序文件即M文件(M-File),其文件的擴展名為.m。 2. 圖形文件 圖形文件(Figure)的擴展名為.fig。 3. 模型文件 模型文件(Model)擴展名為.mdl,可以在“File”菜單中創(chuàng)建Model時生成.mdl文件。,42,4. 數(shù)據(jù)文件 數(shù)據(jù)文件即MAT文件,其文件的擴展名為.mat。 (1)把工作空間中的數(shù)據(jù)存入MAT文件 save 文件名 變量1 變量2 參數(shù) (2)從數(shù)據(jù)文件中裝載變量到工作空間 load 文件名 變量1 變量2 還可以通過打開Import Data窗口來從MAT文
20、件中將變量裝載到Workspace 。,43,5. 可執(zhí)行文件 可執(zhí)行文件即MEX文件,其文件的擴展名為.mex。 6. 項目文件 項目文件的擴展名為.prj。 7. P碼文件 P碼文件即偽代碼文件,是M文件被調用后在內存中生成的內部偽代碼。,44,1.4 MATLAB幫助系統(tǒng),1.4.1 幫助窗口進入幫助窗口可以通過以下3種方法:(1) 單擊MATLAB主窗口工具欄中的Help按鈕。(2) 在命令窗口中輸入helpwin、helpdesk或doc。(3) 選擇Help菜單中的“MATLAB Help”選項。,45,1.4.2 幫助命令MATLAB幫助命令包括help、lookfor以及模糊查
21、詢。1help命令在MATLAB 6.5命令窗口中直接輸入help命令將會顯示當前幫助系統(tǒng)中所包含的所有項目,即搜索路徑中所有的目錄名稱。同樣,可以通過help加函數(shù)名來顯示該函數(shù)的幫助說明。,46,2lookfor命令 help命令只搜索出那些關鍵字完全匹配的結果,lookfor命令對搜索范圍內的M文件進行關鍵字搜索,條件比較寬松。lookfor命令只對M文件的第一行進行關鍵字搜索。若在lookfor命令加上-all選項,則可對M文件進行全文搜索。,47,3模糊查詢 MATLAB 6.0以上的版本提供了一種類似模糊查詢的命令查詢方法,用戶只需要輸入命令的前幾個字母,然后按Tab鍵,系統(tǒng)就會列
22、出所有以這幾個字母開頭的命令。,48,1.4.3 使用幫助瀏覽器 幫助主題(Contents)、索引(Index) 、搜索(Search)和演示(Demos)四個面板來查找?guī)椭畔ⅲ?Contents面板為可展開的樹形結構,向用戶提供全方位系統(tǒng)幫助的向導圖; Index面板是MATLAB提供的術語索引表,可以查找命令、函數(shù)和專用術語等。 Search面板是通過關鍵詞來查找全文中與之匹配的章節(jié)條目,Index只在專用術語表中查找而Search的搜索是在整個HTML文件中進行的,因此其覆蓋面更寬。 Demos面板為MATLAB提供了Demo演示。,49,50,1.4.4 遠程幫助系統(tǒng) 在MathW
23、orks公司的主頁()上可以找到很多有用的信息,國內的一些網(wǎng)站也有豐富的信息資源。,51,練習:,在命令窗口中輸入以下命令,并查看顯示的圖形。 a=1 2 3 4 b=5 6 7 8 c=a+b*i plot(c),52,練習:,在MATLAB中_用于括住字符串。 A. , B. ; C. D. “,答案: C,53,練習:,在MATLAB的命令窗口中執(zhí)行_命令,使數(shù)值5.3顯示為5.300000000000000e+000。 A. format long B. format long e C. format short D. format short e,答案: B,54,練習:,在MATL
24、AB的命令窗口中執(zhí)行“x”,關于MATLAB的搜索順序,下面說法正確的是_ A. 搜索路徑窗口中所有路徑的先后順序是隨意的; B首先到搜索路徑窗口中的路徑中去搜索“x”; C首先在工作空間搜索“x”; D首先在工作空間搜索“x.m”文件,答案: C,55,2.1變量 MATLAB中變量的命名規(guī)則: (1)變量名必須是不含空格的單個詞; (2)變量名區(qū)分大小寫; (3)變量名最多不超過63個字符; (4)變量名必須以字母打頭,之后可以是任意字母、數(shù)字或下劃線,變量名中不允許使用標點符號.,第2章 變量與函數(shù),56,特殊變量表,特殊變量,取,值,ans,用于結果的缺省變量名,pi,圓周率,eps,
25、flops,浮點運算數(shù),inf,無窮大,如,1/0,NaN,不定量,如,0/0,i,,,j,i=j=,nargin,所用函數(shù)的輸入變量數(shù)目,nargout,所用函數(shù)的輸出變量數(shù)目,realmin,realmax,正的極小值2.2204e-16,最大的正實數(shù)1.7977e+308,最小的正實數(shù)2.2251e-308,57,Matlab最常用的變量有數(shù)值數(shù)組(double array)和字符串(char array)兩類,所有數(shù)值數(shù)組變量均以雙精度(double)方式存儲。, a=2+3i a = 2.0000 + 3.0000i a1=I am a teacher a1 = I am a tea
26、cher A=1 2 ;3 4 A = 1 2 3 4,占64位 (8字節(jié)),其中11個指數(shù)位,53個數(shù)值位和一個符號位. 表示的數(shù)據(jù)范圍,MATLAB按下面顯示規(guī)則顯示數(shù)據(jù): 1)在缺省情況下,當結果為整數(shù),作為整數(shù)顯示;當結果為實數(shù),以小數(shù)后4位的精度近似顯示。 2)如果結果中的有效數(shù)字超出了這一范圍,以科學計數(shù)法顯示結果。 format命令改變顯示格式,常用的的格式有 long (16位) bank(2個十進制位) hex(十六進制) short(缺省) short e(5位加指數(shù)) +(符號) long e(16位加指數(shù)) rat(有理數(shù)近似) 詳細見:help format doc
27、format,58,2.2數(shù)學運算符號及標點符號,例如 a=1 2 3; b=4 5 6; c=5; a+b ans = 5 7 9 a+c ans = 6 7 8 a*c ans = 5 10 15 a.*c ans = 5 10 15 a./b ans = 0.2500 0.4000 0.5000 a.b ans = 4.0000 2.5000 2.0000 a.b ans = 1 32 729,59,2.3 復數(shù)和復數(shù)矩陣,Matlab 把復數(shù)作為一個整體處理(而不必像其他程序語言,將實部和虛部分開處理)。虛數(shù)單位用預定義變量i或j表示。 復數(shù)z=a+bi 直角坐標表示和極坐標表示之間轉
28、換的matlab指令如下: real(z) 給出復數(shù)z的實部 imag(z) 給出復數(shù)z的虛部 abs(z) 給出復數(shù)z的模 angle(z) 給出復數(shù)z的相角,60,2.4 數(shù)學函數(shù),注意: x也可以是數(shù)組!,如 x=0:pi/5:2*pi , sin(x),61,MATLAB的函數(shù)文件也以 .M 格式保存。 但是這類文件的第一行必須是一特殊字符function開始,格式為 function 因變量名=函數(shù)名(自變量名) 函數(shù)值的獲得必須通過具體的運算實現(xiàn),并賦給因變量.,2.5 M文件,M文件的建立方法 1. 在Matlab中,點:File-New-M-file 2. 在編輯窗口中輸入程序
29、內容 3. 點File-Save,存盤。,Matlab的應用程序以 .M 文件格式保存。分M文件和M函數(shù)兩種:M文件即命令文件,是用戶為解決問題自己編制的程序;M函數(shù)即函數(shù)文件,是一種子程序,一般由其它程序調用。,函數(shù)或程序怎么建立、保存?,62,例:定義函數(shù) f(x)=2x2+5x 的步驟,function f=fun(x) f=2*(x2)+5*x,1. 建立函數(shù)文件:fun.m,2. 可以直接使用函數(shù)fun.m,例如:計算 f(3.2), 只需在Matlab命令窗口鍵入命令: x=3.2 fun(x),不需要C語言類似的編譯過程!,63,3.1 創(chuàng)建簡單的數(shù)組,第3章 數(shù) 組,x=a b
30、 c d e f 創(chuàng)建包含指定元素的行向量,x=first:last 創(chuàng)建從first開始,加1計數(shù),到last結束的行向量,x=first:increment:last 創(chuàng)建從first開始,加increment計數(shù),last結束的行向量,x=linspace(first,last,n) 創(chuàng)建從first開始,到last結束,有n個元素的行向量 y=1:7 y = 1 2 3 4 5 6 7,64,例如:, z=3:2:9 z = 3 5 7 9 v=y,z v = 1 2 3 4 5 6 7 3 5 7 9 u=linspace(2,9,11) u = Columns 1 through
31、6 2.0000 2.7000 3.4000 4.1000 4.8000 5.5000 Columns 7 through 11 6.2000 6.9000 7.6000 8.3000 9.0000,65,3.2 對數(shù)組元素的訪問,(3)直接使用元素編址序號. x(a b c d) 表示提取數(shù)組x的第a、b、c、d個元素構成一個新的數(shù)組 x(a) x(b) x(c) x(d).,(2)訪問一塊元素: x(a :b :c)表示訪問數(shù)組x的從第a個元素開始,以步長為b到第c個元素(但不超過c),b可以為負數(shù),b缺損時為1.,(1)訪問一個元素: x(i)表示訪問數(shù)組x的第i個元素.,例如: x=1
32、:2:9 x = 1 3 5 7 9 y=x(2:1:5) y = 3 5 7 9 z=x(1 3 5) z = 1 5 9,66,前面例子中的數(shù)組都是一行數(shù)列,是行方向分布的. 稱之為行向量. 數(shù)組也可以是列向量,它的數(shù)組操作和運算與行向量是一樣的,唯一的區(qū)別是結果以列形式顯示.,產(chǎn)生列向量有兩種方法: 直接產(chǎn)生 例 c=1;2;3;4 轉置產(chǎn)生 例 b=1 2 3 4; c=b 說明:以空格或逗號分隔的元素指定的是不同列的元素,而以分號分隔的元素指定了不同行的元素.,3.3 數(shù)組的方向,67,3.4 數(shù)組的運算,(1)標量-數(shù)組運算 數(shù)組對標量的加、減、乘、除、乘方是數(shù)組的每個元素對該標量
33、施加相應的加、減、乘、除、乘方運算.,設:a=a1,a2,an, c=標量,則:a+c=a1+c,a2+c,an+c a.*c=a1*c,a2*c,an*c a./c= a1/c,a2/c,an/c(右除) a.c= c/a1,c/a2,c/an (左除) a.c= a1c,a2c,anc c.a= ca1,ca2,can,68,(2)數(shù)組-數(shù)組運算 當兩個數(shù)組有相同維數(shù)時,加、減、乘、除、冪運算可按元素對元素方式進行的,不同大小或維數(shù)的數(shù)組是不能進行運算的.,設:a=a1,a2,an, b=b1,b2,bn,則:a+b= a1+b1,a2+b2,an+bn a.*b= a1*b1,a2*b2
34、,an*bn a./b= a1/b1,a2/b2,an/bn a.b=b1/a1,b2/a2,bn/an a.b=a1b1,a2b2,anbn,69,例2-14 使用數(shù)組算術運算法則進行向量的運算。 t=0:pi/3:2*pi;%t為行向量 x=sin(t)*cos(t) ? Error using = mtimes Inner matrix dimensions must agree. x=sin(t).*cos(t) x = 0 0.4330 -0.4330 -0.0000 0.4330 -0.4330 -0.0000 y=sin(t)./cos(t) y = 0 1.7321 -1.73
35、21 -0.0000 1.7321 -1.7321 -0.0000,70,第4章 矩 陣,逗號或空格用于分隔某一行的元素,分號用于區(qū)分不同的行. 除了分號,在輸入矩陣時,按Enter鍵也表示開始一新行. 輸入矩陣時,嚴格要求所有行有相同的列. 例 m=1 2 3 4 ;5 6 7 8;9 10 11 12 p=1 1 1 1 2 2 2 2 3 3 3 3,4.1 矩陣的建立,71,特殊矩陣的建立:,d=eye(m,n) 產(chǎn)生一個m行、n列的單位矩陣,c=ones(m,n) 產(chǎn)生一個m行、n列的元素全為1的矩陣,b=zeros(m,n) 產(chǎn)生一個m行、n列的零矩陣,a= 產(chǎn)生一個空矩陣,當對一
36、項操作無結果時, 返回空矩陣,空矩陣的大小為零.,72,4.2 矩陣中元素的操作,(1)矩陣A的第r行:A(r,:),(2)矩陣A的第r列:A(:,r),(4)取矩陣A的第i1i2行、第j1j2列構成新矩陣:A(i1:i2, j1:j2),(5)以逆序提取矩陣A的第i1i2行,構成新矩陣:A(i2:-1:i1,:),(6)以逆序提取矩陣A的第j1j2列,構成新矩陣:A(:, j2:-1:j1 ),(7)刪除A的第i1i2行,構成新矩陣:A(i1:i2,:)= ,(8)刪除A的第j1j2列,構成新矩陣:A(:, j1:j2)= ,(3)依次提取矩陣A的每一列,將A拉伸為一個列向量:A(:),73
37、,(2)矩陣-矩陣運算 a)元素對元素的運算: 與數(shù)組-數(shù)組運算相同 .* ./ . .,4.3 矩陣的運算,(1)標量-矩陣運算 與標量-數(shù)組運算規(guī)則相同。,b)矩陣對矩陣運算: 矩陣加減法:A+B A-B 矩陣乘法:A*B,矩陣除法: 矩陣左除:AX = B,求 X 。MATLAB 求解:X=AB 若A為非奇異方陣,則 X=A-1B 最小二乘解(若A不是方陣) 矩陣右除:XA = B,求 X。 MATLAB求解:X=B/A 若A為非奇異方陣,則 X=BA-1 最小二乘解(若A不是方陣),74,例2-12 用矩陣除法求方程組的解,已知方程組: 解:X=AB是方程A*X=B的解,將該方程變換成
38、A*X=B的形式。其中: A=2 -3 1;1 -1 1;1 3 1; B=8;7;6; X=AB,練習,75,4.4 矩陣分析4.4.1 對角陣與三角陣1對角陣只有對角線上有非0元素的矩陣稱為對角矩陣,對角線上的元素相等的對角矩陣稱為數(shù)量矩陣,對角線上的元素都為1的對角矩陣稱為單位矩陣。,76,提取矩陣的對角線元素設A為mn矩陣,diag(A)函數(shù)用于提取矩陣A主對角線元素,產(chǎn)生一個具有min(m,n)個元素的列向量。diag(A)函數(shù)還有一種形式diag(A,k),其功能是提取第k條對角線的元素。 構造對角矩陣設V為具有m個元素的向量,diag(V)將產(chǎn)生一個mm對角矩陣,其主對角線元素即
39、為向量V的元素。diag(V)函數(shù)也有另一種形式diag(V,k),其功能是產(chǎn)生一個nn(n=m+k)對角陣,其第k條對角線的元素即為向量V的元素。,77,例2-10 先建立55矩陣A,然后將A的第一行元素乘以1,第二行乘以2,第五行乘以5。,A=17,0,1,0,15;23,5,7,14,16;4,0,13,0,22;10,12,19,21,3;.11,18,25,2,19;D=diag(1:5);D*A %用D左乘A,對A的每行 乘以一個指定常數(shù),78,2三角陣三角陣又進一步分為上三角陣和下三角陣,所謂上三角陣,即矩陣的對角線以下的元素全為0的一種矩陣,而下三角陣則是對角線以上的元素全為0
40、的一種矩陣。,79,上三角矩陣求矩陣A的上三角陣的MATLAB函數(shù)是triu(A)。triu(A)函數(shù)也有另一種形式triu(A,k),其功能是求矩陣A的第k條對角線以上的元素。例如,提取矩陣A的第2條對角線以上的元素,形成新的矩陣B。 下三角矩陣在MATLAB中,提取矩陣A的下三角矩陣的函數(shù)是tril(A)和tril(A,k),其用法與提取上三角矩陣的函數(shù)triu(A)和triu(A,k)完全相同。,80,4.4.2 矩陣的轉置與旋轉1矩陣的轉置轉置運算符是單撇號()。2矩陣的旋轉利用函數(shù)rot90(A,k)將矩陣A旋轉90的k倍,當k為1時可省略。,81,3矩陣的左右翻轉對矩陣實施左右翻轉
41、是將原矩陣的第一列和最后一列調換,第二列和倒數(shù)第二列調換,依次類推。MATLAB對矩陣A實施左右翻轉的函數(shù)是fliplr(A) 4矩陣的上下翻轉MATLAB對矩陣A實施上下翻轉的函數(shù)是flipud(A)。,82,4.4.3 矩陣的逆對于一個方陣A,如果存在一個與其同階的方陣B,使得:AB=BA=I (I為單位矩陣)則稱B為A的逆矩陣,當然,A也是B的逆矩陣。求一個矩陣的逆是一件非常煩瑣的工作,容易出錯,但在MATLAB中,求一個矩陣的逆非常容易。求方陣A的逆矩陣可調用函數(shù)inv(A)。例2-11 用求逆矩陣的方法解線性方程組。Ax=b其解為:x=A-1b,83,4.4.4 方陣的行列式把一個方
42、陣看作一個行列式,并對其按行列式的規(guī)則求值,這個值就稱為矩陣所對應的行列式的值。在MATLAB中,求方陣A所對應的行列式的值的函數(shù)是det(A)。,84,4.4.5 矩陣的秩與跡1矩陣的秩矩陣線性無關的行數(shù)與列數(shù)稱為矩陣的秩。在MATLAB中,求矩陣秩的函數(shù)是rank(A)。2矩陣的跡矩陣的跡等于矩陣的對角線元素之和,也等于矩陣的特征值之和。在MATLAB中,求矩陣的跡的函數(shù)是trace(A)。,85,4.5關系運算和邏輯運算4.5.1 邏輯運算,MATLAB 中邏輯型(logical)數(shù)據(jù)只有“1”和“0”,分別表示true和false兩種狀態(tài),邏輯型變量只占1個字節(jié)。 函數(shù)logical可以用來將數(shù)值型轉換為邏輯型,任何非零的數(shù)值都轉換為邏輯1,數(shù)值0轉換為邏輯0。,86,4.5.2 關系運算,MATLAB 常用的關系操作符有、=、 = =(等于)、 =(不等于)。 關系運算規(guī)則: 如果比較的兩個變量都是標量,則結果為1(true)或0(false); 如果比較的兩個變量都是數(shù)組,則必須尺寸大小相同,結果也是同樣大小的數(shù)組; 如果比較的是一個數(shù)組和一個標量,則把數(shù)組的每個元素分別與標量比較,結果為與數(shù)組大小相同的數(shù)組。,87,4.5.3 邏輯運算,1. 元素的邏輯運算 元素的邏輯運算是將數(shù)組中的元素一一進行邏輯運算,常用的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年航運風險管理實務培訓
- 2026年檔案管理數(shù)字化轉型培訓
- 2026年房地產(chǎn)投資與財務自由的關系
- 2025年北大康奈爾筆試及答案
- 2025年悉尼駕照筆試題庫及答案
- 2025年秦漢中學招聘教師筆試及答案
- 2025年維修電工面試筆試題及答案
- 2025年蘭西管理崗事業(yè)編考試題及答案
- 2026年河北水利發(fā)展集團有限公司公開招聘工作人員1名筆試參考題庫及答案解析
- 2025年洪山街道招聘筆試題庫及答案
- 總公司與分公司承包協(xié)議6篇
- 鋼結構防火涂料應用技術規(guī)程TCECS 24-2020
- 民事答辯狀(信用卡糾紛)樣式
- 橋梁施工現(xiàn)場文明施工方案
- 數(shù)字媒體藝術設計專業(yè)畢業(yè)設計任務書
- JJF(晉) 117-2025 飲用水售水機校準規(guī)范
- 國家建設工程項目施工安全生產(chǎn)標準化工地
- 華為財務報銷培訓課件
- 2025年福建省中考英語試卷真題及答案詳解(精校打印版)
- 《鐵路運輸調度》課件全套 孫建暉 第1-5章 貨物列車編組計劃- 調度工作分析
- 解讀《華為數(shù)據(jù)之道》
評論
0/150
提交評論