matlab入門教程ppt課件_第1頁
已閱讀1頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、MATLAB作為線性系統(tǒng)的一種分析和仿真工具,是理工科大學(xué)生應(yīng)該掌握的技術(shù)工具,它作為一種編程語言和可視化工具,可解決工程、科學(xué)計算和數(shù)學(xué)學(xué)科中許多問題。,? MATLAB建立在向量、數(shù)組和矩陣的基礎(chǔ)上,使用方便,人機(jī)界面直觀,輸出結(jié)果可視化。,? 矩陣是MATLAB的核心,? MATLAB的進(jìn)入與運行方式(兩種),1,MATLAB入門,一、變 量 與 函 數(shù),二、數(shù) 組,三、 矩

2、 陣,四、 MATLAB編程,五、 實 驗 作 業(yè),2,1、變量 MATLAB中變量的命名規(guī)則是:(1)變量名必須是不含空格的單個詞;(2)變量名區(qū)分大小寫;(3)變量名最多不超過19個字符;(4)變量名必須以字母打頭,之后可以是 任意字母、數(shù)字或下劃線,變量名中 不允許使用標(biāo)點符號.,一、變 量 與 函 數(shù),3,特殊變量表,4,2、數(shù)學(xué)運算符號及標(biāo)點符號,(

3、1)MATLAB的每條命令后,若為逗號或無標(biāo)點符號, 則顯示命令的結(jié)果;若命令后為分號,則禁止顯示結(jié)果. (2)“%” 后面所有文字為注釋. (3) “...”表示續(xù)行.,5,3、數(shù)學(xué)函數(shù),6,MATLAB的內(nèi)部函數(shù)是有限的,有時為了研究某一個函數(shù)的各種性態(tài),需要為MATLAB定義新函數(shù),為此必須編寫函數(shù)文件. 函數(shù)文件是文件名后綴為M的文件,這類文件的第一行必須是一特殊字符function開始,格式為:

4、 function 因變量名=函數(shù)名(自變量名)函數(shù)值的獲得必須通過具體的運算實現(xiàn),并賦給因變量.,4、M文件,M文件建立方法:1. 在Matlab中,點:File->New->M-file 2. 在編輯窗口中輸入程序內(nèi)容 3. 點:File->Save,存盤,M文件名必須

5、 與函數(shù)名一致。,Matlab的應(yīng)用程序也以M文件保存。,7,例:定義函數(shù) f(x1,x2)=100(x2-x12)2+(1-x1)2,function f=fun(x)f=100*(x(2)-x(1)^2)^2+(1-x(1))^2,1.建立M文件:fun.m,MATLAB(fun),2. 可以直接使用函數(shù)fun.m,例如:計算 f(1,2), 只需在Matlab

6、命令窗口鍵入命令:x=[1 2]fun(x),返回,8,x=logspace(first,last,n) 創(chuàng)建從開始,到結(jié)束,有n個元素的對數(shù)分隔行向量.,1、創(chuàng)建簡單的數(shù)組,二、數(shù) 組,MATLAB(shuzu1),x=[a b c d e f ] 創(chuàng)建包含指定元素的行向量,x=first:last 創(chuàng)建從first開始,加1

7、計數(shù),到last結(jié)束的行向量,x=first:increment:last 創(chuàng)建從first開始,加increment計數(shù),last結(jié)束的行向量,x=linspace(first,last,n) 創(chuàng)建從first開始,到last結(jié)束,有n個元素的行向量,9,2、 數(shù)組元素的訪問,MATLAB(shuzu2),(3)直接使用元素編址序號. x([a b c d]) 表示提取數(shù)組x的第a、b、c、d個元素構(gòu)

8、成一個新的數(shù)組[x(a) x(b) x(c) x(d)].,(2)訪問一塊元素: x(a :b :c)表示訪問數(shù)組x的從第a個元素開始,以步長為b到第c個元素(但不超過c),b可以為負(fù)數(shù),b缺損時為1.,(1)訪問一個元素: x(i)表示訪問數(shù)組x的第i個元素.,10,3、數(shù)組的方向 前面例子中的數(shù)組都是一行數(shù)列,是行方向分布的. 稱之為行向量. 數(shù)組也可以是列向量,它的數(shù)組操作和運算與行向量是一樣的,

9、唯一的區(qū)別是結(jié)果以列形式顯示.,產(chǎn)生列向量有兩種方法: 直接產(chǎn)生 例 c=[1;2;3;4] 轉(zhuǎn)置產(chǎn)生 例 b=[1 2 3 4]; c=b’ 說明:以空格或逗號分隔的元素指定的是不同列的元素,而以分號分隔的元素指定了不同行的元素.,11,4、數(shù)組的運算,(1)標(biāo)量-數(shù)組運算 數(shù)組對標(biāo)量的加、減、乘、除、乘方是數(shù)組的每個元素對該標(biāo)量施加相應(yīng)的加、減、乘、除、乘方運算.,設(shè):

10、a=[a1,a2,…,an], c=標(biāo)量,則: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= [a1^c,a2^c,…,an^c] c.^a= [c^a1,c^a2,…,c^an],M

