版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第一節(jié)MATLAB簡(jiǎn)介第二節(jié)
MATLAB的安裝和用戶界面第三節(jié)基本使用方法第四節(jié)數(shù)值向量和數(shù)組第五節(jié)字符串、單元數(shù)組和結(jié)構(gòu)第六節(jié)矩陣計(jì)算初步第七節(jié)符號(hào)運(yùn)算第八節(jié)圖形處理第九節(jié)GUI圖形設(shè)計(jì)第十節(jié)MATLAB7程序設(shè)計(jì)第十一節(jié)
Simulink建模與仿真基礎(chǔ)2022/12/101第一章MATLAB7簡(jiǎn)介MATLAB的初步知識(shí)MATLAB最初是由CleveMoler博士用Fortran語(yǔ)言設(shè)計(jì)的,現(xiàn)在的MATLAB程序是MathWorks公司用C語(yǔ)言開(kāi)發(fā)的。MATLAB是由數(shù)值線性代數(shù)領(lǐng)域頗有影響的CleveMoler博士發(fā)明,他在講授線性代數(shù)課程時(shí),深感高級(jí)語(yǔ)言編程的諸多不便,于是萌生了開(kāi)發(fā)新的軟件平臺(tái)的念頭,這個(gè)平臺(tái)就是MATLAB(MATrix
LABoratory,矩陣實(shí)驗(yàn)室)2022/12/102第一章MATLAB7簡(jiǎn)介MATLAB的主要應(yīng)用領(lǐng)域(1)數(shù)值分析。(2)數(shù)值和符號(hào)計(jì)算。(3)工程與科學(xué)繪圖。(4)控制系統(tǒng)的設(shè)計(jì)與方針。(5)數(shù)字圖像處理。(6)數(shù)字信號(hào)處理。(7)通訊系統(tǒng)設(shè)計(jì)與仿真。(8)財(cái)務(wù)與金融工程。2022/12/103第一章MATLAB7簡(jiǎn)介MATLAB的優(yōu)點(diǎn)1.容易使用2.可以由多種操作系統(tǒng)支持3.豐富的內(nèi)部函數(shù)4.強(qiáng)大的圖形和符號(hào)功能5.可以自動(dòng)選擇算法6.與其他軟件和語(yǔ)言有良好的對(duì)接性2022/12/104第一章MATLAB7簡(jiǎn)介
MATLAB的缺點(diǎn)運(yùn)行效率較低MATLAB是一種解釋型語(yǔ)言,因此,與一般的高級(jí)語(yǔ)言相比,用MATLAB編寫(xiě)的程序運(yùn)行起來(lái)時(shí)間往往要長(zhǎng)一些。價(jià)格比較貴(這個(gè)很多人……)一般的用戶可能支付不起它的高昂費(fèi)用。但是,購(gòu)買MATLAB的昂貴費(fèi)用在很大程度上可以由使用它所編寫(xiě)的程序的價(jià)值抵消。2022/12/105第一章MATLAB7簡(jiǎn)介第二節(jié)MATLAB7用戶界面2022/12/106第一章MATLAB7簡(jiǎn)介MATLAB7用戶界面概述MATLAB7的用戶界面主要包括以下三個(gè)方面的內(nèi)容:MATLAB7的主菜單MATLAB7的工具欄MATLAB7的窗口2022/12/107第一章MATLAB7簡(jiǎn)介2022/12/108第一章MATLAB7簡(jiǎn)介MATLAB7的窗口打開(kāi)MATLAB7,默認(rèn)打開(kāi)的窗口包括:(1)命令窗口(CommandWindow);(2)命令歷史窗口(CommandHistory);(3)工作間管理窗口(Workspace);此外,還有編譯窗口、圖形窗口和幫助窗口等其他種類的窗口。2022/12/109第一章MATLAB7簡(jiǎn)介(1)命令窗口在默認(rèn)設(shè)置下,命令窗口自動(dòng)顯示于MATLAB界面中,如果用戶只想調(diào)出命令窗口,也可以選擇Desktop|DesktopLayout|CommandWindowOnly命令。MATLAB7用戶界面的右側(cè)窗口就為命令窗口。2022/12/1010第一章MATLAB7簡(jiǎn)介(2)命令歷史窗口命令歷史窗口顯示用戶在命令窗口中所輸入的每條命令的歷史記錄,并標(biāo)明使用時(shí)間,這樣可以方便用戶的查詢。如果用戶想再次執(zhí)行某條已經(jīng)執(zhí)行過(guò)的命令,只需在命令歷史窗口中雙擊該命令。2022/12/1011第一章MATLAB7簡(jiǎn)介(3)工作空間管理窗口工作空間管理窗口就是用來(lái)顯示當(dāng)前計(jì)算機(jī)內(nèi)存中MATLAB變量的名稱、數(shù)學(xué)結(jié)構(gòu)、該變量的字節(jié)數(shù)及其類型。在默認(rèn)設(shè)置下,工作空間管理窗口自動(dòng)顯示于MATLAB界面中。2022/12/1012第一章MATLAB7簡(jiǎn)介使用幫助系統(tǒng)
MATLAB7.0為用戶提供了非常完善的幫助系統(tǒng),例MATLAB的在線幫助、幫助窗口、幫助提示、HTML格式的幫助、pdf格式的幫助文件及MATLAB的示例和演示等。2022/12/1013第一章MATLAB7簡(jiǎn)介第三節(jié)基本使用方法簡(jiǎn)單的數(shù)學(xué)運(yùn)算常用的操作命令和鍵盤(pán)技巧
MATLAB7的數(shù)據(jù)類型2022/12/1014第一章MATLAB7簡(jiǎn)介1.簡(jiǎn)單的數(shù)學(xué)運(yùn)算計(jì)算器使用
標(biāo)點(diǎn)符號(hào)的使用常用的操作命令和鍵盤(pán)技巧2022/12/1015第一章MATLAB7簡(jiǎn)介(1)計(jì)算器使用
直接輸入法>>3*30+3*35+4*30+4*32ans=443>>存儲(chǔ)變量法>>grade1=3*30grade1=90>>grade2=3*35grade2=105>>total=grade1+grade2total=195>>2022/12/1016第一章MATLAB7簡(jiǎn)介
符號(hào)功能實(shí)例+加法1+2-減法1-2*乘法1*2/、\除法1/2或是2\1^乘方2^1數(shù)值運(yùn)算符號(hào)2022/12/1017第一章MATLAB7簡(jiǎn)介(2)常用標(biāo)點(diǎn)符號(hào)標(biāo)點(diǎn)符號(hào)定義標(biāo)點(diǎn)符號(hào)定義;區(qū)分行,取消運(yùn)行顯示等.小數(shù)點(diǎn)以及域訪問(wèn)等,區(qū)分列,函數(shù)參數(shù)分隔符等…連接語(yǔ)句:在數(shù)組中應(yīng)用較多‘字符串的標(biāo)識(shí)符號(hào)()指定運(yùn)算優(yōu)先級(jí)等=賦值符號(hào)[]矩陣定義的標(biāo)志等!調(diào)用操作系統(tǒng)運(yùn)算{}用于構(gòu)成單元數(shù)組等%注釋語(yǔ)句的標(biāo)識(shí)2022/12/1018第一章MATLAB7簡(jiǎn)介應(yīng)用舉例例電子科大電子系一年級(jí)有3個(gè)班,每班30人,二年級(jí)有3個(gè)班,每班35人,三年級(jí)有4個(gè)班,每班30人,四年級(jí)有4個(gè)班,每班32人。求電子科大電子系本科一共有多少人。>>grade1=3*30;>>grade2=3*35;>>grade3=4*30;>>grade4=4*32;>>total=grade1+grade2+grade1+grade2total=443>>2022/12/1019第一章MATLAB7簡(jiǎn)介2.常用的操作命令和鍵盤(pán)技巧
在使用MATLAB7語(yǔ)言編制程序時(shí),掌握一些常用的操作命令和鍵盤(pán)操作技巧,可以起到事半功倍的效果。2022/12/1020第一章MATLAB7簡(jiǎn)介(1)常用的操作命令命令該命令的功能命令該命令的功能cd顯示或改變工作目錄hold圖形保持命令clc清除工作窗l(fā)oad加載指定文件的變量clear清除內(nèi)存變量pack整理內(nèi)存碎片clf清除圖形窗口path顯示搜索目錄diary日志文件命令quit退出MATLAB7dir顯示當(dāng)前目錄下文件save保存內(nèi)存變量到指定文件disp顯示變量或文字內(nèi)容type顯示文件內(nèi)容echo工作窗信息顯示開(kāi)關(guān)
2022/12/1021第一章MATLAB7簡(jiǎn)介(2)常用的鍵盤(pán)操作和快捷鍵鍵盤(pán)按鈕和快捷鍵該操作的功能鍵盤(pán)按鈕和快捷鍵該操作的功能↑(Ctrl+p)調(diào)用上一行Home(Ctrl+a)光標(biāo)置于當(dāng)前行開(kāi)頭↓(Ctrl+n)調(diào)用下一行End(Ctrl+e)光標(biāo)置于當(dāng)前行結(jié)尾←(Ctrl+b)光標(biāo)左移一個(gè)字符Esc(Ctrl+u)清除當(dāng)前輸入行→(Ctrl+f)光標(biāo)右移一個(gè)字符Del(Ctrl+d)刪除光標(biāo)處字符Ctrl+←光標(biāo)左移一個(gè)單詞Backspace(Ctrl+h)刪除光標(biāo)前字符Ctrl+→光標(biāo)右移一個(gè)單詞Alt+BackSpace恢復(fù)上一次刪除2022/12/1022第一章MATLAB7簡(jiǎn)介3.MATLAB的數(shù)據(jù)類型常量和變量常量變量浮點(diǎn)數(shù)和復(fù)數(shù)浮點(diǎn)數(shù)復(fù)數(shù)2022/12/1023第一章MATLAB7簡(jiǎn)介(1)常量在MATLAB中有一些特定的變量,已經(jīng)被預(yù)定義了某個(gè)特定的值,因此這些變量被稱為常量。MATLAB中的常量主要有pi、inf和eps等。常量常量的功能常量常量的功能ans用作結(jié)果的默認(rèn)變量名nargin函數(shù)的輸入?yún)?shù)個(gè)數(shù)beep使計(jì)算機(jī)發(fā)出“嘟嘟”聲nargin函數(shù)的輸出參數(shù)個(gè)數(shù)pi圓周率varagin可變的函數(shù)輸入?yún)?shù)個(gè)數(shù)eps浮點(diǎn)數(shù)相對(duì)誤差varagout可變的函數(shù)輸出參數(shù)個(gè)數(shù)inf無(wú)窮大realmin最小的正浮點(diǎn)數(shù)NaN或nan不定數(shù)realmax最大的正浮點(diǎn)數(shù)i或j復(fù)數(shù)單位bitmax最大的正整數(shù)2022/12/1024第一章MATLAB7簡(jiǎn)介(2)變量變量是MATLAB7的基本元素之一,MATLAB7語(yǔ)言不要求對(duì)所使用的變量進(jìn)行事先說(shuō)明,而且它也不需要指定變量的類型,系統(tǒng)會(huì)根據(jù)該變量被賦予的值或?qū)υ撟兞克M(jìn)行的操作來(lái)自動(dòng)確定變量的類型。變量名長(zhǎng)度不超過(guò)31位,超過(guò)31位的字符系統(tǒng)將忽略不計(jì)變量名區(qū)分大小寫(xiě)變量名必須以字母開(kāi)頭,變量名中可以包含字母、數(shù)字或下劃線,但不允許出現(xiàn)標(biāo)點(diǎn)符號(hào)2022/12/1025第一章MATLAB7簡(jiǎn)介(3)浮點(diǎn)數(shù)幾乎在所有的情況下,MATLAB7的數(shù)據(jù)都是以雙精度數(shù)值來(lái)表示的,這些雙精度數(shù)在系統(tǒng)內(nèi)部用二進(jìn)制來(lái)表示。這是計(jì)算機(jī)通常的表示數(shù)據(jù)的方式,但也帶來(lái)了一些問(wèn)題,比如有很多實(shí)數(shù)不能被精確地表示,對(duì)能夠表示的值也有一個(gè)限制,并且還存在一個(gè)浮點(diǎn)相對(duì)誤差限。所謂相對(duì)誤差限是指MATLAB7語(yǔ)言能夠區(qū)分兩個(gè)不同大小的數(shù)時(shí),這兩個(gè)數(shù)之間的最小差值。2022/12/1026第一章MATLAB7簡(jiǎn)介浮點(diǎn)數(shù)舉例下邊3個(gè)式子的計(jì)算結(jié)果是相同的,但是由于這些數(shù)字都是使用二進(jìn)制存儲(chǔ)的,在使用雙精度數(shù)來(lái)表達(dá)這些數(shù)時(shí),往往就會(huì)出現(xiàn)一些誤差>>a=0.33-0.5+0.17a=2.7756e-017>>b=0.33+0.17-0.5b=0>>c=0.17-0.5+0.33c=5.5511e-017>>2022/12/1027第一章MATLAB7簡(jiǎn)介(4)復(fù)數(shù)MATLAB7語(yǔ)言對(duì)復(fù)數(shù)的處理也是十分簡(jiǎn)便的,在處理復(fù)數(shù)問(wèn)題時(shí),不需要進(jìn)行其他任何的附加操作。>>a2=pi+3.14ja2=3.1416+3.1400i>>>>b=4*(1+3/sqrt(-1))b=4.0000-12.0000i>>2022/12/1028第一章MATLAB7簡(jiǎn)介復(fù)數(shù)的數(shù)學(xué)運(yùn)算舉例>>a=1+2*ia=1.0000+2.0000i>>b=3-4ib=3.0000-4.0000i>>c=pi+sin(pi/2)*ic=3.1416+1.0000i>>d=a+bd=4.0000-2.0000i2022/12/1029第一章MATLAB7簡(jiǎn)介第四節(jié)數(shù)值向量和數(shù)組向量及其運(yùn)算方法數(shù)組及其運(yùn)算方法多項(xiàng)式的創(chuàng)建和運(yùn)算方法關(guān)系和邏輯運(yùn)算2022/12/1030第一章MATLAB7簡(jiǎn)介1.向量及其運(yùn)算在命令窗口中直接輸入向量等差元素向量的生成向量與數(shù)的四則運(yùn)算向量與向量之間的加減運(yùn)算點(diǎn)積、叉積和混合積2022/12/1031第一章MATLAB7簡(jiǎn)介(1)在命令窗口中直接輸入向量在MATLAB7中,生成向量最簡(jiǎn)單的方法就是在命令窗口中按一定格式直接輸入。輸入的格式要求是,向量元素用“[]”括起來(lái),元素之間用空格、逗號(hào)或者分號(hào)相隔。需要注意的是,用它們相隔生成的向量形式是不相同的:用空格或逗號(hào)生成行向量;用分號(hào)生成列向量。>>a2=[15,21,27,93,101];>>a1=[15;21;27;93;101];>>a1a1gt;>a2a2gt;>2022/12/1032第一章MATLAB7簡(jiǎn)介(2)等差元素向量的生成當(dāng)向量的元素過(guò)多,同時(shí)向量各元素有等差的規(guī)律,此時(shí)采用直接輸入法將過(guò)于繁瑣。針對(duì)該種情況,可以使用冒號(hào)(:)和linspace函數(shù)來(lái)生成等差元素向量。>>vec1=10:5:60vec1=1015202530354045505560>>vec2=linspace(10,60,11)vec2=10152025303540455055602022/12/1033第一章MATLAB7簡(jiǎn)介(3)向量與數(shù)的四則運(yùn)算向量與數(shù)的加法(減法):向量中的每個(gè)元素與數(shù)的加法(減法)運(yùn)算。向量與數(shù)的乘法(除法):向量中的每個(gè)元素與數(shù)的乘法(除法)運(yùn)算。>>vec1=80:-9:10vec1=8071625344352617>>vec1+101ans=181172163154145136127118>>2022/12/1034第一章MATLAB7簡(jiǎn)介(4)向量與向量之間的加減運(yùn)算向量與向量的加法(減法)運(yùn)算:向量中的每個(gè)元素與另一個(gè)向量中相對(duì)應(yīng)的元素的加法(減法)運(yùn)算。>>vec1=linspace(200,500,7)>>vec2=linspace(900,600,7)>>vec3=vec1+vec2vec3=Columns1through511001100110011001100Columns6through711001100>>2022/12/1035第一章MATLAB7簡(jiǎn)介(5)點(diǎn)積、叉積和混合積兩個(gè)向量的點(diǎn)積等于其中一個(gè)向量的模與另一個(gè)向量在這個(gè)向量的方向上的投影的乘積叉積的幾何意義是指過(guò)兩個(gè)相交向量的交點(diǎn),并與此兩向量所在平面垂直的向量向量的混合積的幾何意義是它的絕對(duì)值表示以向量為棱的平行六面體的體積2022/12/1036第一章MATLAB7簡(jiǎn)介點(diǎn)積、叉積運(yùn)算舉例點(diǎn)積運(yùn)算>>x1=[11223344]>>x2=[1,2,3,4]>>a=dot(x1,x2)a=330>>sum(x1.*x2)ans=330>>叉積運(yùn)算>>x1=[112233]x1=112233>>x2=[123]x2=123>>x3=cross(x1,x2)x3=0002022/12/1037第一章MATLAB7簡(jiǎn)介2.數(shù)組及其運(yùn)算數(shù)組尋址和排序數(shù)組的基本數(shù)值運(yùn)算數(shù)組的關(guān)系運(yùn)算數(shù)組的邏輯運(yùn)算2022/12/1038第一章MATLAB7簡(jiǎn)介(1)數(shù)組尋址和排序通過(guò)對(duì)數(shù)組下標(biāo)的訪問(wèn)來(lái)實(shí)現(xiàn)數(shù)組尋址>>A=rand(1,5)A=0.95010.23110.60680.48600.8913>>>>A(4)ans=0.4860>>>>A(2:3)ans=0.23110.6068使用sort函數(shù)對(duì)數(shù)組進(jìn)行排序>>X=[375042]>>sort(X,1)ans=042375>>sort(2)ans=22022/12/1039第一章MATLAB7簡(jiǎn)介(2)數(shù)組的基本數(shù)值運(yùn)算數(shù)組的加法(減法)數(shù)組的乘法(除法)數(shù)組的乘方2022/12/1040第一章MATLAB7簡(jiǎn)介數(shù)值運(yùn)算舉例加減法>>X=[147];>>Y=[258];>>Z=X-YZ=-1-1-1>>V=X+YV=3915>>乘方>>X=[147]X=147>>Y=[258]Y=258>>Z=X.^YZ=1102457648012022/12/1041第一章MATLAB7簡(jiǎn)介(3)數(shù)組的關(guān)系運(yùn)算兩個(gè)數(shù)通常可以用6種關(guān)系來(lái)進(jìn)行描述:小于(<)、小于等于(<=)、大于(>)、大于等于(>=)、等于(==)和不等于(~=)比較兩個(gè)元素的大小時(shí),如果結(jié)果為1,則表明關(guān)系式為真;如果結(jié)果為0,則表明關(guān)系式為假。例如關(guān)系式4+3<=6(數(shù)學(xué)語(yǔ)言表示4與3的和小于等于6),通過(guò)上面的敘述可知,此關(guān)系式的結(jié)果為0,標(biāo)明關(guān)系式為假。
2022/12/1042第一章MATLAB7簡(jiǎn)介(4)數(shù)組的邏輯運(yùn)算在各種邏輯運(yùn)算中,有3種邏輯運(yùn)算:與(&)、或(|)和非(~)?!?”和“|”操作符號(hào)可以比較兩個(gè)標(biāo)量或者兩個(gè)通解數(shù)組(或矩陣);對(duì)于邏輯非“~”是一個(gè)一元操作符。但是對(duì)于數(shù)組(矩陣),邏輯運(yùn)算是針對(duì)于數(shù)組(矩陣)中的每一個(gè)元素。同樣,當(dāng)邏輯為真時(shí),返回值為1;當(dāng)邏輯為假時(shí),返回值為0。在MATLAB7中,邏輯運(yùn)算通常可以用來(lái)生成只含有元素0和1的矩陣。2022/12/1043第一章MATLAB7簡(jiǎn)介3.多項(xiàng)式多項(xiàng)式的創(chuàng)建多項(xiàng)式的運(yùn)算關(guān)系和邏輯運(yùn)算2022/12/1044第一章MATLAB7簡(jiǎn)介(1)多項(xiàng)式的創(chuàng)建直接輸入系數(shù)向量創(chuàng)建多項(xiàng)式特征多項(xiàng)式輸入法由多項(xiàng)式的根逆推多項(xiàng)式2022/12/1045第一章MATLAB7簡(jiǎn)介直接輸入系數(shù)向量創(chuàng)建多項(xiàng)式由于在MATLAB7中多項(xiàng)式是以向量的形式存儲(chǔ)的,直接輸入向量,MATLAB7將按降冪自動(dòng)把向量的元素分配給多項(xiàng)式各項(xiàng)的系數(shù)。而該向量可以是行向量,也可以是列向量。>>P=[3501012]P=3501012>>y=poly2sym(P)y=3*x^5+5*x^4+x^2+12>>disp(y)3*x^5+5*x^4+x^2+12>>2022/12/1046第一章MATLAB7簡(jiǎn)介特征多項(xiàng)式輸入法MATLAB7提供了poly函數(shù),使用它可以由矩陣的特征多項(xiàng)式創(chuàng)建多項(xiàng)式。使用該方法生成多項(xiàng)式時(shí),其首項(xiàng)的系數(shù)必為1。>>A=[3141;5926;5358;9793]A=3141592653589793>>p=poly(A);>>disp(poly2sym(p))x^4-20*x^3-16*x^2+480*x+1724034232352773/175921860444162022/12/1047第一章MATLAB7簡(jiǎn)介由多項(xiàng)式的根逆推多項(xiàng)式
如果已知某個(gè)多項(xiàng)式的根,那么,使用poly函數(shù),可以很輕松地產(chǎn)生其對(duì)應(yīng)的多項(xiàng)式。>>roots=[-4-2+2i-2-2i5]roots=-4.0000-2.0000+2.0000i-2.0000-2.0000i5.0000>>p=poly(roots)p=13-16-88-160>>disp(poly2sym(p))x^4+3*x^3-16*x^2-88*x-160>>2022/12/1048第一章MATLAB7簡(jiǎn)介(2)多項(xiàng)式的運(yùn)算多項(xiàng)式的求值求多項(xiàng)式的根多項(xiàng)式的四則運(yùn)算2022/12/1049第一章MATLAB7簡(jiǎn)介多項(xiàng)式的求值MATLAB7提供了兩個(gè)函數(shù)來(lái)對(duì)多項(xiàng)式進(jìn)行求值,即polyval和polyvalm。前者以數(shù)組為計(jì)算單位,后者以矩陣為計(jì)算單位。>>p=[1.0000-20.0000-16.0000480.000098.0000]p=1-20-1648098>>x=4x=4>>polyval(p,x)ans=7382022/12/1050第一章MATLAB7簡(jiǎn)介求多項(xiàng)式的根在MATLAB7語(yǔ)言里,多項(xiàng)式由一個(gè)行向量表示,設(shè)為p,它的系數(shù)按降序排列,使用roots函數(shù)可以求出該多項(xiàng)式的根。其使用格式為roots(p)。>>p=[10312-7]p=10312-7>>roots(p)ans=0.7876+2.4351i0.7876-2.4351i-2.08720.5121>>2022/12/1051第一章MATLAB7簡(jiǎn)介多項(xiàng)式的四則運(yùn)算加法和減法如果兩個(gè)多項(xiàng)式的向量階數(shù)相同,標(biāo)準(zhǔn)的數(shù)組加法有效。當(dāng)兩個(gè)多項(xiàng)式的向量階數(shù)不同時(shí),需要在低階多項(xiàng)式的前邊補(bǔ)0,使得它與相加的高階多項(xiàng)式有相同的階數(shù)。>>a=[8228],b=[6161]a=8228b=6161>>c=a+bc=14389>>Y3=poly2sym(c)Y3=14*x^3+3*x^2+8*x+92022/12/1052第一章MATLAB7簡(jiǎn)介多項(xiàng)式的四則運(yùn)算乘法使用conv函數(shù)對(duì)多項(xiàng)式進(jìn)行乘法運(yùn)算。格式為c=conv(a,b),其中a和b為兩個(gè)多項(xiàng)式的系數(shù)向量,c為相乘所生成的多項(xiàng)式的系數(shù)向量。>>a=[1234],b=[5678];>>Y1=poly2sym(a)Y1=x^3+2*x^2+3*x+4>>Y2=poly2sym(b)Y2=5*x^3+6*x^2+7*x+8>>c=conv(a,b);>>Y=poly2sym(c)Y=5*x^6+16*x^5+34*x^4+60*x^3+61*x^2+52*x+322022/12/1053第一章MATLAB7簡(jiǎn)介多項(xiàng)式的四則運(yùn)算除法在數(shù)值計(jì)算中,經(jīng)常需要用一個(gè)多項(xiàng)式去除另一個(gè)多項(xiàng)式。在MATLAB7語(yǔ)言中,使用deconv函數(shù)來(lái)完成該項(xiàng)功能。>>a=[1234],b=[5678];>>c=conv(a,b);>>d=deconv(c,a);>>e=deconv(c,b)>>x=poly2sym(d),y=poly2sym(e)x=5*x^3+6*x^2+7*x+8y=x^3+2*x^2+3*x+4>>2022/12/1054第一章MATLAB7簡(jiǎn)介多項(xiàng)式的四則運(yùn)算求導(dǎo)和積分
在MATLAB7語(yǔ)言中,分別使用polyder函數(shù)和polyint函數(shù)來(lái)求多項(xiàng)式的導(dǎo)數(shù)與積分。>>p=[3188]p=3188>>q=polyder(p)q=928>>p1=polyint(q)p1=3180>>2022/12/1055第一章MATLAB7簡(jiǎn)介4.關(guān)系和邏輯運(yùn)算關(guān)系操作符邏輯操作符關(guān)系與邏輯函數(shù)NaN和空矩陣各種運(yùn)算符的優(yōu)先級(jí)2022/12/1056第一章MATLAB7簡(jiǎn)介(1)關(guān)系操作符關(guān)系運(yùn)算符該運(yùn)算符的功能關(guān)系運(yùn)算符該運(yùn)算符的功能<
小于>=大于等于>
大于==等于<=小于等于~=約等于關(guān)系操作符及其功能2022/12/1057第一章MATLAB7簡(jiǎn)介(2)邏輯操作符邏輯操作符功
能&與|或~非邏輯操作符及其功能2022/12/1058第一章MATLAB7簡(jiǎn)介(3)關(guān)系與邏輯函數(shù)關(guān)系與邏輯函數(shù)及其功能關(guān)系和邏輯函數(shù)使
用
功
能xor(s,t)異或運(yùn)算,s或t非零(真)返回1,s和t都是零(假)或都是非零(真)返回0any(x)如果在一個(gè)向量x中,任何元素是非零,返回1;矩陣x中的每一列有非零元素,返回1all(x)如果在一個(gè)向量x中,所有元素非零,返回1;矩陣x中的每一列所有元素非零,返回12022/12/1059第一章MATLAB7簡(jiǎn)介(4)NaN和空矩陣NaN和空矩陣([])在MATLAB7中作特殊處理:根據(jù)IEEE數(shù)學(xué)標(biāo)準(zhǔn)。對(duì)NaN的幾乎所有運(yùn)算結(jié)果都得出NaN。空矩陣由MATLAB的生成器確定,并有它自己的特性??站仃囀呛?jiǎn)單的,它們是MATLAB大小為零的變量。>>a=size([])a=00>>b=ones(4,0)b=Emptymatrix:4-by-0>>size(b)ans=40>>length(b)ans=0>>2022/12/1060第一章MATLAB7簡(jiǎn)介各種運(yùn)算符的優(yōu)先級(jí)優(yōu)
先
級(jí)運(yùn)
算
符最高()(小括號(hào))↓.’(轉(zhuǎn)置)‘(共軛轉(zhuǎn)置).^(數(shù)組和數(shù)值乘方)^(矩陣乘方)↓+(一元加法)-(一元減法)~(取反)↓.*(乘法)*(矩陣乘法)./(右除)/(矩陣右除).\(左除)\(矩陣左除)↓+(加法)-(減法)↓:(冒號(hào))↓<(小于)<=(小于或等于)>(大于)>=()大于或等于
==(等于)~=()不等于↓&(邏輯與)最低|(邏輯或)2022/12/1061第一章MATLAB7簡(jiǎn)介第五節(jié)字符串、單元數(shù)組和結(jié)構(gòu)2022/12/1062第一章MATLAB7簡(jiǎn)介重點(diǎn)字符串的設(shè)定和操作單元數(shù)組的操作結(jié)構(gòu)型變量的操作2022/12/1063第一章MATLAB7簡(jiǎn)介字符串的設(shè)定字符串的各種操作單元數(shù)組的生成方法單元數(shù)組的操作結(jié)構(gòu)型變量的生成方法結(jié)構(gòu)型變量的操作2022/12/1064第一章MATLAB7簡(jiǎn)介1.字符串的設(shè)定在MATLAB中的字符串一般是ASCII值的數(shù)值數(shù)組,它作為字符串表達(dá)式進(jìn)行顯示。MATLAB對(duì)字符串的設(shè)定非常簡(jiǎn)單,只需用單引號(hào)(’)將需設(shè)定的字符串引注即可。>>str='Ihavemanygoodfriends!'str=Ihavemanygoodfriends!>>whosNameSizeBytesClassEXPLODE1x540doublearrayF11x1224chararrayF21x1224chararray2022/12/1065第一章MATLAB7簡(jiǎn)介2.字符串的操作字符串元素的讀取字符串的基本變換字符串的運(yùn)算2022/12/1066第一章MATLAB7簡(jiǎn)介(1)字符串元素的讀取字符串元素的讀取利用數(shù)組操作工具進(jìn)行讀取使用disp函數(shù)顯示字符串>>str=‘今天,是2012年10月1日,我們班一起去成都旅游。'str=今天,是2012年10月1日,我們班一起去成都旅游。>>str(6)ans=02022/12/1067第一章MATLAB7簡(jiǎn)介(2)字符串的基本變換基本變換的種類字符串的ASCII碼操作使用char函數(shù)進(jìn)行逆變換字符串的執(zhí)行>>forn=2:3eval(['M'num2str(n)'=magic(n)'])endM2=1342M3=8163574922022/12/1068第一章MATLAB7簡(jiǎn)介常見(jiàn)字符串的操作函數(shù)名函數(shù)用途函數(shù)名函數(shù)用途strcat鏈接字符串strvcat垂直鏈接字符串strcmp比較字符串大小strncmp比較字符串的前n個(gè)字符findstr在其他的字符串中尋找該字符串strjust證明字符數(shù)組strmatch查找可能匹配的字符串strrep用其他字符串代替改串strtok查找字符串中的記號(hào)blanks生成空的字符串deblank刪除字符串內(nèi)的空格ischar字符串檢驗(yàn)iscellstr字符串的單元檢驗(yàn)isletter字母檢驗(yàn)isspace空格檢驗(yàn)stringsstrings函數(shù)的幫助2022/12/1069第一章MATLAB7簡(jiǎn)介(3)字符串的運(yùn)算字符串的運(yùn)算主要是指判斷字符串是否相等,通過(guò)字符的運(yùn)算來(lái)比較字符,字符串中字符的分類、查找與替換、字符串與數(shù)值的轉(zhuǎn)換和數(shù)組與字符串的轉(zhuǎn)換等。2022/12/1070第一章MATLAB7簡(jiǎn)介判斷字符串是否相等有兩個(gè)函數(shù)可以用來(lái)判斷兩個(gè)輸入的字符串是否相等。strcmp函數(shù):比較兩個(gè)字符串是否相等,當(dāng)相等時(shí),系統(tǒng)將返回值1,不相等時(shí),返回值0;strncmp函數(shù):比較兩個(gè)輸入字符串的前幾個(gè)字符是否相等,當(dāng)相等時(shí),系統(tǒng)將返回值1,不相等時(shí),返回值0。>>words1=‘人民文學(xué)';>>words2=‘人民的同志';>>N=strcmp(words1,words2)N=0>>Y=strncmp(words1,words2,3)Y=0>>x=strncmp(words1,words2,1)x=1>>2022/12/1071第一章MATLAB7簡(jiǎn)介通過(guò)字符的運(yùn)算比較字符運(yùn)算符號(hào)的意義符號(hào)形式符號(hào)意義英文簡(jiǎn)寫(xiě)==等于eq~=不等于ne<小于lt>
大于gt<=小于或等于le>=大于或等于ge2022/12/1072第一章MATLAB7簡(jiǎn)介字符串中字符的分類字符串中的字符通常可以分為空白字符、字母字符和其他類型的字符。用戶可以用isletter和isspace兩個(gè)函數(shù)來(lái)對(duì)字符串中的字符進(jìn)行分類。realstring=''realstring=
>>A=isspace(realstring)A=Columns1through1100000000000Columns12through1600011>>2022/12/1073第一章MATLAB7簡(jiǎn)介.查找與替換查找與替換是字符串操作中的一項(xiàng)重要內(nèi)容,MATLAB7語(yǔ)言提供了findstr、strfind和strrep等函數(shù)來(lái)實(shí)現(xiàn)查找與替換操作。>>s1=‘我們班的班長(zhǎng)是張三!‘;>>s2=strrep(s1,‘張三’,‘李四')s2=我們班的班長(zhǎng)是李四!>>s3=strrep(s2,‘李四!',‘誰(shuí)?')s3=
我們班的班長(zhǎng)是誰(shuí)?
>>
2022/12/1074第一章MATLAB7簡(jiǎn)介字符串與數(shù)值的轉(zhuǎn)換常見(jiàn)的字符串轉(zhuǎn)換函數(shù)函數(shù)功能函數(shù)功能hex2dec將16進(jìn)制字符串轉(zhuǎn)化為10進(jìn)制整數(shù)dec2hex將10進(jìn)制整數(shù)轉(zhuǎn)化為16進(jìn)制字符串bin2dec將2進(jìn)制字符串轉(zhuǎn)化為10進(jìn)制整數(shù)dec2bin將10進(jìn)制整數(shù)轉(zhuǎn)化為2進(jìn)制字符串base2dec轉(zhuǎn)化B底字符串為10進(jìn)制整數(shù)hex2num將16進(jìn)制字符轉(zhuǎn)化為雙精度數(shù)upper改該字符串為大寫(xiě)lower改該字符串為小寫(xiě)fprintf把格式化的文本寫(xiě)到文件中或顯示屏上sprintf用格式控制,數(shù)字轉(zhuǎn)換成字符串sscanf用格式控制,字符串轉(zhuǎn)換成數(shù)字charASCII碼轉(zhuǎn)換成字符串num2str數(shù)字轉(zhuǎn)換成字符串int2str整數(shù)轉(zhuǎn)換成字符串2022/12/1075第一章MATLAB7簡(jiǎn)介字符串與數(shù)值的轉(zhuǎn)換舉例使用str2num函數(shù)將字符型矩陣轉(zhuǎn)換為數(shù)字矩陣>>S=['12';'34']S=%S為字符型矩陣1234>>X=str2num(S)X=%X為數(shù)字型矩陣
12342022/12/1076第一章MATLAB7簡(jiǎn)介2.單元數(shù)組直接生成單元數(shù)組使用cell函數(shù)生成單元數(shù)組單元數(shù)組的內(nèi)容的顯示或獲取單元數(shù)組的變維處理2022/12/1077第一章MATLAB7簡(jiǎn)介(1)直接生成單元數(shù)組用類似矩陣的記號(hào)將給復(fù)雜的數(shù)據(jù)結(jié)構(gòu)納入一個(gè)變量之下。和矩陣中的圓括號(hào)表示下標(biāo)類似,單元數(shù)組由大括號(hào)表示下標(biāo)。>>A={‘?dāng)?shù)值分析','WindGone',100+200*i,[90,85,55;67,70,102;57,18,100;-200,89,78]}A=Columns1through3‘?dāng)?shù)值分析''WindGone'[1.0000e+002+2.0000e+002i]Column4[4x3double]2022/12/1078第一章MATLAB7簡(jiǎn)介(2)使用cell函數(shù)生成單元數(shù)組應(yīng)用舉例:>>A=cell(2,2)A=[][][][]>>A{1,1}=['富強(qiáng)''民主';'文明''廉潔']A=[2x4char][][][]2022/12/1079第一章MATLAB7簡(jiǎn)介(3)單元數(shù)組的內(nèi)容的顯示或獲取>>celldisp(A,'Huang')Huang{1,1}=1222Huang{2,1}=UESTCandSCUHuang{1,2}=MATLAB7Huang{2,2}=1.0000+5.0000i12.0000-4.0000i>>2022/12/1080第一章MATLAB7簡(jiǎn)介(4)單元數(shù)組的變維處理前邊所述的對(duì)矩陣的變維處理同樣也適用于對(duì)單元數(shù)組的變維處理。此外還可以使用reshape函數(shù)進(jìn)行操作。>>A={[12;34],'love';'電子科大',[90,85,55;67,70,102;57,18,100;-200,89,78]}A=[2x2double]'love'‘電子科大'[4x3double]>>a=reshape(A,1,4)a=[2x2double]‘電子科大''love'[4x3double]>>2022/12/1081第一章MATLAB7簡(jiǎn)介3.結(jié)構(gòu)型變量直接輸入法生成結(jié)構(gòu)型變量使用struct函數(shù)生成結(jié)構(gòu)型變量在結(jié)構(gòu)體變量中添加成員變量在結(jié)構(gòu)體變量中刪除成員變量在結(jié)構(gòu)體變量中調(diào)用成員變量
getefield和setfield函數(shù)的使用2022/12/1082第一章MATLAB7簡(jiǎn)介(1)直接輸入法生成結(jié)構(gòu)型變量>>student.test=[995696876769877692];>>='WuDang';>>student.weight=68;>>student.height=1.72;>>student.num=2003214091;>>student.addr='SchoolofElectronicalengineering.UESTC';>>student.tel='1381042679*';2022/12/1083第一章MATLAB7簡(jiǎn)介(2)使用struct函數(shù)生成結(jié)構(gòu)型變量>>truct_array=struct(‘d’,{{‘北京’,‘上海'}},'strengths',[400001000])truct_array=d:{‘北京’‘上海'}strengths:[400001000]>>2022/12/1084第一章MATLAB7簡(jiǎn)介(3)在結(jié)構(gòu)體變量中添加成員變量>>student(1).gender='Male';%在student中添加gender和age這2項(xiàng)記錄>>student(1).age=25;>>student(2).gender='Female';>>student(2).age=21;>>student%查詢student的結(jié)構(gòu)student=1x2structarraywithfields:testnameweightheightnumaddtelgenderage>>2022/12/1085第一章MATLAB7簡(jiǎn)介(4)在結(jié)構(gòu)體變量中刪除成員變量
使用函數(shù)rmfield從結(jié)構(gòu)體變量中刪除成員變量。>>student=rmfield(student,'age');student=1x2structarraywithfields:testnameweightheightnum
addrtelgender2022/12/1086第一章MATLAB7簡(jiǎn)介(5)在結(jié)構(gòu)體變量中調(diào)用成員變量>>student(1).test%從結(jié)構(gòu)體變量中取出相關(guān)信息ans=995696876769877692>>student(1).test(5)ans=67>>student(1).addrans='SchoolofElectronicalengineering.UESTC2022/12/1087第一章MATLAB7簡(jiǎn)介(6)getfield和setfield函數(shù)的使用getfield函數(shù)取得當(dāng)前存儲(chǔ)在某個(gè)成員變量中的值。setfield函數(shù)給某個(gè)成員變量插入新的值。>>GETF=getfield(student(1),'addr')GETF='SchoolofElectronicalengineering.UESTC>>2022/12/1088第一章MATLAB7簡(jiǎn)介第六節(jié)
矩陣計(jì)算入門(mén)2022/12/1089第一章MATLAB7簡(jiǎn)介內(nèi)容介紹MATLAB7的數(shù)值計(jì)算功能,包括MATLAB7的向量、矩陣以及它們之間的運(yùn)算。一些特殊的矩陣數(shù)據(jù)結(jié)構(gòu)。2022/12/1090第一章MATLAB7簡(jiǎn)介重點(diǎn)矩陣的生成和基本的數(shù)值運(yùn)算稀疏型矩陣的生成和基本操作2022/12/1091第一章MATLAB7簡(jiǎn)介矩陣的生成和基本的數(shù)值運(yùn)算特殊矩陣的生成2022/12/1092第一章MATLAB7簡(jiǎn)介1.矩陣的生成矩陣的生成有多種方式,通常使用的有4種方法:在命令窗口中直接輸入矩陣通過(guò)語(yǔ)句和函數(shù)產(chǎn)生矩陣在M文件中建立矩陣從外部的數(shù)據(jù)文件中導(dǎo)入矩陣>>matrix=[1,1,1,1;2,2,2,2;3,3,3,3;4,4,4,4]matrix=11112222333344442022/12/1093第一章MATLAB7簡(jiǎn)介2.矩陣的基本數(shù)值運(yùn)算矩陣與常數(shù)的四則運(yùn)算矩陣之間的四則運(yùn)算X=B/A:表示求矩陣方程XA=B的解。>>A=[21-1;210;1-11]A=21-12101-11>>B=[1-13;432];>>X=B/AX=-2.00002.00001.0000-2.66675.0000-0.66672022/12/1094第一章MATLAB7簡(jiǎn)介3.特殊矩陣的生成零矩陣和全1矩陣的生成(zeros、ones)對(duì)角矩陣的生成(diag)隨機(jī)矩陣的生成(rand、randn)范德蒙德矩陣的生成(vander)魔術(shù)矩陣的生成(magic)Hilbert矩陣和反Hilbert矩陣的生成(hilb、invhilb)2022/12/1095第一章MATLAB7簡(jiǎn)介特殊矩陣的生成舉例>>rand(5)ans=0.95010.76210.61540.40570.05790.23110.45650.79190.93550.35290.60680.01850.92180.91690.81320.48600.82140.73820.41030.00990.89130.44470.17630.89360.1389>>2022/12/1096第一章MATLAB7簡(jiǎn)介4.MATLAB7與線性代數(shù)矩陣的特征參數(shù)運(yùn)算矩陣的分解運(yùn)算矩陣的結(jié)構(gòu)操作2022/12/1097第一章MATLAB7簡(jiǎn)介(1)矩陣的特征參數(shù)運(yùn)算矩陣的乘方運(yùn)算和開(kāi)方運(yùn)算矩陣的指數(shù)和對(duì)數(shù)運(yùn)算矩陣的逆運(yùn)算矩陣的行列式運(yùn)算矩陣的特征值運(yùn)算矩陣(向量)的范數(shù)運(yùn)算矩陣的條件數(shù)運(yùn)算矩陣的秩矩陣的跡2022/12/1098第一章MATLAB7簡(jiǎn)介特征參數(shù)運(yùn)算舉例1矩陣的逆運(yùn)算>>A=[1000;1200;2130;1214]A=1000120021301214>>B=inv(A)B=1.0000000-0.50000.500000-0.5000-0.16670.333300.1250-0.2083-0.08330.2500>>2022/12/1099第一章MATLAB7簡(jiǎn)介特征參數(shù)運(yùn)算舉例2矩陣的秩>>T1=[111;223]T1=111223>>r=rank(T1)r=2>>2022/12/10100第一章MATLAB7簡(jiǎn)介(2)矩陣的分解運(yùn)算三角分解(lu)正交分解(qr)特征值分解(eig)2022/12/10101第一章MATLAB7簡(jiǎn)介分解運(yùn)算舉例1三角分解(lu)>>X=[62-1;240;14-1;-1-13]>>[L,U]=lu(X)L=1.0000000.33330.90910.40680.16671.00000-0.1667-0.18181.0000U=6.00002.0000-1.00000
3.6667-0.833300
2.6818>>2022/12/10102第一章MATLAB7簡(jiǎn)介分解運(yùn)算舉例2正交分解>>A=[1734;3112;4128]>>[Q,R]=qr(A)Q=-0.95940.22940.1643-0.1693-0.0023-0.9856-0.2257-0.97330.0411R=-17.7200-5.7562-7.67490-10.9939-6.896700-10.84122022/12/10103第一章MATLAB7簡(jiǎn)介(3)矩陣的結(jié)構(gòu)操作矩陣的標(biāo)識(shí)矩陣的擴(kuò)充矩陣的部分刪除矩陣的修改矩陣結(jié)構(gòu)的改變矩陣的旋轉(zhuǎn)和翻轉(zhuǎn)2022/12/10104第一章MATLAB7簡(jiǎn)介結(jié)構(gòu)操作舉例1矩陣的標(biāo)識(shí)>>A=magic(4)A=16231351110897612414151>>A(2,4)ans=8>>2022/12/10105第一章MATLAB7簡(jiǎn)介結(jié)構(gòu)操作舉例2矩陣的翻轉(zhuǎn)>>A=randn(3)A=
-0.1461-0.8757-1.1742-0.5320-0.4838-0.19221.6821-0.7120-0.2741>>B=fliplr(A)B=-1.1742-0.8757-0.1461-0.1922-0.4838-0.5320-0.2741-0.71201.68212022/12/10106第一章MATLAB7簡(jiǎn)介第七節(jié)符號(hào)運(yùn)算2022/12/10107第一章MATLAB7簡(jiǎn)介目標(biāo)介紹MATLAB7的符號(hào)運(yùn)算功能。掌握符號(hào)表達(dá)式和符號(hào)矩陣的操作了解符號(hào)微積分、符號(hào)線性方程和符號(hào)微分方程等的運(yùn)算。2022/12/10108第一章MATLAB7簡(jiǎn)介重點(diǎn)符號(hào)表達(dá)式和符號(hào)矩陣的操作符號(hào)微積分符號(hào)線性方程符號(hào)微分方程2022/12/10109第一章MATLAB7簡(jiǎn)介內(nèi)容符號(hào)變量、符號(hào)表達(dá)式和符號(hào)方程的生成符號(hào)變量的基本操作符號(hào)表達(dá)式的操作符號(hào)矩陣及符號(hào)數(shù)組的生成和運(yùn)算符號(hào)極限基本知識(shí)符號(hào)微分、求導(dǎo)和積分符號(hào)積分變換的內(nèi)容符號(hào)代數(shù)方程的求解圖示化符號(hào)函數(shù)計(jì)算器的使用方法2022/12/10110第一章MATLAB7簡(jiǎn)介1.符號(hào)變量、符號(hào)表達(dá)式和符號(hào)方程的生成
使用sym函數(shù)定義符號(hào)變量和符號(hào)表達(dá)式使用syms函數(shù)定義符號(hào)變量和符號(hào)表達(dá)式符號(hào)方程的生成2022/12/10111第一章MATLAB7簡(jiǎn)介(1)使用sym函數(shù)定義符號(hào)變量和符號(hào)表達(dá)式>>sqrt(2)ans=1.4142>>a=sqrt(sym(2))a=2^(1/2)>>sym(2)/sym(5)ans=2/5>>2/5+1/3ans=0.73332022/12/10112第一章MATLAB7簡(jiǎn)介(2)使用syms函數(shù)定義符號(hào)變量和符號(hào)表達(dá)式>>symsabcx>>f=sym('a*x^2+b*x+c')f=a*x^2+b*x+c>>g=f^2+4*f-2g=(a*x^2+b*x+c)^2+4*a*x^2+4*b*x+4*c-2>>2022/12/10113第一章MATLAB7簡(jiǎn)介(3)符號(hào)方程的生成>>%符號(hào)方程的生成>>%使用sym函數(shù)生成符號(hào)方程>>equation1=sym('sin(x)+cos(x)=1')equation1=sin(x)+cos(x)=1>>2022/12/10114第一章MATLAB7簡(jiǎn)介2.符號(hào)變量的基本操作findsym函數(shù)用于尋找符號(hào)變量任意精確度的符號(hào)表達(dá)式數(shù)值型變量與符號(hào)型變量的轉(zhuǎn)換形式2022/12/10115第一章MATLAB7簡(jiǎn)介(1)findsym函數(shù)用于尋找符號(hào)變量
>>symsaalphabx1y>>findsym(alpha+a+b)ans=a,alpha,b>>findsym(cos(alpha)*b*x1+14*y,2)ans=x1,y>>findsym(y*(4+3*i)+6*j)ans=y>>2022/12/10116第一章MATLAB7簡(jiǎn)介(2)任意精確度的符號(hào)表達(dá)式>>r=vpa(pi)r=3.1415926535897932384626433832795>>>>q=vpa(hilb(2))q=[1.,.50000000000000000000000000000000][.50000000000000000000000000000000,.33333333333333333333333333333333]>>2022/12/10117第一章MATLAB7簡(jiǎn)介(3)數(shù)值型變量與符號(hào)型變量的轉(zhuǎn)換形式
>>t=0.1t=0.1000>>sym(t)%有理數(shù)形式
ans=1/10>>sym(t,'r')%有理數(shù)形式
ans=1/10>>sym(t,'f')%浮點(diǎn)數(shù)形式ans='1.999999999999a'*2^(-4)2022/12/10118第一章MATLAB7簡(jiǎn)介3.符號(hào)表達(dá)式(符號(hào)函數(shù))的操作符號(hào)表達(dá)式的四則運(yùn)算合并符號(hào)表達(dá)式的同類項(xiàng)符號(hào)多項(xiàng)式的因式分解符號(hào)表達(dá)式的簡(jiǎn)化subs函數(shù)用于替換求值反函數(shù)的運(yùn)算復(fù)合函數(shù)的運(yùn)算2022/12/10119第一章MATLAB7簡(jiǎn)介(1)符號(hào)表達(dá)式的四則運(yùn)算>>symsxyab>>fun1=sin(x)+cos(y)fun1=sin(x)+cos(y)>>fun2=a+bfun2=a+b>>fun1+fun2ans=sin(x)+cos(y)+a+b>>fun1*fun2ans=(sin(x)+cos(y))*(a+b)2022/12/10120第一章MATLAB7簡(jiǎn)介(2)合并符號(hào)表達(dá)式的同類項(xiàng)>>symsxy>>collect(x^2*y+y*x-x^2-2*x)ans=(y-1)*x^2+(y-2)*x>>f=-1/4*x*exp(-2*x)+3/16*exp(-2*x);>>collect(f)ans=-1/4*x*exp(-2*x)+3/16*exp(-2*x)>>2022/12/10121第一章MATLAB7簡(jiǎn)介(3)符號(hào)多項(xiàng)式的因式分解(horner)>>symsx>>fun1=2*x^3+2*x^2-32*x+40fun1=2*x^3+2*x^2-32*x+40>>horner(fun1)ans=40+(-32+(2+2*x)*x)*x>>fun2=x^3-6*x^2+11*x-6fun2=x^3-6*x^2+11*x-6>>horner(fun2)ans=-6+(11+(-6+x)*x)*x>>2022/12/10122第一章MATLAB7簡(jiǎn)介(4)符號(hào)表達(dá)式的簡(jiǎn)化(simplify)>>symsx>>fun1=(1/x+7/x^2+12/x+8)^(1/3)fun1=(13/x+7/x^2+8)^(1/3)>>sfy1=simplify(fun1)sfy1=((13*x+7+8*x^2)/x^2)^(1/3)>>sfy2=simplify(sfy1)sfy2=((13*x+7+8*x^2)/x^2)^(1/3)2022/12/10123第一章MATLAB7簡(jiǎn)介(5)subs函數(shù)用于替換求值>>symsxyf=x^2*y+5*x*sqrt(y)f=x^2*y+5*x*y^(1/2)>>subs(f,x,3)ans=9*y+15*y^(1/2)>>subs(f,y,3)ans=3*x^2+5*x*3^(1/2)>>2022/12/10124第一章MATLAB7簡(jiǎn)介(6)反函數(shù)的運(yùn)算(finverse)>>symsxy>>f=x^2+y>>f=x^2+yf=x^2+y>>finverse(f,y)ans=-x^2+y2022/12/10125第一章MATLAB7簡(jiǎn)介(7)復(fù)合函數(shù)的運(yùn)算(compose)>>symsxyztu>>f=1/(1+x^2)>>g=sin(y)>>h=x^t>>p=exp(-y/u)>>compose(f,g)ans=1/(1+sin(y)^2)>>compose(f,g,t)ans=1/(1+sin(t)^2)2022/12/10126第一章MATLAB7簡(jiǎn)介4.符號(hào)矩陣的生成和運(yùn)算符號(hào)矩陣的生成使用sym函數(shù)直接生成符號(hào)矩陣用生成子矩陣的方法生成符號(hào)矩陣由數(shù)值矩陣轉(zhuǎn)換為符號(hào)矩陣符號(hào)矩陣及符號(hào)數(shù)組的運(yùn)算符號(hào)矩陣和數(shù)組的四則運(yùn)算矩陣和數(shù)組的逆運(yùn)算矩陣和數(shù)組的冪運(yùn)算符號(hào)矩陣的秩符號(hào)矩陣的逆和行列式運(yùn)算2022/12/10127第一章MATLAB7簡(jiǎn)介(1)sym函數(shù)直接生成符號(hào)矩陣>>a1=sym('[1/32/35/7;9/1111/1313/17;17/1919/2323/29]')a1=[1/3,2/3,5/7][9/11,11/13,13/17][17/19,19/23,23/29]>>2022/12/10128第一章MATLAB7簡(jiǎn)介(2)用生成子矩陣的方法生成符號(hào)矩陣
>>a=['[100,cos(x)]';'[1/s,x]']a=[100,cos(x)][1/s,x]>>2022/12/10129第一章MATLAB7簡(jiǎn)介(3)由數(shù)值矩陣轉(zhuǎn)換為符號(hào)矩陣
>>M=[30111;6159;98254;3245620]M=301116159982543245620>>S=sym(M)S=[30,1,1,1][6,1,5,9][9,8,25,4][32,45,62,0]>>此時(shí),雖然矩陣形式?jīng)]有發(fā)生改變,但是在MATLAB7的工作區(qū)間內(nèi),系統(tǒng)已經(jīng)生成了一個(gè)新的矩陣,其數(shù)據(jù)類型為符號(hào)型。2022/12/10130第一章MATLAB7簡(jiǎn)介(4)符號(hào)矩陣的四則運(yùn)算>>m=sym('[x,x^2,x*2,1/x]')m=[x,x^2,x*2,1/x]>>n=sym('[2*x,y,x,x^2]')n=[2*x,y,x,x^2]>>m+nans=[3*x,x^2+y,3*x,1/x+x^2]>>m-nans=[-x,x^2-y,x,1/x-x^2]>>2022/12/10131第一章MATLAB7簡(jiǎn)介(5)矩陣和數(shù)組的逆運(yùn)算(‘)q=[3,4,9,6][x,y,z,w][a,b,c,d]>>q'ans=[3,conj(x),conj(a)][4,conj(y),conj(b)][9,conj(z),conj(c)][6,conj(w),conj(d)]>>2022/12/10132第一章MATLAB7簡(jiǎn)介(6)符號(hào)矩陣的秩(rank)>>a=sym('[1,1/x,x^2;xin(x),cos(x),tan(x);log(x),2,9]')a=[1,1/x,x^2][xin(x),cos(x),tan(x)][log(x),2,9]>>rank(a)ans=3>>2022/12/10133第一章MATLAB7簡(jiǎn)介5.符號(hào)微積分符號(hào)極限(limit)符號(hào)微分和求導(dǎo)diff函數(shù)的使用jacobian函數(shù)的使用符號(hào)積分(int)2022/12/10134第一章MATLAB7簡(jiǎn)介(1)符號(hào)極限(limit)>>symsxath;>>limit(sin(x)/x)ans=1>>limit((x-2)/(x^2-4),2)ans=1/4>>limit((1+2*t/x)^(3*x),x,inf)ans=exp(6*t)2022/12/10135第一章MATLAB7簡(jiǎn)介(2)jacobian函數(shù)的使用>>symsxyz>>a=[x^2+x*y;sin(x)*cos(y)]a=[x^2+x*y][sin(x)*cos(y)]>>jacobian(a,[x,y])ans=[2*x+y,x]
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 財(cái)務(wù)制度管理規(guī)定下發(fā)
- 醫(yī)院基建科財(cái)務(wù)制度
- 及時(shí)講解財(cái)務(wù)制度
- 政府購(gòu)買服務(wù)財(cái)務(wù)制度
- 中小型公司財(cái)財(cái)務(wù)制度
- 水果超市財(cái)務(wù)制度
- 農(nóng)村自來(lái)水供水運(yùn)營(yíng)公司應(yīng)急搶修制度
- 關(guān)于出差制度
- 公司對(duì)項(xiàng)目安全檢查制度
- 坡地建房施工方案(3篇)
- 2026海南安??毓捎邢挢?zé)任公司招聘11人筆試模擬試題及答案解析
- 2026上海碧海金沙投資發(fā)展有限公司社會(huì)招聘參考題庫(kù)必考題
- 2026年張家界航空工業(yè)職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)傾向性考試模擬測(cè)試卷新版
- 2026遼寧機(jī)場(chǎng)管理集團(tuán)校招面筆試題及答案
- 2025徽銀金融租賃有限公司社會(huì)招聘筆試歷年典型考題及考點(diǎn)剖析附帶答案詳解
- 孩子如何正確與師長(zhǎng)相處與溝通
- 精神病學(xué)考試重點(diǎn)第七版
- 塔吊運(yùn)行日志
- GB/T 14536.1-2022電自動(dòng)控制器第1部分:通用要求
- GA/T 1362-2016警用裝備倉(cāng)庫(kù)物資庫(kù)存管理規(guī)范
- 鋼結(jié)構(gòu)基本原理及設(shè)計(jì)PPT全套課件
評(píng)論
0/150
提交評(píng)論