MATLAB在電類專業(yè)課程中應(yīng)用---教程及實(shí)訓(xùn)第一章_第1頁(yè)
MATLAB在電類專業(yè)課程中應(yīng)用---教程及實(shí)訓(xùn)第一章_第2頁(yè)
MATLAB在電類專業(yè)課程中應(yīng)用---教程及實(shí)訓(xùn)第一章_第3頁(yè)
MATLAB在電類專業(yè)課程中應(yīng)用---教程及實(shí)訓(xùn)第一章_第4頁(yè)
MATLAB在電類專業(yè)課程中應(yīng)用---教程及實(shí)訓(xùn)第一章_第5頁(yè)
已閱讀5頁(yè),還剩43頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第一章第一章MATLAB開發(fā)環(huán)境及編程開發(fā)環(huán)境及編程第二章 MATLAB在數(shù)學(xué)運(yùn)算中的應(yīng)用第三章第三章 MATLAB在電路原理中的應(yīng)用在電路原理中的應(yīng)用第四章 MATLAB在電機(jī)與拖動(dòng)中的應(yīng)用第五章第五章 MATLAB在電力電子技術(shù)中的應(yīng)用在電力電子技術(shù)中的應(yīng)用第六章 MATLAB在自動(dòng)控制原理中的應(yīng)用第七章第七章 MATLAB在電力拖動(dòng)自動(dòng)控制系統(tǒng)中的應(yīng)用在電力拖動(dòng)自動(dòng)控制系統(tǒng)中的應(yīng)用第八章第八章 MATLAB在信號(hào)與系統(tǒng)中的應(yīng)用在信號(hào)與系統(tǒng)中的應(yīng)用第一章第一章MATLAB開發(fā)環(huán)境及編程開發(fā)環(huán)境及編程1.1 MATLAB概述1.2 MATLAB基本運(yùn)算1.3 MATLAB的繪圖1.4 MAT

2、LAB程序設(shè)計(jì)1.5 MATLAB的文件1.6 Simulink仿真工具1.1 MATLAB概述概述運(yùn)算功能強(qiáng)大運(yùn)算功能強(qiáng)大MATLAB是以矩陣為基本編程元素的程序設(shè)計(jì)語言,它的數(shù)值運(yùn)算要素是矩陣。編程效率高編程效率高M(jìn)ATLAB的語言簡(jiǎn)潔而且智能化,以解釋方式工作。強(qiáng)大而智能化的作圖功能強(qiáng)大而智能化的作圖功能MATLAB可以智能化地用圖形顯示二維或三維數(shù)組,能夠自動(dòng)選擇最佳坐標(biāo),自動(dòng)按精度選擇步長(zhǎng)等。Simulink動(dòng)態(tài)仿真功能動(dòng)態(tài)仿真功能Simulink是交互式動(dòng)態(tài)系統(tǒng)建模、仿真和分析的圖形環(huán)境,用戶通過框圖的繪制來模擬系統(tǒng)。功能豐富,可擴(kuò)展性強(qiáng)功能豐富,可擴(kuò)展性強(qiáng)1.1.1 MATLAB