11、ATLAB(shuzu3),12,(2)數(shù)組-數(shù)組運算 當(dāng)兩個數(shù)組有相同維數(shù)時,加、減、乘、除、冪運算可按元素對元素方式進(jìn)行的,不同大小或維數(shù)的數(shù)組是不能進(jìn)行運算的.,設(shè):a=[a1,a2,…,an], b=[b1,b2,…,bn],則:a+b= [a1+b1,a2+b2,…,an+bn] a.*b= [a1*b1,a2*b2,…,an*bn] a./b= [a1/b1,a2/b2,…,a

12、n/bn] a.\b=[b1/a1,b2/a2,…,bn/an] a.^b=[a1^b1,a2^b2,…,an^bn],MATLAB(shuzu4),返回,13,三、 矩 陣,逗號或空格用于分隔某一行的元素,分號用于區(qū)分不同的行. 除了分號,在輸入矩陣時,按Enter鍵也表示開始一新行. 輸入矩陣時,嚴(yán)格要求所有行有相同的列. 例 m=[1 2 3 4 ;5 6 7

13、8;9 10 11 12] p=[1 1 1 1 2 2 2 2 3 3 3 3],1、矩陣的建立,14,特殊矩陣的建立:.,MATLAB(matrix1),d=eye(m,n) 產(chǎn)生一個m行、n列的單位矩陣,c=ones(m,n) 產(chǎn)生一個m行、n列的元素

14、 全為1的矩陣,b=zeros(m,n) 產(chǎn)生一個m行、n列的零矩陣,a=[ ] 產(chǎn)生一個空矩陣,當(dāng)對一項操作無結(jié) 果時,返回空矩陣,空矩陣的大小為零.,15,2、矩陣中元素的操作,MATLAB(matrix2),(1)矩陣A的第r行:A(r,:),(2)矩陣A的第r列:A(:,r),(4)取矩陣A的第i1~i2行、第j1~j2列構(gòu)成新矩陣:A(i1:i

15、2, j1:j2),(5)以逆序提取矩陣A的第i1~i2行,構(gòu)成新矩陣:A(i2:-1:i1,:),(6)以逆序提取矩陣A的第j1~j2列,構(gòu)成新矩陣:A(:, j2:-1:j1 ),(7)刪除A的第i1~i2行,構(gòu)成新矩陣:A(i1:i2,:)=[ ],(8)刪除A的第j1~j2列,構(gòu)成新矩陣:A(:, j1:j2)=[ ],(9)將矩陣A和B拼接成新矩陣:[A B];[A;B],(3)依次提取矩陣A的每一列,將A拉伸為一個列向

16、量:A(:),16,(2)矩陣-矩陣運算 [1] 元素對元素的運算,同數(shù)組-數(shù)組運算。,3、矩陣的運算,(1)標(biāo)量-矩陣運算 同標(biāo)量-數(shù)組運算。,MATLAB(matrix3),[2]矩陣運算:矩陣加法:A+B矩陣乘法:A*B方陣的行列式:det(A)方陣的逆:inv(A)方陣的特征值與特征向量:[V,D]=eig[A],返回,17,關(guān)系與邏輯運算,1、關(guān)系操作符,

17、18,2、邏輯運算符,19,1、for循環(huán):允許一組命令以固定的和預(yù)定的次數(shù)重復(fù) for x=array {commands} end 在for和end語句之間的命令串{commands}按數(shù)組(array)中的每一列執(zhí)行一次. 在每一次迭代中,x被指定為數(shù)組的下一列,即在第n次循環(huán)中,x=array(:,n),控制流,MATLAB

18、提供三種決策或控制流結(jié)構(gòu): for循環(huán)、while循環(huán)、if-else-end結(jié)構(gòu). 這些結(jié)構(gòu)經(jīng)常包含大量的MATLAB命令,故經(jīng)常出現(xiàn)在MATLAB程序中,而不是直接加在MATLAB提示符下.,例 對n=1,2,…,10,求xn= 的值,MATLAB(for1),20,while expression {commands

19、} end 只要在表達(dá)式(expression)里的所有元素為真,就執(zhí)行while和end語句之間的命令串{commands}.,2、While循環(huán) 與for循環(huán)以固定次數(shù)求一組命令相反,while循環(huán)以不定的次數(shù)求一組語句的值.,MATLAB(while1),例 設(shè)銀行年利率為11.25%。將10000元錢存入銀行,問多長時間會連本帶利翻一番?,21,3、If-Else-E

20、nd結(jié)構(gòu)(1)有一個選擇的一般形式是: if expression {commands} end 如果在表達(dá)式(expression)里的所有元素為真,就執(zhí)行if和end語句之間的命令串{commands}.,MATLAB(fun1),先建立M文件fun1.m定義函數(shù)f(x),再在Matlab命令窗口輸入fun1(2),

21、fun1(-1)即可。,22,2) 有三個或更多的選擇的一般形式是: if (expression1) {commands1} else if (expression2) {commands2} else if (expression3)

22、 {commands3} else if …… ………………………………… else{commands} endendend…… end,23,先建立M文件fun2.m定義函數(shù)f(x),再在Matlab命令窗口輸入fun2(2),fun2(0.5), fun2(-1)

23、即可。,MATLAB(fun2),返回,24,對以下問題,編寫M文件:(1)用起泡法對10個數(shù)由小到大排序. 即將相鄰兩個數(shù)比較,將小的調(diào)到前頭.(2)有一個 矩陣,編程求出其最大值及其所處的位置.(3)編程求(4)一球從100米高度自由落下,每次落地后反跳回原高度的一半,再落下. 求它在第10次落地時,共經(jīng)過多少米?第10次反彈有多高?(5)有一函數(shù)

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論