1.MATLAB與仿真-矩陣基礎(chǔ)1_第1頁
1.MATLAB與仿真-矩陣基礎(chǔ)1_第2頁
1.MATLAB與仿真-矩陣基礎(chǔ)1_第3頁
1.MATLAB與仿真-矩陣基礎(chǔ)1_第4頁
1.MATLAB與仿真-矩陣基礎(chǔ)1_第5頁
已閱讀5頁,還剩77頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

MATLAB與仿真,主講教師:韓雅菲,MATLAB課程安排,學(xué)時(shí):40學(xué)時(shí)安排:講課32學(xué)時(shí),上機(jī)8學(xué)時(shí),MATLAB課程安排,學(xué)時(shí):40學(xué)時(shí)安排:講課32學(xué)時(shí),上機(jī)8學(xué)時(shí),第1章 MATLAB概述,MATLAB語言是20世紀(jì)70年代,美國新墨西哥大學(xué)計(jì)算機(jī)科學(xué)系主任Cleve Moler為了為解決“線性代數(shù)”課程的矩陣運(yùn)算問題,減輕學(xué)生編程的負(fù)擔(dān),用FORTRAN編寫了最早的MATLAB。取名“MATLAB”即Matrix Laboratory,矩陣實(shí)驗(yàn)室的意思。 1984年由Little、Moler、Steve Bangert合作成立了的MathWorks公司正式把MATLAB推向市場。到20世紀(jì)90年代,MATLAB已成為國際控制界的標(biāo)準(zhǔn)計(jì)算軟件。,MATLAB優(yōu)勢,友好的工作平臺(tái)和編程環(huán)境簡單易用的程序語言強(qiáng)大的科學(xué)計(jì)算機(jī)數(shù)據(jù)處理能力出色的圖形處理功能應(yīng)用廣泛的模塊集合工具箱實(shí)用的程序接口和發(fā)布平臺(tái)應(yīng)用軟件開發(fā)(包括用戶界面),MATLAB主要應(yīng)用領(lǐng)域,MATLAB 的應(yīng)用范圍非常廣,包括信號(hào)和圖像處理、通訊、控制系統(tǒng)設(shè)計(jì)、測試和測量、財(cái)務(wù)建模和分析以及計(jì)算生物學(xué)等眾多應(yīng)用領(lǐng)域。附加的工具箱(單獨(dú)提供的專用MATLAB 函數(shù)集)擴(kuò)展了MATLAB 環(huán)境,以解決這些應(yīng)用領(lǐng)域內(nèi)特定類型的問題。,第2章 MATLAB語言程序設(shè)計(jì)基礎(chǔ),2.1 MATLAB語言的基本使用環(huán)境 MATLAB主窗口是MATLAB的主要工作界面。主窗口除了嵌入一些常用窗口外,還主要包括菜單欄和工具欄。,MATLAB用戶界面,2.1 MATLAB語言的基本使用環(huán)境,菜單欄: 在MATLAB7.X主窗口的菜單欄,共包含F(xiàn)ile、Edit、Debug、Desktop、Window和Help 6個(gè)菜單項(xiàng)。,MATLAB菜單欄,在MATLAB 菜單欄,共包含F(xiàn)ile、Edit、View、Web、Window和Help 6個(gè)菜單項(xiàng)。File:包括新建,打開文件,關(guān)閉,保存,打印,導(dǎo) 入數(shù)據(jù),設(shè)置路徑及退出等操作。Edit:包括撤銷,剪切、復(fù)制、粘貼等常見的操作。Debug :程序的調(diào)試。Desktop:用于設(shè)置MATLAB集成環(huán)境的顯示方式。Window:用于關(guān)閉所有打開的編輯器窗口,在各窗口 之間切換。Help:用于提供幫助信息。,MATLAB幫助系統(tǒng),進(jìn)入幫助窗口可以通過以下3種方法:單擊MATLAB主窗口工具欄中的Help按鈕;在命令窗口中輸入helpwin、helpdesk或doc;選擇Help菜單中的“MATLAB Help”選項(xiàng)。,MATLAB工具欄,工具欄:工具欄包括新建文件、打開文件、剪切,復(fù)制,粘貼等常用圖標(biāo);顯示MATLAB當(dāng)前的路徑,用戶可以通過工具欄改變當(dāng)前目錄路徑。,常用窗口,命令窗口(Command Window)歷史命令窗口( Command History)當(dāng)前工作目錄(Current Directory)工作空間(Workspace)數(shù)組編輯器窗口(Array Editor)M文件編輯/調(diào)試器窗( Editor),1.命令窗口,1.命令窗口,作用:命令窗口是MATLAB的主要交互窗口,用于輸入命令并顯示除圖形以外的所有執(zhí)行結(jié)果。 在命令窗口中輸入MATLAB命令和數(shù)據(jù)后按回車鍵,立即執(zhí)行運(yùn)算。命令窗口中的語句形式為:變量=表達(dá)式;,說明:命令窗口中的每個(gè)命令前會(huì)出現(xiàn)提示符 “”,沒有“”符號(hào)的行則是顯示的結(jié)果”。,1.命令窗口,句末加分號(hào);則不顯示結(jié)果,例: a=3; b=4; c=a+b; cc = 7,2.歷史命令窗口,2.歷史命令窗口,作用:在默認(rèn)設(shè)置下,歷史記錄窗口中會(huì)自動(dòng)保留自安裝起所有用過的命令的歷史記錄。當(dāng)按下方向鍵時(shí)窗口會(huì)依次出現(xiàn)已輸入命令。,2.歷史命令窗口,用來記錄并顯示已經(jīng)運(yùn)行過的命令、函數(shù)和表達(dá)式。,3.當(dāng)前工作目錄,說明:當(dāng)前工作目錄用來設(shè)置當(dāng)前目錄,并顯示當(dāng)前目錄下的M文件、MAT文件等文件信息,窗口中包含文件名稱、類型、文件大小和修改時(shí)間等。,3.當(dāng)前工作目錄,當(dāng)用戶在MATLAB命令窗口輸入一條命令后,MATLAB按照一定次序?qū)ふ蚁嚓P(guān)的文件?;镜乃阉鬟^程是:(1) 檢查該命令是不是一個(gè)變量。(2) 檢查該命令是不是一個(gè)內(nèi)部函數(shù)。(3) 檢查該命令是不是當(dāng)前目錄下的M文件。 (4) 檢查該命令是不是MATLAB搜索路徑中其他目錄下的M文件。 因此,當(dāng)前目錄設(shè)置是否正確,決定程序是否能正確運(yùn)行。,4.工作空間,4.工作空間,說明:工作空間瀏覽器窗口用于顯示內(nèi)存中所有的變量名、數(shù)據(jù)結(jié)構(gòu)、類型、大小和字節(jié)數(shù)。,5.數(shù)組編輯器窗口,啟動(dòng)數(shù)組編輯器窗口的方法有:1.在工作空間窗口中雙擊該變量;2.選擇變量點(diǎn)擊鼠標(biāo)右鍵,選擇“open selection”。,6.M文件編輯/調(diào)試窗口,打開M文件編輯/調(diào)試器窗口的方法:1點(diǎn)擊工具欄新建圖標(biāo);2點(diǎn)擊菜單“File”“New”“M-File”;3.打開已保存的M文件。,2.2 MATLAB語言的數(shù)據(jù)結(jié)構(gòu),2.2.1常量與變量 標(biāo)識(shí)符:是標(biāo)志變量名、常量名、函數(shù)名和文件名的字符串的總稱。字符包括全部的英文字母(大小寫52個(gè))、阿拉伯?dāng)?shù)字和下劃線等符號(hào),標(biāo)識(shí)符中第一個(gè)字符必須是英文字母。 例:變量 A,a,A1,A_1 變量 1A,1a,_a ,2.2.2賦值語句,矩陣及其元素的賦值 賦值就是把數(shù)賦予代表常量或變量的標(biāo)識(shí)符。在MATLAB中,變量都代表矩陣。列向量可被當(dāng)作只有一列的矩陣;行向量也可被當(dāng)作只有一個(gè)行的矩陣;標(biāo)量應(yīng)看作11階的矩陣。 賦值語句的一般形式為: 變量表達(dá)式(或數(shù)),2.2.2賦值語句,例如: a=3; b=4; c=a+b; d=sin(t);,MATLAB內(nèi)部特殊變量和常數(shù),在MATLAB語言中為特定常數(shù)保留了一些名稱,雖然這些常量可以被重新賦值,但在編程時(shí)盡量避免對(duì)這些量重新賦值。,MATLAB內(nèi)部特殊變量和常數(shù),變量ans:臨時(shí)變量,通常指示當(dāng)前的答案。常數(shù)eps:表示浮點(diǎn)相對(duì)精度;其值是從1.0到下一個(gè)最大浮點(diǎn)數(shù)之間的差值。變量值作為一些MATLAB函數(shù)計(jì)算的相對(duì)浮點(diǎn)精度,按IEEE標(biāo)準(zhǔn),esp近似為2.2204e-016。常數(shù)realmax:表示最大正浮點(diǎn)數(shù);任何大于該值的運(yùn)算都溢出。在具有IEEE標(biāo)準(zhǔn)浮點(diǎn)格式的機(jī)器上,realmax略小于21024 ,近似為1.7977e+308。常數(shù)realmin:表示最小正浮點(diǎn)數(shù);任何小于該值的運(yùn)算都溢出。在具有IEEE標(biāo)準(zhǔn)浮點(diǎn)格式的機(jī)器上,realmin略小于2-1024 ,近似為2.2251e-308。,MATLAB內(nèi)部特殊變量和常數(shù),常數(shù)pi:表示圓周率 =3.1415926535897.。表達(dá)式4*atan(1)和imag(log(-1)產(chǎn)生相同的值。常數(shù)Inf:代表正無窮大,一般被0除或溢出則產(chǎn)生無窮大結(jié)果。如2/0,210000均產(chǎn)生結(jié)果:Inf;而log(0)產(chǎn)生結(jié)果:-Inf。虛數(shù)單位i,j:表示復(fù)數(shù)虛部單位,相當(dāng)于 。NaN:表示非數(shù)值。如當(dāng)Inf-Inf,Inf/Inf, 0*Inf,0/0均產(chǎn)生該結(jié)果。,(1)變量ans, a=3; b=4; a+bans = 7,變量ans:臨時(shí)變量,通常指示當(dāng)前的答案。,常數(shù)eps,常數(shù)eps:表示浮點(diǎn)相對(duì)精度;其值是從1.0到下一個(gè)最大浮點(diǎn)數(shù)之間的差值。esp默認(rèn)值為2.2204e-016,若某個(gè)量的絕對(duì)值小于eps,則從數(shù)值運(yùn)算的角度可以認(rèn)為這個(gè)量為0。,常數(shù)eps, epsans = 2.2204e-016,常數(shù)realmax:,常數(shù)realmax: 表示最大正浮點(diǎn)數(shù);任何大于該值的運(yùn)算都溢出。Realmax默認(rèn)值為1.7977e+308。,常數(shù)realmax:, realmaxans = 1.7977e+308,常數(shù)realmin:,常數(shù)realmin: 表示最小正浮點(diǎn)數(shù);任何小于該值的運(yùn)算都溢出。Realmin默認(rèn)值為2.2251e-308。,常數(shù)realmin:, realminans = 2.2251e-308,常數(shù)pi:,pi:表示圓周率 =3.1415926535897 表達(dá)式4*atan(1)和imag(log(-1)產(chǎn)生相同的值。,常數(shù)pi:,常數(shù)Inf:,常數(shù)Inf:代表正無窮大,一般被0除或溢出則產(chǎn)生無窮大結(jié)果。如2/0,210000均產(chǎn)生結(jié)果Inf;而log(0)產(chǎn)生結(jié)果-Inf。,常數(shù)Inf:,虛數(shù)單位i,j,i,j:表示復(fù)數(shù)虛部單位, a=3+2ia = 3.0000 + 2.0000i b=3+2jb = 3.0000 + 2.0000i,NaN,NaN:表示非數(shù)值。如:Inf-Inf;0*Inf;Inf/Inf,0/0均產(chǎn)生該結(jié)果。,2.2.3矩陣的MATLAB表示,1賦值要求在輸入矩陣時(shí),應(yīng)遵循以下規(guī)則:整個(gè)矩陣的值應(yīng)放在方括號(hào)中;同一行中各元素之間以逗號(hào)“,”或空格分開;不同行的元素以分號(hào)“;”隔開。,2.2.3矩陣的MATLAB表示, a=1 2;3 4a = 1 2 3 4, a=1,2;3,4a = 1 2 3 4,例如:,2.2.3矩陣的MATLAB表示,一般來說,一個(gè)命令行輸入一條命令,命令行以回車結(jié)束。但一個(gè)命令行也可以輸入若干條命令,各命令之間以逗號(hào)分隔,若前一命令后帶有分號(hào),則逗號(hào)可以省略。 例如: p=15,m=35; p=15;m=35,2.2.3矩陣的MATLAB表示,如果一個(gè)命令行很長,一個(gè)物理行之內(nèi)寫不下,可以在第一個(gè)物理行之后加上3個(gè)小黑點(diǎn)并按下回車鍵,然后接著下一個(gè)物理行繼續(xù)寫命令的其他部分。3個(gè)小黑點(diǎn)稱為續(xù)行符,即把下面的物理行看作該行的邏輯繼續(xù) 。,2.2.3矩陣的MATLAB表示,a=3;b=2;c=1; d=a+b.-cd = 4,2.2.3矩陣的MATLAB表示,2變量的元素的標(biāo)注 在MATLAB中,變量的元素(即矩陣元)用圓括號(hào)“()”中的數(shù)字(也稱為下標(biāo))來注明,一維矩陣(也稱數(shù)組)中的元素用一個(gè)下標(biāo)表示,二維矩陣由兩個(gè)下標(biāo)數(shù)構(gòu)成,以逗號(hào)分開,對(duì)三維矩陣則由三個(gè)下標(biāo)數(shù)構(gòu)成。,變量的元素的標(biāo)注:一維矩陣舉例, a=rand(1,3)a = 0.8913 0.7621 0.4565 b=a(2)b = 0.7621,變量的元素的標(biāo)注:二維矩陣舉例, a=rand(2,3)a = 0.6154 0.9218 0.1763 0.7919 0.7382 0.4057 b=a(2,2)b = 0.7382,變量的元素的標(biāo)注:三維矩陣舉例, a=rand(2,2,2)a(:,:,1) = 0.9355 0.4103 0.9169 0.8936a(:,:,2) = 0.0579 0.8132 0.3529 0.0099, b=a(2,2,1)b = 0.8936,2.2.3矩陣的MATLAB表示,3賦值技巧利用冒號(hào)“:” 給全行或部分元素賦值;(2)利用行、列標(biāo)注構(gòu)成新的矩陣。,(1)利用冒號(hào)“:” 給全行的元素賦值, a=rand(2,2)a = 0.1389 0.1987 0.2028 0.6038 a(:,2)=1a = 0.1389 1.0000 0.2028 1.0000,思考:如果接下來輸入命令:a(1,:)=1那么a=?a =1.0000 1.00000.2028 1.0000, a=ones(4)a = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 a(2:4,3:4)=0a = 1 1 1 1 1 1 0 0 1 1 0 0 1 1 0 0,習(xí)題:A為5*4矩陣,B為4*6矩陣,C=A*B1)求出乘積矩陣C,2)將C矩陣的右下角2*3的子矩陣賦給D矩陣。,利用冒號(hào)“:” 給局部元素賦值,習(xí)題,A=1,2,3,3;2,3,5,7;1,3,5,7;3,2,3,9;1,8,9,4A = 1 2 3 3 2 3 5 7 1 3 5 7 3 2 3 9 1 8 9 4,B=1,4,3,6,7,8;2,3,3,5,5,4;2,6,5,3,4,2;1,8,9,5,4,3B = 1 4 3 6 7 8 2 3 3 5 5 4 2 6 5 3 4 2 1 8 9 5 4 3,2.10習(xí)題(2), C=A*B C = 14 52 51 40 41 31 25 103 103 77 77 59 24 99 100 71 70 51 22 108 111 82 79 65 39 114 108 93 99 70, D=C(4:5,4:6) D = 82 79 65 93 99 70,(2)利用行、列標(biāo)注構(gòu)成新的矩陣,若要產(chǎn)生矩陣a = 1 1 1 1 2 1 1 1 1,可以采用以下方法: a=ones(3,3)a = 1 1 1 1 1 1 1 1 1 a(2,2)=2,2.2.3矩陣的MATLAB表示,4特殊矩陣和數(shù)組(1)單位矩陣函數(shù)eye();(2)zeros函數(shù)、ones函數(shù);(3)rand以及randn 函數(shù);(4)linspace函數(shù)。,1.eye(m,n),eye(m,n)產(chǎn)生對(duì)角線元素為1,其他元素為0的矩陣。例如:, eye(3,2)ans = 1 0 0 1 0 0, a=eye(3,3)a = 1 0 0 0 1 0 0 0 1,2. zeros函數(shù)、ones函數(shù),zeros(m,n):產(chǎn)生m行,n列矩陣,矩陣元素均為0。ones(m,n):產(chǎn)生m行,n列矩陣,矩陣元素均為1。, zeros(2,3)ans = 0 0 0 0 0 0, ones(3,2)ans = 1 1 1 1 1 1,3.rand以及randn 函數(shù),rand:產(chǎn)生隨機(jī)矩陣,矩陣元素滿足在0、 1之間均勻分布。randn:產(chǎn)生隨機(jī)矩陣,矩陣元素服從均值為0,方差為1的正態(tài)分布。, rand(3,3)ans = 0.5252 0.8381 0.2026 0.0196 0.6721 0.6813, randn(3,2)ans = -1.1465 -0.0376 1.1909 0.3273 1.1892 0.1746,4. linspace函數(shù),linspace函數(shù)的調(diào)用格式如下:y=linspace(a,b,n)產(chǎn)生一個(gè)行矢量y,該矢量把a(bǔ)和b間的數(shù)等分n份而得到。,例: y=linspace(1,100,5)y =1.0000 25.7500 50.5000 75.2500 100.0000,2.2.3矩陣的MATLAB表示,5復(fù)數(shù)的賦值方式 MATLAB的每一個(gè)元素都可以是復(fù)數(shù),實(shí)數(shù)是復(fù)數(shù)的特例。復(fù)數(shù)的虛數(shù)部分用i或j表示。對(duì)復(fù)數(shù)矩陣有兩種賦值方法: (1)可將矩陣元逐個(gè)賦予復(fù)數(shù); (2)將矩陣的實(shí)部和虛部分別賦值。,復(fù)數(shù)的賦值方式,逐個(gè)賦值: a=zeros(2,1); a(1,1)=1+2i; a(2,1)=2+2ia =1.0000 + 2.0000i 2.0000 + 2.0000i,實(shí)、虛部分別賦值: b=1;2; c=2;2; d=b+cid =1.0000 + 2.0000i 2.0000 + 2.0000i,2.2.3矩陣的MATLAB表示,6變量檢查 在程序調(diào)試或變量的賦值過程,往往需要檢查工作空間中的變量、變量的階數(shù)以及變量賦值內(nèi)容。在檢查變量及其階數(shù)等內(nèi)容時(shí),既可用工作空間窗口,也可在命令窗口使用who或whos命令來完成檢查。當(dāng)查看某變量的賦值情況,可在命令窗口直接鍵入該變量名回車即可。,變量檢查(who,whos), d =1.0000 + 2.0000i 2.0000 + 2.0000i; whos Name Size Bytes Class d 1x2 32 double array (complex)Grand total is 2 elements using 32 bytes whoYour variables are:d,2.3 MATLAB下矩陣的運(yùn)算,2.3.1 矩陣的代數(shù)運(yùn)算 (1)矩陣加減法“”:AB功能:兩矩陣對(duì)應(yīng)元素相加減。因此,A和B兩矩陣必須有相同的大小,或其中之一為標(biāo)量,標(biāo)量可以與任意大小的矩陣相加。,(1)矩陣加減法“”:AB,相同大小矩陣相加: a=2,3; b=ones(1,2)b = 1 1 c=a+bc = 3 4,矩陣與常數(shù)相加: a=2,3; b =1; c=a+bc = 3 4,2.3.1 矩陣的代數(shù)

溫馨提示

  • 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)論