3、集成開發(fā)環(huán)境集成開發(fā)環(huán)境MATLAB 7.X開發(fā)環(huán)境MATLAB 2014a開發(fā)環(huán)境1.1.2 MATLAB的各個(gè)窗口1. 命令窗口(命令窗口(Command Window)常用標(biāo)點(diǎn)符號(hào)的功能:【例【例1_1】在命令窗口輸入命令。 a=1 2 3;4 5 6;.7 8 9%創(chuàng)建矩陣aa = 1 2 3 4 5 6 7 8 9 b=MATLAB%創(chuàng)建字符串b c=false%c是邏輯型變量c = 0 d=a*c%a與0相乘為全零矩陣d = 0 0 0 0 0 0 0 0 02. 歷史命令窗口(歷史命令窗口(Command History)歷史命令窗口用來記錄并顯示已經(jīng)運(yùn)行過的命令、函數(shù)和表達(dá)式,

4、并標(biāo)明每次開啟MATLAB的時(shí)間, 3. 當(dāng)前目錄窗口(當(dāng)前目錄窗口(Current Fold)當(dāng)前目錄窗口用來設(shè)置當(dāng)前的工作目錄,并顯示當(dāng)前目錄下的M文件、MAT文件、MDL文件等和文件夾信息。4. 工作空間窗口(工作空間窗口(Workspace)工作空間用于顯示內(nèi)存中所有的變量名、變量?jī)?nèi)容、類型、大小和字節(jié)數(shù),不同的變量類型使用不同的圖標(biāo)。圖1_6 工作空間窗口5. 變量編輯器窗口(變量編輯器窗口(Variable Editor)6. M文件編輯調(diào)試器窗口(文件編輯調(diào)試器窗口(Editor)在M文件編輯調(diào)試器窗口中不僅可以編輯M文件,而且可以對(duì)M文件進(jìn)行交互式調(diào)試,使用菜單“Debug”實(shí)

5、現(xiàn)單步運(yùn)行和設(shè)斷點(diǎn)等調(diào)試,使用菜單“Cell”可以進(jìn)行單元調(diào)試。1.2 MATLAB基本運(yùn)算基本運(yùn)算1.2.1 MATLAB的數(shù)據(jù)類型的數(shù)據(jù)類型1. 數(shù)值型數(shù)值型(1)整數(shù)型(2)浮點(diǎn)型浮點(diǎn)型包括了單精度型(single)和雙精度型(double)。數(shù)據(jù)類型數(shù)據(jù)類型數(shù)值范圍數(shù)值范圍類型轉(zhuǎn)換函類型轉(zhuǎn)換函數(shù)數(shù)無符號(hào)8位整數(shù)uint8028 -1uint8()無符號(hào)16位整數(shù)uint160216 -1uint16()無符號(hào)32位整數(shù)uint320232 -1uint32()無符號(hào)64位整數(shù)uint640264 -1uint64()有符號(hào)8位整數(shù)int82-727 -1int8()有符號(hào)16位整數(shù)in

6、t162-15215 -1int16()有符號(hào)32位整數(shù)int322-31231 -1int32()有符號(hào)64位整數(shù)int642-63263 -1int64()2. 字符型(字符型(char)在MATLAB中字符型是使用單引號(hào)括起來。3. 邏輯型(邏輯型(logical)邏輯型(logical)數(shù)據(jù)只有“1”和“0”,分別表示true和false兩種狀態(tài) 4. 其它數(shù)據(jù)類型其它數(shù)據(jù)類型(1)元胞型(Cell)(2)結(jié)構(gòu)體型(Structure)1.2.2 MATLAB的數(shù)據(jù)的數(shù)據(jù)1. 空數(shù)組(空數(shù)組(empty array)沒有元素的數(shù)組,用空的“ ”表示。2. 標(biāo)量(標(biāo)量(scalar)標(biāo)量

7、也可以看成矩陣,是11的矩陣。3向量(向量(vector)向量指1n或n1的矩陣,即只有一行或者一列的矩陣。(1)使用“from:step:to”方式生成等差的行向量(2)使用linspace(a,b,n)和logspace(a,b,n)函數(shù)生成向量(3)字符串字符串也是行向量【例例1_3】創(chuàng)建行向量。 clear%清空工作空間 a1=1:10%步長(zhǎng)為1,從1到10a1 = 1 2 3 4 5 6 7 8 9 10 b=2:-0.5:0.5%步長(zhǎng)為-0.5,從2到0.5b = 2.0000 1.5000 1.0000 0.5000 b=b%轉(zhuǎn)置 a2=linspace(1,10,10)%從1到

8、10共分成10個(gè)元素a2 = 1 2 3 4 5 6 7 8 9 10 b2=logspace(-1,1,3)%從10-1-101分成3個(gè)元素b2 = 0.1000 1.0000 10.00004矩陣(矩陣(matrix)(1)創(chuàng)建矩陣矩陣是一個(gè)矩形的mn數(shù)組,即二維數(shù)組。在MATLAB中矩陣的創(chuàng)建應(yīng)遵循以下基本規(guī)則:矩陣元素應(yīng)用方括號(hào)()括??;每行內(nèi)的元素間用逗號(hào)(,)或空格隔開;行與行之間用分號(hào)(;)或回車鍵隔開;元素可以是數(shù)值或表達(dá)式?!纠?_4】創(chuàng)建矩陣。 a=1 2 3;4,5,6;7 8 9a = 1 2 3 4 5 6 7 8 9 b=0:2;linspace(5,8,3);l

9、ogspace(-2,2,3)%由行向量組成矩陣b = 0 1.0000 2.0000 5.0000 6.5000 8.0000 0.0100 1.0000 100.0000 c=a,b%由兩個(gè)矩陣合并c = 1.0000 2.0000 3.0000 0 1.0000 2.0000 4.0000 5.0000 6.0000 5.0000 6.5000 8.0000 7.0000 8.0000 9.0000 0.0100 1.0000 100.0000 d=MATLAB%創(chuàng)建字符串?dāng)?shù)組d =MATLAB5數(shù)組(數(shù)組(array)三維數(shù)組mnk,其中m,n,k分別表示行、列和頁(yè)。三維數(shù)組的創(chuàng)建有3

10、種方法:直接賦值,由二維數(shù)組擴(kuò)展和使用cat函數(shù)創(chuàng)建?!纠?_5】創(chuàng)建三維數(shù)組。 clear a(:,:,1)=1 2;3 4;%三維數(shù)組的第一頁(yè) a(:,:,2)=1 1;2 2%三維數(shù)組的第二頁(yè) b=10 9;8 7; b(:,:,2)=6 5;4 3%由二維數(shù)組擴(kuò)展一維產(chǎn)生三維數(shù)組 c1=4 4;3 3; c2=7 7;8 8; c=cat(3,c1,c2) %使用cat函數(shù)將c1和c2按第三維連接6. 復(fù)數(shù)復(fù)數(shù)復(fù)數(shù)包括實(shí)部和虛部,MATLAB用特殊變量“i”或“j”表示虛數(shù)的單位,因此在編程時(shí)要注意不要將i和j變量另外賦值。(1)直接創(chuàng)建復(fù)數(shù)用變量i和j來創(chuàng)建復(fù)數(shù),例如:z=2+3i

11、,z=2+3j,z=x+y*i,z=x+y*j。(2)用相角和模來創(chuàng)建復(fù)數(shù)復(fù)數(shù)可以根據(jù)模和相角來生成,其語法格式如下: z=r*exp(i*theta)%r為模,theta為相角,以弧度為單位根據(jù)復(fù)數(shù)z,模使用abs(z)來獲得,相角使用angle(z)來獲得。(3)用實(shí)部和虛部來創(chuàng)建復(fù)數(shù)復(fù)數(shù)也可以根據(jù)實(shí)部和虛部來生成,其語法格式為:z=complex(a,b)%a為實(shí)部,b為虛部。7. MATLAB的特殊變量的特殊變量特 殊 變 量特 殊 變 量名名取值取值特殊變量特殊變量名名取值取值ans 運(yùn)算結(jié)果的默認(rèn)變量名i或 ji=j= , 虛數(shù)單位pi圓周率nargin函數(shù)的輸入變量數(shù)目eps浮點(diǎn)

12、數(shù)的相對(duì)誤差nargout函數(shù)的輸出變量數(shù)目inf或INF無窮大,如1/0realmin最小的可用正實(shí)數(shù)N a N 或nan不定值,如0/0、/、0realmax最大的可用正實(shí)數(shù)1.2.2 MATLAB的數(shù)值運(yùn)算的數(shù)值運(yùn)算1. 算術(shù)運(yùn)算算術(shù)運(yùn)算(1)加、減運(yùn)算A+B 和A-B(2)乘法運(yùn)算矩陣運(yùn)算是A*B,矩陣A的列數(shù)必須等于矩陣B的行數(shù),除非其中有一個(gè)是標(biāo)量。數(shù)組運(yùn)算是A.*B,數(shù)組A和數(shù)組B對(duì)應(yīng)元素相乘,A和B的尺寸應(yīng)該相同(3)除法運(yùn)算MATLAB的除法分為左除和右除。矩陣除法左除AB,右除A/B。X=AB是方程A*X=B的解,AB=A-1*B。數(shù)組除法左除A./B,數(shù)組A除以數(shù)組B的對(duì)

13、應(yīng)元素;右除A.B,數(shù)組B除以數(shù)組A的對(duì)應(yīng)元素?!纠?_9】用矩陣除法求方程組的解。因?yàn)榫仃嚨淖蟪齒=AB是方程A*X=B的解,因此計(jì)算X=AB。 A=1 2 1;3 -2 7;4 -3 -7; B=65;17;5; X=AB%左除計(jì)算解方程X = 19.2576 22.5606 0.621257x-x3-4x177x2x3x65x2xx321321321(4)乘方運(yùn)算矩陣的乘方運(yùn)算AB數(shù)組的乘方運(yùn)算A.B,數(shù)組A和數(shù)組B對(duì)應(yīng)元素的乘方。(5)轉(zhuǎn)置運(yùn)算矩陣轉(zhuǎn)置A,矩陣A的轉(zhuǎn)置,如果矩陣A為復(fù)數(shù)矩陣,則轉(zhuǎn)置是指共軛轉(zhuǎn)置。數(shù)組轉(zhuǎn)置A.,數(shù)組A的元素轉(zhuǎn)置。2. 邏輯運(yùn)算邏輯運(yùn)算MATLAB的邏輯運(yùn)

14、算有三種類型:元素的邏輯運(yùn)算、位邏輯運(yùn)算和先決邏輯運(yùn)算。(1)元素的邏輯運(yùn)算元素的邏輯運(yùn)算是將數(shù)組中的元素一一進(jìn)行邏輯運(yùn)算,常用的邏輯運(yùn)算符:&(與)、|(或)、(非)和xor(異或)。(2)先決邏輯運(yùn)算先決邏輯運(yùn)算只能用于標(biāo)量的運(yùn)算。先決邏輯運(yùn)算符有:&(先決與)和|(先決或)。(3)位邏輯運(yùn)算位邏輯運(yùn)算就是對(duì)非負(fù)整數(shù)按二進(jìn)制形式進(jìn)行逐位邏輯運(yùn)算,然后將逐位邏輯運(yùn)算后的二進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù)輸出。位邏輯運(yùn)算函數(shù)有:bitand(位與)、bitor(位或)、bitcmp(位非)和bitxor(位異或)。1.2.3符號(hào)運(yùn)算1. 創(chuàng)建符號(hào)對(duì)象創(chuàng)建符號(hào)對(duì)象在進(jìn)行符號(hào)運(yùn)算時(shí),首先必須定

15、義符號(hào)對(duì)象(Symbolic Object)S=sym(s,參數(shù))%由數(shù)值創(chuàng)建符號(hào)對(duì)象syms s1 s2 s3 參數(shù)%創(chuàng)建多個(gè)符號(hào)變量【例例1_12】創(chuàng)建符號(hào)常量、表達(dá)式和矩陣。 a1=sin(1); sa1=sym(a1,d)%創(chuàng)建符號(hào)變量按十進(jìn)制格式sa1 =0.84147098480789650487565722869476 sa2=sym(a1,r)%創(chuàng)建符號(hào)變量按有理數(shù)格式sa2 =3789648413623927/4503599627370496 syms a b c x sy1=a*x2+b*x+c%創(chuàng)建符號(hào)表達(dá)式sy1 =a*x2 + b*x + c sy2=(y2+2*y+

16、1)%創(chuàng)建符號(hào)方程sy2 =y2+2*y+1 syms d e f g A=d,e;f,g%創(chuàng)建符號(hào)矩陣A = d, e f, g2自由符號(hào)變量的確定自由符號(hào)變量的確定當(dāng)符號(hào)表達(dá)式中含有多個(gè)符號(hào)變量時(shí),例如,符號(hào)表達(dá)式“ax2+bx+c”中有符號(hào)變量a、b、c和x,在運(yùn)算時(shí)往往只有一個(gè)符號(hào)變量是自由符號(hào)變量,其余的都當(dāng)作常量來處理。在符號(hào)表達(dá)式中如果有多個(gè)符號(hào)變量而沒有指定自由符號(hào)變量,則MATLAB將基于以下原則來選擇一個(gè)自由符號(hào)變量:符號(hào)表達(dá)式中的多個(gè)符號(hào)變量,按以下順序來選擇自由符號(hào)變量:首先選擇x,如果沒有x,則選擇在字母表順序中最接近x的字符變量,如果字母與x的距離相同,則在x后面的

17、優(yōu)先;字母pi、i和j不能作為自由符號(hào)變量;大寫字母比所有的小寫字母都靠后。例如,在符號(hào)表達(dá)式“ax2+bx+c”中,自由符號(hào)變量的順序?yàn)閤cba。3. 符號(hào)運(yùn)算(1)算術(shù)運(yùn)算 “”,“”,“*”,“”,“/”,“”運(yùn)算符分別實(shí)現(xiàn)符號(hào)矩陣的加、減、乘、左除、右除和求冪運(yùn)算。 “.*”,“./”,“.”,“.”運(yùn)算符分別實(shí)現(xiàn)符號(hào)數(shù)組的乘、除、求冪,即數(shù)組間元素與元素的運(yùn)算。 “”,“.”運(yùn)算符分別實(shí)現(xiàn)符號(hào)矩陣的共軛轉(zhuǎn)置和非共軛轉(zhuǎn)置。(2)關(guān)系運(yùn)算在符號(hào)對(duì)象的比較中,只有運(yùn)算符“= =”、“=”分別對(duì)符號(hào)對(duì)象進(jìn)行“相等”、“不等”的比較,比較結(jié)果用1表示true,用0表示false。1.3 MAT

18、LAB的繪圖1.3.1 二維繪圖1. plot函數(shù)函數(shù)plot函數(shù)可以方便地對(duì)縱橫坐標(biāo)向量和矩陣進(jìn)行繪圖。其語法格式為:plot(y) %繪制以y為縱坐標(biāo)的二維曲線plot(x,y) %繪制以x為橫坐標(biāo)y為縱坐標(biāo)的二維曲線plot(x1,y1,x2,y2)%在同一窗口繪制多條二維曲線其中:x和y可以是實(shí)數(shù)向量或矩陣,也可以是復(fù)數(shù)向量或矩陣。【例例1_13】在一個(gè)窗口上繪制兩個(gè)子圖,并分別繪制曲線。 subplot(1,2,1)%產(chǎn)生一行兩列的左邊子圖 y1=magic(3)%生成魔方陣y1 = 8 1 6 3 5 7 4 9 2 plot(y1) subplot(1,2,2) x2=0:0.1

19、:2*pi; y21=sin(x2); plot(x2,y21) hold on%保持原曲線 y22=2*sin(x2+pi/3); plot(x2,y22)2. 修飾曲線修飾曲線plot(x,y,s)【例例1_14】繪制曲線并添加圖形修飾,繪制的圖形如圖1_12所示。 x2=0:0.1:2*pi; y21=sin(x2); plot(x2,y21,r*-.) hold on y22=2*sin(x2+pi/3); plot(x2,y22,b+:) title(Two Sine Lines)%添加標(biāo)題 xlabel(x)%添加橫坐標(biāo)標(biāo)注 ylabel(y)%添加縱坐標(biāo)標(biāo)注 legend(sin

20、(x),2sin(x+pi/3),0)%在右下角添加圖例1.3.2 1.3.2 特殊繪圖特殊繪圖MATLAB的Workspace窗口中,如果選擇了Workspace窗口中的變量x,單擊工具欄中的繪制列數(shù)據(jù)曲線按鈕(Plot)旁的下來箭頭,出現(xiàn)下拉的菜單如圖1_13所示各種不同的特殊圖形 。2. 向量圖向量圖向量圖可以用來表示復(fù)數(shù)。(1)compass函數(shù)compass函數(shù)繪制的圖中每個(gè)數(shù)據(jù)點(diǎn)都是以原點(diǎn)為起點(diǎn)的帶箭頭線段,稱為羅盤圖。compass(u,v,線型) %繪制橫坐標(biāo)為u縱坐標(biāo)為v的羅盤圖(2)feather函數(shù)feather函數(shù)是在直角坐標(biāo)系中繪圖,起點(diǎn)為X軸上間隔單位長(zhǎng)度的刻度點(diǎn),

21、稱為羽毛圖。feather(u,v,線型)%繪制橫坐標(biāo)為u縱坐標(biāo)為v的羽毛圖3. 特殊坐標(biāo)軸圖特殊坐標(biāo)軸圖特殊坐標(biāo)軸是指坐標(biāo)并不是均勻刻度的坐標(biāo),常用的有極坐標(biāo)圖和對(duì)數(shù)坐標(biāo)圖。(1)極坐標(biāo)圖在MATLAB中繪制極坐標(biāo)圖使用polar命令,其語法格式為:polar(theta,rho,參數(shù))%繪制極坐標(biāo)(2)對(duì)數(shù)坐標(biāo)圖對(duì)數(shù)坐標(biāo)圖是指坐標(biāo)軸的刻度不是線性刻度而是對(duì)數(shù)刻度,semilogx和 semilogy函數(shù)分別繪制對(duì)X軸和Y軸的半對(duì)數(shù)坐標(biāo)圖,loglog是雙對(duì)數(shù)坐標(biāo)圖。其語法格式如下:semilogx(x1,y1,線型) %繪制x為對(duì)數(shù)的多條曲線semilogy(x1,y1,線型) %繪制y為

22、對(duì)數(shù)的多條曲線loglog(x1,y1,線型) %繪制x、y都為對(duì)數(shù)的多條曲線1.3.3 三維繪圖1. 三維曲線圖三維曲線圖三維曲線圖是指根據(jù)(x,y,z)坐標(biāo)變化繪制的曲線。plot3(x,y,z,線型)%繪制三維曲線2. 三維網(wǎng)格線圖三維網(wǎng)格線圖繪制三維網(wǎng)格線圖的方法是用矩形網(wǎng)格來繪制曲面,即將x方向劃分為m份,將y方向劃分為n份,因此在繪制三維網(wǎng)格線圖之前要先產(chǎn)生矩形網(wǎng)格。(1) 產(chǎn)生矩形網(wǎng)格MATLAB的meshgrid函數(shù)就是用來在(x,y)平面上產(chǎn)生矩形網(wǎng)格,其語法格式如下:X,Ymeshgrid(x,y)%產(chǎn)生XY矩形網(wǎng)格(2)繪制三維網(wǎng)線圖三維網(wǎng)線圖就是將平面上的網(wǎng)格點(diǎn)(X,Y

23、)對(duì)應(yīng)z值的頂點(diǎn)畫出mesh(X,Y,Z,C) %繪制網(wǎng)格點(diǎn)數(shù)據(jù)對(duì)應(yīng)的三維網(wǎng)線3. 三維表面圖三維表面圖三維表面圖用顏色來填充整個(gè)表面surf(X,Y,Z,C)%繪制網(wǎng)格點(diǎn)數(shù)據(jù)對(duì)應(yīng)的三維表面圖【例例1_17】繪制高斯分布的三維網(wǎng)格線圖和曲面圖,繪制的圖形如圖1_16所示。 x=1:49; X,Y=meshgrid(x);%產(chǎn)生網(wǎng)格線 Z=peaks;%產(chǎn)生高斯分布矩陣 subplot(1,2,1) mesh(X,Y,Z)%繪制三維網(wǎng)格線圖 subplot(1,2,2) surf(X,Y,Z)%繪制三維曲面圖1.4 MATLAB程序設(shè)計(jì)1.4.1 流程控制語句流程控制語句1. return命令命

24、令return命令用于提前結(jié)束程序的執(zhí)行,并立即返回到上一級(jí)調(diào)用函數(shù)或等待鍵盤輸入命令。2. pause命令命令pause命令用來使程序暫停運(yùn)行。3. keyboard命令命令keyboard命令用來使程序暫停運(yùn)行,等待鍵盤命令,命令窗口出現(xiàn)“K”提示符。4. input命令命令input命令用于在程序運(yùn)行過程中接收用戶的輸入:r=input(str,s)%從鍵盤中輸入數(shù)據(jù)保存到變量r5. disp命令命令disp命令是較常用的顯示命令,常用來顯示字符串型的信息提示。disp(x)%顯示x數(shù)組1.4.2 分支結(jié)構(gòu)1. if 結(jié)構(gòu)if 條件1語句段1elseif 條件2語句段2. else語句段

25、nend【例例1_18】從鍵盤輸入數(shù)字或者字符串,判斷其數(shù)據(jù)類型。 s=input(Please input:)%從鍵盤輸入Please input:67s = 67 if isnumeric(s)%判斷是否是數(shù)值型 disp ( num2str(s), is a number.)%顯示信息 N=1else disp ( s, is a string.) N=0end2. switch 結(jié)構(gòu)結(jié)構(gòu)switch 表達(dá)式case 值1 語句段1case值2 語句段2. otherwise 語句段nend 【例例1_19】從鍵盤輸入月份數(shù)字,判斷季節(jié)。 n=input(Please input mon

26、th:);Please input month:4 if n=1%if結(jié)構(gòu) switch n%switch結(jié)構(gòu) case12,1,2 disp (Its spring.) case3,4,5 disp( Its summer.) case6,7,8 disp(Its autumn.) otherwise disp(Its winter.) endend1.4.3 循環(huán)結(jié)構(gòu)1. for循環(huán)循環(huán)for循環(huán)常用于預(yù)先知道循環(huán)次數(shù)的情況,for循環(huán)結(jié)構(gòu)的格式如下:for 循環(huán)變量=array循環(huán)體end 說明:array可以是向量也可以是矩陣,循環(huán)執(zhí)行的次數(shù)就是array的列數(shù),每次循環(huán)中循環(huán)變量依次

27、取array的各列數(shù)據(jù),直到array所有列取完。for循環(huán)的循環(huán)次數(shù)比較特殊,是由array的列數(shù)決定的,下面幾個(gè)for循環(huán)表達(dá)式:for n=1:10 %循環(huán)10次a=eye(2,3); for n=a%循環(huán)3次,每次循環(huán)n為a的某一列2. while循環(huán)循環(huán)while循環(huán)常用于預(yù)先知道循環(huán)條件或循環(huán)結(jié)束條件的情況,while循環(huán)結(jié)構(gòu)的格式如下:while 條件表達(dá)式循環(huán)體end 說明:當(dāng)條件表達(dá)式為True,就執(zhí)行循環(huán)體;如果為False,就結(jié)束循環(huán);條件表達(dá)式可以是向量也可以是矩陣,如果表達(dá)式為矩陣則所有的元素都為True才執(zhí)行循環(huán)體,否則不執(zhí)行,如果條件表達(dá)式為NAN,也不執(zhí)行循環(huán)體

28、。3. break和和continue語句語句在循環(huán)結(jié)構(gòu)中break和continue語句可以用來終止循環(huán),一般與if語句結(jié)合使用。(1)break語句break語句強(qiáng)制終止包含break的最內(nèi)層for或while循環(huán),并立即跳出該循環(huán),執(zhí)行end后面的命令。(2)continue語句continue語句與break不同的是continue只結(jié)束本次for或while循環(huán),而繼續(xù)進(jìn)行下次循環(huán)。1.4.4 錯(cuò)誤結(jié)構(gòu)錯(cuò)誤結(jié)構(gòu)錯(cuò)誤控制結(jié)構(gòu)的格式如下:try 語句段1catch 語句段2end 說明:先試探地執(zhí)行語句段1,如果出現(xiàn)錯(cuò)誤則將錯(cuò)誤信息賦給保留的lasterr變量,并放棄語句段1轉(zhuǎn)而執(zhí)行語句

29、段2中的語句;如果語句段2正確則結(jié)束;如果語句段1正確則不執(zhí)行語句段2就結(jié)束;當(dāng)語句段1和語句段2都錯(cuò)誤,則程序出錯(cuò)。1.5 MATLAB的文件的文件1.5.1 MATLAB的文件類型的文件類型1. 程序文件程序文件程序文件即M文件(M-File。2. 圖形文件圖形文件圖形文件(Figure)的擴(kuò)展名為.fig,由MATLAB的繪圖命令生成的都是.fig文件,在上圖中選擇“Figure”就是創(chuàng)建圖形文件。3. 模型文件模型文件模型文件(Model)擴(kuò)展名為.mdl,可以在Simulink環(huán)境中建模生成的。4. 數(shù)據(jù)文件數(shù)據(jù)文件數(shù)據(jù)文件即MAT文件,其文件的擴(kuò)展名為.mat,用來保存工作空間的數(shù)

30、據(jù)變量。5. 可執(zhí)行文件可執(zhí)行文件1.5.2 M腳本文件(Script)M腳本文件的說明如下:(1)MATLAB在運(yùn)行腳本文件時(shí),只是簡(jiǎn)單地按順序從文件中讀取一條條命令,送到MATLAB命令窗口中去執(zhí)行;(2)M腳本文件運(yùn)行產(chǎn)生的變量都駐留在MATLAB的工作空間中,可以很方便地查看變量,在命令窗口中運(yùn)行的命令都可以使用這些變量;(3)M腳本文件的命令可以訪問工作空間的所有數(shù)據(jù),因此要注意避免工作空間和腳本文件中的同名變量相互覆蓋,一般在M腳本文件的開頭使用“clear”命令清除工作空間的變量。1.5.3 M函數(shù)文件M函數(shù)文件的說明如下:(1)每個(gè)函數(shù)以函數(shù)聲明行開頭,M函數(shù)文件中的函數(shù)聲明行是必不可少的,函數(shù)聲明行的格式如下:function 輸出參數(shù)列表 = 函數(shù)名(輸入?yún)?shù)列表)(2)在函數(shù)聲明行后面跟H1行,為文件的幫助信息,H1行不是必須的,用“%”開頭表示注釋,不是需要執(zhí)行的命令;在MATLAB的“Current Folder”窗口的文件欄下面,就顯示了每個(gè)M文件的H1行。(3)M函數(shù)文件在運(yùn)行過程中產(chǎn)生的變量都存放在函數(shù)本身的工作空間中,函數(shù)的工作空間是獨(dú)立的、臨時(shí)的,隨具體的M函數(shù)文件調(diào)用而產(chǎn)生并隨調(diào)用結(jié)束而刪除,在MATLAB運(yùn)行過程中如果運(yùn)行多個(gè)函數(shù)則產(chǎn)生多個(gè)臨時(shí)的函數(shù)空間;(4)當(dāng)文件執(zhí)行完最后一條命令或遇到“return”命令時(shí)就結(jié)束函數(shù)文件的運(yùn)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論