版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、MATLAB在數(shù)學(xué)建模中的應(yīng)用 上海電機(jī)學(xué)院 武文佳 2019.7.8全國(guó)大學(xué)生數(shù)學(xué)建模競(jìng)賽(CUMCM)China Undergraduates Mathematical Contest in Modeling 1992年由中國(guó)工業(yè)與應(yīng)用數(shù)學(xué)學(xué)會(huì)(CSIAM)組織第一次競(jìng)賽 1994年起由教育部高教司和CSIAM共同舉辦,每年一次(9月) 2019 年,來(lái)自全國(guó)33個(gè)省/市/自治區(qū)(包括香港和澳門(mén)特區(qū))及新加坡的1284所院校、21219個(gè)隊(duì)(其中本科組17741隊(duì)、??平M3478隊(duì))、63600多名大學(xué)生報(bào)名參加本項(xiàng)競(jìng)賽。 網(wǎng)址: 獎(jiǎng)勵(lì):證書(shū) (“一
2、次參賽,終身受益”) 等級(jí):全國(guó)一等獎(jiǎng)3%、二等獎(jiǎng) 7%;賽區(qū)一、二等獎(jiǎng)1/3 2019年高教社杯全國(guó)大學(xué)生數(shù)學(xué)建模競(jìng)賽時(shí)間: 2019年9月13日上午8:00競(jìng)賽內(nèi)容與形式內(nèi)容 賽題:工程技術(shù)、管理科學(xué)等科學(xué)領(lǐng)域的實(shí)際問(wèn)題 答卷:一篇包含模型假設(shè)、建立、求解、計(jì)算方法設(shè)計(jì)和計(jì)算機(jī)實(shí)現(xiàn)、結(jié)果分析和檢驗(yàn)、模型改進(jìn)等方面的論文形式 3名大學(xué)生組隊(duì),在3天內(nèi)完成“隊(duì)長(zhǎng)” 可使用任何材料(圖書(shū)、計(jì)算機(jī)、軟件、互聯(lián)網(wǎng)等),但不得與隊(duì)外任何人討論(包括上網(wǎng)討論)宗旨創(chuàng)新意識(shí) 團(tuán)隊(duì)精神 重在參與 公平競(jìng)爭(zhēng)標(biāo)準(zhǔn)假設(shè)的合理性,建模的創(chuàng)造性,結(jié)果的正確性,表述的清晰性數(shù)學(xué)建模過(guò)程現(xiàn)實(shí)對(duì)象的信息數(shù)學(xué)模型的解答現(xiàn)實(shí)對(duì)
3、象的解答數(shù)學(xué)模型表述(歸納)求解(演繹)解釋驗(yàn)證現(xiàn)實(shí)對(duì)象與數(shù)學(xué)模型的關(guān)系 數(shù)學(xué)建模步驟模型準(zhǔn)備模型假設(shè)模型建立模型求解模型分析模型檢驗(yàn)?zāi)P蛻?yīng)用1)模型準(zhǔn)備: 了解問(wèn)題的實(shí)際背景,明確建模目的,掌握對(duì)象的各種信息如統(tǒng)計(jì)數(shù)據(jù)等,弄清實(shí)際對(duì)象的特征。 -查找資料,讀懂題意建模步驟2)模型假設(shè):根據(jù)實(shí)際對(duì)象的特征和建模目的,對(duì)問(wèn)題進(jìn)行必要地合理地簡(jiǎn)化。不同的假設(shè)會(huì)得到不同的模型。過(guò)度的簡(jiǎn)化而得到模型可能無(wú)實(shí)用價(jià)值舍不得簡(jiǎn)化又可能導(dǎo)致得到一個(gè)無(wú)法求解的模型或模型的解非常復(fù)雜,以致無(wú)法應(yīng)用。注意:對(duì)于一個(gè)假設(shè),最重要的是它是否符合實(shí)際情況,而不是為了解決問(wèn)題的方便。 有些假設(shè)在建模過(guò)程中才會(huì)發(fā)現(xiàn)。因此在建
4、模是要注意調(diào)整假設(shè)。3)模型建立: 分清變量類型,恰當(dāng)使用數(shù)學(xué)工具;抓住問(wèn)題的本質(zhì),簡(jiǎn)化變量之間的關(guān)系;要有嚴(yán)密的數(shù)學(xué)推理,模型本身要正確;要有足夠的精確度。4)模型求解:選擇恰當(dāng)?shù)姆椒ㄇ蠼馑⒌臄?shù)學(xué)模型,包括畫(huà)圖等。編程求解:MATLAB,Lingo/Lindo,Mathematica等建模步驟6)模型檢驗(yàn): 把模型分析的結(jié)果“翻譯”回到實(shí)際對(duì)象中,用實(shí)際現(xiàn)象、數(shù)據(jù)等檢驗(yàn)?zāi)P偷暮侠硇院瓦m應(yīng)性。如果模型不實(shí)用,必須從模型假設(shè)那里重新開(kāi)始,直到得到可用模型。7)模型應(yīng)用和推廣:應(yīng)用中可能發(fā)現(xiàn)新問(wèn)題,需繼續(xù)完善;所建立的模型稍加處理可推廣到其他領(lǐng)域。5)模型分析:結(jié)果分析、數(shù)據(jù)分析。變量之間的依
5、賴關(guān)系或穩(wěn)定性態(tài);數(shù)學(xué)預(yù)測(cè);最優(yōu)決策控制。建模步驟從論文評(píng)閱看學(xué)生參加競(jìng)賽中的問(wèn)題 吃透題意方面的不足; 就事論事,形成數(shù)學(xué)模型的意識(shí)和能力欠缺; 不管具體條件,套用現(xiàn)成的方法,導(dǎo)致錯(cuò)誤; 對(duì)結(jié)果的分析不夠,怎樣符合實(shí)際考慮不周; 寫(xiě)作方面的問(wèn)題(摘要、簡(jiǎn)明、優(yōu)缺點(diǎn)、參考文獻(xiàn))。要想在數(shù)學(xué)建模競(jìng)賽中取得好成績(jī),要注意 1. 建立好的數(shù)學(xué)模型,不在于用了什么高深的方 法,而要能有效、簡(jiǎn)便、恰當(dāng)?shù)慕鉀Q實(shí)際問(wèn)題。2. 好的求解方法:算法和編程實(shí)現(xiàn)。假期要注意多看優(yōu)秀論文,熟悉建模常用算法并編程訓(xùn)練。3. 高質(zhì)量的論文:描述清晰,讓評(píng)委知道你如何分析問(wèn)題,數(shù)學(xué)模型是什么,用了什么方法,最后結(jié)論是什么。
6、-把問(wèn)題描述清楚。注意事項(xiàng): 1.充分的準(zhǔn)備和訓(xùn)練:通過(guò)培訓(xùn)和自學(xué),熟悉常見(jiàn)模型和方法,多積累建模案例。 -量變到質(zhì)變。 2.重視建模論文的排版和技巧:建模論文是最后決定是否獲獎(jiǎng)的關(guān)鍵,注意固定的規(guī)范,平時(shí)多看建模論文。軟件準(zhǔn)備:Office,Mathtype,MATLAB3.項(xiàng)目管理和時(shí)間管理:制定好三天時(shí)間的規(guī)劃,隊(duì)長(zhǎng)必須具有好的協(xié)調(diào)組織和進(jìn)程控制能力。一旦選題,盡量不要中途換題目。4.團(tuán)隊(duì)合作能力:一個(gè)人再厲害,在三天內(nèi)也無(wú)法做出很好的建模論文。切勿自己只管自己那部分,要大家一起討論。隊(duì)長(zhǎng)-相當(dāng)于計(jì)算機(jī)中的CPU,一定要給力?;ハ嘤懻摚饔袀?cè)重,互相幫助。5.要有勇?tīng)?zhēng)第一的意識(shí)和勇氣 數(shù)
7、學(xué)建模對(duì)隊(duì)員的意志力要求比較高。 信心,相信自己能做好。 遇到困難不輕言放棄,很多時(shí)候,只要再堅(jiān)持一下,就可以克服一些難題。注意事項(xiàng): 13數(shù)學(xué)建模軟件 MATLAB MATLAB 基礎(chǔ)14主要內(nèi)容 Matlab 介紹 Matlab 的基本用法 15培訓(xùn)要求:聽(tīng)課+課后作業(yè)將所有文件作為附件,以郵件形式發(fā)給 主題為:數(shù)學(xué)建模-三位同學(xué)姓名兩字段之間用英文狀態(tài)下的減號(hào)連接每個(gè) M 文件的第一行添加一條注解語(yǔ)句:% 數(shù)學(xué)建模-三位同學(xué)姓名-作業(yè)題號(hào)交作業(yè)截止日期:2019年7月15日 課后作業(yè)要求16數(shù)學(xué)建模軟件 程序設(shè)計(jì)語(yǔ)言:BASIC,Pascal,F(xiàn)ORTRAN,C
8、,. 數(shù)值計(jì)算軟件: Matlab,Scilab,Octave,. 符號(hào)計(jì)算軟件:Mathematica,Maple,. 交互式數(shù)學(xué)軟件:MathCAD,Calcwin,. 統(tǒng)計(jì)軟件:SAS,SPSS,Minitab,. 數(shù)學(xué)規(guī)劃軟件:Lingo,Lindo,. 工程計(jì)算軟件:Ansys,F(xiàn)luent,Phoenics,. 其它:幾何畫(huà)板,MathLab, . 數(shù)學(xué)相關(guān)軟件17Matlab 介紹 在歐美各高等院校,Matlab 是線性代數(shù)、數(shù)值分析、數(shù)理統(tǒng)計(jì)、自動(dòng)控制、數(shù)字信號(hào)處理、動(dòng)態(tài)系統(tǒng)仿真、圖像處理等課程的基本教學(xué)工具,已成為大學(xué)生必須掌握的基本技能之一。 Matlab是一種廣泛應(yīng)用于工
9、程計(jì)算及數(shù)值分析領(lǐng)域的新型高級(jí)語(yǔ)言,自 1984 年推向市場(chǎng)以來(lái),經(jīng)過(guò)多年的發(fā)展與競(jìng)爭(zhēng),現(xiàn)已成為國(guó)際公認(rèn)的最優(yōu)秀的工程應(yīng)用開(kāi)發(fā)環(huán)境。Matrix Laboratory 矩陣實(shí)驗(yàn)室Matlab18Matlab 的發(fā)展 Matlab 的發(fā)展 1980年,Moler 教授用 Fortran 語(yǔ)言編寫(xiě)了集命令翻譯、 科學(xué)計(jì)算于一身的一套交互式軟件系統(tǒng)。 1984年,Moler 等成立了 The MathWorks 的公司,用 C 語(yǔ)言完全改寫(xiě) Matlab,并推出第一個(gè)商業(yè)版。 到九十年代,在國(guó)際上 30 幾個(gè)數(shù)學(xué)類科技應(yīng)用軟件中, Matlab 在數(shù)值計(jì)算方面獨(dú)占鰲頭。 目前,Matlab 已成為世
10、界頂尖的數(shù)學(xué)應(yīng)用軟件就影響而言, 至今仍然沒(méi)有一個(gè)別的計(jì)算軟件可與 Matlab 匹敵。19 Matlab 的發(fā)行版本1984年,Matlab 1.0 (DOS版,182K,20多個(gè)函數(shù))1992年,Matlab 4.0 (93年推出Windows版,加入 simulink)1994年,Matlab 4.2(得到廣泛重視和應(yīng)用)1999年,Matlab 5.3(真正實(shí)現(xiàn)32位運(yùn)算)2019年,Matlab 6.5(采用JIT加速器)2019年,Matlab 7.0自2019年起,Matlab每年更新兩次目前最新版為 R2019a (2019年3月發(fā)布)Matlab 的發(fā)展20Matlab 的功
11、能與特點(diǎn) Matlab 具有很強(qiáng)的數(shù)值計(jì)算功能 Matlab 以矩陣作為數(shù)據(jù)操作的基本單位, 但無(wú)需預(yù)先指定矩陣維數(shù)(動(dòng)態(tài)定維) 按照 IEEE 的數(shù)值計(jì)算標(biāo)準(zhǔn)進(jìn)行計(jì)算 提供十分豐富的數(shù)值計(jì)算函數(shù),方便計(jì)算,提高效率 Matlab 命令與數(shù)學(xué)中的符號(hào)、公式非常接近, 可讀性強(qiáng),容易掌握 Matlab 是一個(gè)交互式軟件系統(tǒng) 輸入一條命令,立即就可以得到該命令的運(yùn)行結(jié)果21Matlab 的特點(diǎn)與功能 Matlab 的符號(hào)計(jì)算功能Matlab 可以進(jìn)行一些常見(jiàn)的符號(hào)計(jì)算 Matlab 的編程功能Matlab具有程序結(jié)構(gòu)控制、函數(shù)調(diào)用、數(shù)據(jù)結(jié)構(gòu)、輸入輸出、面向?qū)ο蟮瘸绦蛘Z(yǔ)言特征,且簡(jiǎn)單易學(xué)、編程效率高
12、 Matlab 的繪圖功能Matlab提供豐富的繪圖命令,很方便實(shí)現(xiàn)數(shù)據(jù)的可視化22 Matlab 豐富的工具箱(toolbox)Matlab 的特點(diǎn)與功能根據(jù)專門(mén)領(lǐng)域中的特殊需要而設(shè)計(jì)的各種可選工具箱 Matlab 的 Simulink 動(dòng)態(tài)仿真集成環(huán)境提供建立系統(tǒng)模型、選擇仿真參數(shù)和數(shù)值算法、啟動(dòng)仿真程序?qū)υ撓到y(tǒng)進(jìn)行仿真、設(shè)置不同的輸出方式來(lái)觀察仿真結(jié)果等功能Symbolic Math PDEOptimizationSignal processImage ProcessStatisticsControl SystemSystem Identification 23 獲取 Matlab 軟件
13、Matlab 的安裝 插入光盤(pán),自動(dòng)運(yùn)行; 或點(diǎn)擊安裝程序 setup.exe24Matlab 的基本用法 Matlab 的啟動(dòng) 使用 Windows “開(kāi)始” 菜單 運(yùn)行 Matlab 系統(tǒng)啟動(dòng)程序 matlab 雙擊 Matlab 快捷圖標(biāo) Matlab 的退出 在 Matlab 主窗口 File 菜單中選擇 Exit Matlab 在 Matlab 命令窗口輸入 exit 或 quit 單擊 Matlab 主窗口的“關(guān)閉”按鈕25Matlab 的工作界面當(dāng)前工作空間當(dāng)前目錄中的文件命令窗口命令歷史記錄命令行提示符當(dāng)前目錄直觀認(rèn)識(shí)Matlab-基本數(shù)學(xué)運(yùn)算在MATLAB下進(jìn)行基本數(shù)學(xué)運(yùn)算,
14、只需將運(yùn)算式直接打在提示號(hào) 后面,并按Enter鍵。MATLAB將計(jì)算 的結(jié)果以ans顯示?!纠壳?的算術(shù)運(yùn)算結(jié)果。(1)用鍵盤(pán)在MATLAB指令窗中輸入以下內(nèi)容 (12+2*(7-4)/32 (2)在上述表達(dá)式輸入完成后,按【Enter】鍵,該就指令被執(zhí)行。(3)在指令執(zhí)行后,MATLAB指令窗中將顯示以下結(jié)果。ans = 2 我們也可給運(yùn)算式的結(jié)果設(shè)定一個(gè)變量x: x = (5*2+1.3-0.8)*102/25 x = 42 變量x的值可以在下個(gè)語(yǔ)句中調(diào)用: y= 2*x+1y = 85 MATLAB提供基本的算術(shù)運(yùn)算有: 加 (+)、減 (-)、乘 (*)、除 (/)、冪次方 (),
15、范例為:5+3, 5-3, 5*3, 5/3, 53MATLAB書(shū)寫(xiě)表達(dá)式的規(guī)則與“手寫(xiě)算式”差不多相同,但要求所有表達(dá)式都是以純文本形式輸入。如果一個(gè)指令過(guò)長(zhǎng)可以在結(jié)尾加上.(代表此行指令與下一行連續(xù)), 例如: 1*2+3*4+5*6+7*8+9*10+11*12+.13*14+15*16ans =744MATLAB常用數(shù)學(xué)函數(shù)-三角函數(shù)和雙曲函數(shù)名稱含義名稱含義名稱含義sin正弦csc余割atanh反雙曲正切cos余弦asec反正割acoth反雙曲余切tan正切acsc反余割sech雙曲正割cot余切sinh雙曲正弦csch雙曲余割asin反正弦cosh雙曲余弦asech反雙曲正割aco
16、s反余弦tanh雙曲正切acsch反雙曲余割atan反正切coth雙曲余切atan2四象限反正切acot反余切asinh反雙曲正弦sec正割acosh反雙曲余弦指數(shù)函數(shù)名稱含義名稱含義名稱含義expE為底的指數(shù)log1010為底的對(duì)數(shù)pow22的冪log自然對(duì)數(shù)log22為底的對(duì)數(shù)sqrt平方根 復(fù)數(shù)函數(shù)名稱含義名稱含義名稱含義abs絕對(duì)值conj復(fù)數(shù)共軛real復(fù)數(shù)實(shí)部angle相角imag復(fù)數(shù)虛部 其他函數(shù)名稱含義名稱含義min最小值max最大值mean平均值median中位數(shù)std標(biāo)準(zhǔn)差diff相鄰元素的差sort排序length個(gè)數(shù)norm歐氏(Euclidean)長(zhǎng)度sum總和pro
17、d總乘積dot內(nèi)積cumsum累計(jì)元素總和cumprod累計(jì)元素總乘積cross外積31 Matlab 變量的命名規(guī)則一.Matlab 變量 以字母開(kāi)頭 后面可以跟 字母、數(shù)字 和 下劃線 長(zhǎng)度一般不要超過(guò) 63 個(gè)字符 字母區(qū)分 大小 寫(xiě) Matlab 語(yǔ)句的通常形式變量 = 表達(dá)式 表達(dá)式是用運(yùn)算符將有關(guān)運(yùn)算量連接起來(lái)的式子 計(jì)算表達(dá)式的結(jié)果,并賦給賦值號(hào)“=”左邊的變量Matlab 命令的執(zhí)行:回車(chē) 輸出格式Matlab 的輸出 Matlab 以雙精度執(zhí)行所有的運(yùn)算,運(yùn)算結(jié)果可以在屏幕上輸出,同時(shí)賦給指定變量;若無(wú)指定變量,則系統(tǒng)會(huì)自動(dòng)將結(jié)果賦給變量 “ans” Matlab 中數(shù)的輸出
18、格式可以通過(guò) format 命令指定format 只改變變量的輸出格式,但不會(huì)影響變量的值!各種 format 格式格式解釋例format短格式(缺省顯示格式),同short3.1416format short短格式(缺省顯示格式),只顯示5位3.1416format long長(zhǎng)格式,雙精度數(shù)15位,單精度數(shù)7位3.14159265358979format short e短格式e方式(科學(xué)計(jì)數(shù)格式)3.1416e+000format long e長(zhǎng)格式e方式3.141592653589793e+000format short g短格式g方式3.1416format long g長(zhǎng)格式g方式3.
19、14159265358979format compact壓縮格式format loose自由格式format + / format bank / format rat / format hex (詳情查看聯(lián)機(jī)幫助)變量的存儲(chǔ) 存儲(chǔ)當(dāng)前工作空間中的變量 save 將所有變量存入文件 matlab.mat save mydata 將所有變量存入指定文件 mydata.mat 存儲(chǔ)指定的變量 save mydata.mat 將所有變量存入文件 mydata.matsave 文件名 變量名列表例: save mydata A x z 變量名列表中各變量之間用空格分隔變量的讀取 將數(shù)據(jù)文件中的變量載入當(dāng)
20、前工作空間 load mydata 載入數(shù)據(jù)文件中的所有變量 load mydata A x 從數(shù)據(jù)文件中提取指定變量 清除當(dāng)前工作空間中的變量 clear 清除當(dāng)前工作空間中的所有變量 clear A x 清除指定的變量36 查看已定義的變量:who、whos變量的查看 清除變量:clearwho顯示當(dāng)前工作空間中的所有變量whos顯示所有變量的詳細(xì)屬性clear清除工作空間中的所有變量clear all清除所有變量,包括全局變量、函數(shù)鏈接等clear 變量名清除指定的變量37 特殊變量 ans注:應(yīng)盡量避免給系統(tǒng)預(yù)定義變量重新賦值! 系統(tǒng)預(yù)定義的變量系統(tǒng)預(yù)定義變量pi圓周率 ,其值為 im
21、ag(log(-1)inf, Inf無(wú)窮大NaN, nanNot-a-Number,一個(gè)不定值,如 0/0eps浮點(diǎn)運(yùn)算相對(duì)精度i, j虛部單位38Matlab 數(shù)值運(yùn)算 默認(rèn)是雙精度實(shí)數(shù),可用浮點(diǎn)數(shù)或科學(xué)計(jì)數(shù)法表示例:3, 0.4, 1.603e-12 浮點(diǎn)運(yùn)算的相對(duì)誤差為 eps,大約為 2.210-16 浮點(diǎn)數(shù)表示范圍為:10-308 10308 復(fù)數(shù)的輸入例:z=3+4i (4 與 i 之間不能有空格) Matlab 中的數(shù)與算術(shù)表達(dá)式注:復(fù)數(shù)作為矩陣元素輸入時(shí),加號(hào)兩邊不要加空格!39 命令分隔符 算術(shù)運(yùn)算 Matlab 數(shù)值運(yùn)算+ - * 加,減,乘,冪/ 右除,左除 一行可以寫(xiě)多
22、個(gè)語(yǔ)句,語(yǔ)句間用逗號(hào)或分號(hào)隔開(kāi) 若不想在屏幕上輸出結(jié)果,可以在語(yǔ)句最后加分號(hào) 如果語(yǔ)句很長(zhǎng),可用續(xù)行符 “”(三個(gè)點(diǎn))續(xù)行 續(xù)行符的前面最好留一個(gè)空格 分號(hào)的作用 續(xù)行符 分號(hào)和續(xù)行符的作用Matlab 數(shù)值運(yùn)算 若不想在屏幕上輸出結(jié)果,可以在語(yǔ)句最后加分號(hào) 如果語(yǔ)句很長(zhǎng),可用續(xù)行符 “”(三個(gè)點(diǎn))續(xù)行 續(xù)行符的前面最好留一個(gè)空格例:41幾個(gè)小技巧 Matlab 的命令記憶功能:上下箭頭鍵 命令補(bǔ)全功能: Tab 鍵 用 Esc 鍵 刪除命令行 命令 home、clc可以先輸入命令的前幾個(gè)字符,再按上下鍵縮小搜索范圍42Matlab幫助系統(tǒng) 如何尋找?guī)椭鷋elp 顯示指定命令的簡(jiǎn)短使用說(shuō)明do
23、c已網(wǎng)頁(yè)形式顯示完整的使用幫助help sizedoc size例: 查找命令lookfor 按指定的關(guān)鍵詞查詢與之相關(guān)的命令which顯示命令或函數(shù)所在的目錄 其它相關(guān)命令cd、dir、more更多 Matlab 命令,參見(jiàn)課程主頁(yè)43 定義矩陣:直接輸入法 矩陣用方括號(hào) “ ” 括起 矩陣同一行中的元素之間用 空格 或 逗號(hào) 分隔 矩陣行與行之間用 分號(hào) 分開(kāi),也可以用 回車(chē) 代替A=1 2 3; 4 5 6; 7 8 9二.矩陣的輸入 Matlab 的操作對(duì)象 矩陣?yán)?4 矩陣元素可以是任何數(shù)值表達(dá)式例:x=-1.3, sqrt(3), (1+2+3)*4/5矩陣元素賦值 矩陣元素的單
24、獨(dú)賦值例:x(2)=6.8例:x(5)=abs(x(6) ?動(dòng)態(tài)定維功能:Matlab 會(huì)自動(dòng)擴(kuò)展向量的長(zhǎng)度, 并將沒(méi)有賦值的部分置零 例:x(5)=abs(x(1)45 大矩陣可以把小矩陣作為其元素矩陣元素賦值例: A=A ; 11 12 13在原矩陣的下方加一行思考:如何在原矩陣的右邊添加一列? 空矩陣?yán)?B=46 單個(gè)元素的引用例: x=A(2,3)+A(1,2)矩陣元素的引用x(i) 向量 x 中的第 i 個(gè)元素A(i,j)矩陣 A 中的第 i 行,第 j 列元素 多個(gè)元素的引用:冒號(hào)的特殊用法a:b:c 產(chǎn)生一個(gè)由等差序列組成的向量 a 是首項(xiàng),b 是公差,c 確定最后一項(xiàng) 若 b
25、 = 1,則 b 和其前面的冒號(hào)可以省略例:x=1:2:5 y=1:2:6例:x=2:1:5 y=2:5例:x=3:1:047例:y=x(1:3)矩陣元素的引用 多個(gè)元素的引用(續(xù))x(i:j) 向量 x 中的第 i 到第 j 個(gè)元素A(i:j,m:n)由第 i 至 j 行和第 m 至 n 列組成的子矩陣?yán)築=A(2:3,1:3) y=A(1,1:3)x(i:end) 向量 x 中的第 i 個(gè)到最后一個(gè)元素A(i:end,m:n)A(i:j,m:end)第 i 行到最后一行與 m 至 n 列(子矩陣)第 m 列到最后一列與 i 至 j 行(子矩陣)48矩陣元素的引用 多個(gè)元素的引用(續(xù))A(
26、:,k) 矩陣的第 k 列A(i,:)矩陣的第 i 行A(i:j,:)矩陣的第 i 行到第 j 行A(:,m:n)矩陣的第 m 行到第 n 列A(:,:)整個(gè)矩陣x(:)取向量的所有元素,并按列向量方式輸出A(:)將矩陣的所有元素按列排成一個(gè)列向量49矩陣元素的引用 多個(gè)元素的引用:不連續(xù)元素的選取A(i1, i2, ., ip,j1, j2, ., jq) 矩陣第 i1, i2, ., ip 行和第 j1, j2, ., jq 列組成的子矩陣?yán)篈(1,3,4, 2,3)例:A(1,4,3, 2,3) 刪除指定的行或列A(i,:)= 刪除第 i 行A(:,j)=刪除第 j 列50特殊矩陣 M
27、atlab 提供了一些函數(shù),用于生成一些常見(jiàn)的特殊矩陣?yán)篈=magic(3)B=ones(4) 特殊矩陣的生成A=magic(5)a1=diag(A)a2=diag(A,1)a3=diag(A,-2)a=1,2,3,4A1=diag(a)A2=diag(a,1)A3=diag(a,-2)注意 diag 的用法51常見(jiàn)矩陣生成函數(shù)zeros(m,n)zeros(n)生成一個(gè) m 行 n 列的零矩陣m=n 時(shí)可簡(jiǎn)寫(xiě)為 zeros(n)ones(m,n)ones(n)生成一個(gè) m 行 n 列的元素全為 1 的矩陣 m=n 時(shí)可簡(jiǎn)寫(xiě)為 ones(n)eye(m,n)eye(n)生成一個(gè)主對(duì)角線全為
28、1 的 m 行 n 列矩陣m=n 時(shí)可簡(jiǎn)寫(xiě)為 eye(n),即為 n 維單位矩陣diag(X)diag(X,k)若 X 是矩陣,則 diag(X) 為 X 的主對(duì)角線向量若 X 是向量,diag(X) 產(chǎn)生以 X 為主對(duì)角線的對(duì)角矩陣tril(A)提取一個(gè)矩陣的下三角部分triu(A)提取一個(gè)矩陣的上三角部分rand(m,n)rand(n)產(chǎn)生 01 間均勻分布的隨機(jī)矩陣 m=n 時(shí)簡(jiǎn)寫(xiě)為 rand(n)randn(m,n)randn(n)產(chǎn)生均值為0,方差為1的標(biāo)準(zhǔn)正態(tài)分布隨機(jī)矩陣m=n 時(shí)簡(jiǎn)寫(xiě)為 randn(n)其它特殊矩陣生成函數(shù):magic、hilb、pascal 等52矩陣基本運(yùn)算
29、矩陣的加減:對(duì)應(yīng)分量進(jìn)行運(yùn)算 矩陣的普通乘法參與加減運(yùn)算的矩陣具有 相同的維數(shù)!A=1,2; 3,4; B=5,6; 7,8C=A+B D=B-A例:參與運(yùn)算的矩陣須滿足線性代數(shù)中矩陣相乘的原則!A=1,2,3; 4,5,6; B= 2,1; 4,3C=B*A例:53矩陣基本運(yùn)算 矩陣的除法:若 A 可逆方陣,則AB A 的逆左乘 B inv(A)*BB/A A 的逆右乘 B B*inv(A) 矩陣的冪:若 A 是方陣,p 是正整數(shù),則Ap = A 的 p 次冪,即 p 個(gè) A 相乘 右除左除 矩陣的轉(zhuǎn)置與共軛轉(zhuǎn)置A共軛轉(zhuǎn)置A.普通轉(zhuǎn)置,不取共軛,點(diǎn)與單引號(hào)之間不能有空格A = 1, 2-3i
30、; 3, 1+4iB = AC = A.例:54翻轉(zhuǎn)與旋轉(zhuǎn) 矩陣的翻轉(zhuǎn)與旋轉(zhuǎn)例:注意矩陣旋轉(zhuǎn)與轉(zhuǎn)置的區(qū)別!fliplr(A)左右翻轉(zhuǎn)flipud(A)上下翻轉(zhuǎn)rot90(A)rot90(A,k)逆時(shí)針旋轉(zhuǎn) 90 度逆時(shí)針旋轉(zhuǎn) k90 度A = 1 2 3;4 5 6B = fliplr(A)C = flipud(A)D = rot90(A)E = rot90(A,-1)55改變矩陣的形狀 改變矩陣的形狀:reshape(A,m,n)將矩陣元素按 列方向 進(jìn)行重新排列成一個(gè) mn 的新矩陣新矩陣的元素個(gè)數(shù)必須與原矩陣元素個(gè)數(shù)相等!A=1,2,3; 4,5,6; 7,8,9; 10,11,12B=
31、reshape(A,4,3)例:C=reshape(A,2,6)C=reshape(A,5,2)56查看矩陣的大小 查看矩陣的大?。簊ize、lengthsize(A)返回矩陣 A 的行數(shù)和列數(shù)size(A,1)返回矩陣 A 的行數(shù)size(A,2)返回矩陣 A 的列數(shù)length(x)length(X)若 x 是向量,則返回 x 的長(zhǎng)度若 X 是矩陣,則返回行數(shù)和列數(shù)中大的一個(gè)numel(A)返回 A 的元素的個(gè)數(shù)A=1,2,3; 4,5,6size(A)size(A,1)size(A,2)length(A), numel(A)x=1:5; length(x)例:57 Matlab應(yīng)用(一)
32、 矩陣運(yùn)算58本講主要內(nèi)容數(shù)組運(yùn)算 函數(shù)的使用 變量的輸入輸出 59矩陣的數(shù)組運(yùn)算 數(shù)組運(yùn)算:對(duì)應(yīng)元素進(jìn)行運(yùn)算 數(shù)組運(yùn)算包括:點(diǎn)乘、點(diǎn)除、點(diǎn)冪 相應(yīng)的四個(gè)數(shù)組運(yùn)算符為: .* ./ . . 點(diǎn)與算術(shù)運(yùn)算符之間不能有空格!參與運(yùn)算的對(duì)象必須具有相同的形狀!A=1,2,3; 4,5,6; B=3,2,1; 6,5,4;C=A.*B D=A./BE=A.B例:60函數(shù)取值設(shè) x 是變量, f 是一個(gè)函數(shù) 當(dāng) x = a 是標(biāo)量時(shí),f(x) = f(a) 也是一個(gè)標(biāo)量 當(dāng) x = x1, x2, , xn 是向量時(shí),則 f(x) = f(x1), f(x2), , f(xn) 是一個(gè)與 x 長(zhǎng)度相同的
33、向量 函數(shù)作用在矩陣上的取值 若 A 是矩陣,則 f (A) 是一個(gè)與 A 同形狀的矩陣f 作用在 x 的每個(gè)分量上!x=0:pi/4:pi; A=1,2,3; 4,5,6;y1=sin(x) y2=exp(A)y3=sqrt(A)例:61矩陣的超越函數(shù) Matlab 提供的矩陣函數(shù):expm、sqrtm、logm詳情參見(jiàn)聯(lián)機(jī)幫助(help expm / sqrtm / logm ) 更一般的矩陣函數(shù): funmfunm(A, fun)fun 可以是 exp, log,cos,sin,. .怎樣計(jì)算 eA ? 矩陣函數(shù) 將矩陣作為一個(gè)整體參與運(yùn)算62矩陣與數(shù)的運(yùn)算 加減:矩陣的每個(gè)元素都與數(shù)作
34、加減運(yùn)算 數(shù)乘:矩陣的每個(gè)元素都與數(shù)作乘法運(yùn)算 矩陣除以一個(gè)數(shù):每個(gè)元素都除以這個(gè)數(shù) 數(shù)與矩陣的點(diǎn)冪運(yùn)算:采用數(shù)組運(yùn)算 矩陣與數(shù)的運(yùn)算例:x=1 2 3; x.2=12,22,32=1,4,92.x=21,22,23=2,4,8Matlab中所有標(biāo)點(diǎn)符號(hào)必須在英文狀態(tài)下輸入!63常用數(shù)學(xué)函數(shù)sin(x)、cos(x)、tan(x)、cot(x)、sec(x)、csc(x)、sinh(x)、cosh(x)、tanh(x) .asin(x)、acos(x)、atan(x)、acot(x)、asec(x)、acsc(x) .exp(x) % ex 自然指數(shù) (以 e 為底)pow2(x) % 2x
35、以 2 為底的指數(shù) log(x) % ln(x) 自然對(duì)數(shù) (以 e 為底)log2(x) % 以 2 為底的對(duì)數(shù)log10(x) % 以 10 為底的對(duì)數(shù)sqrt(x) % 平方根abs(x) % 絕對(duì)值64常用數(shù)學(xué)函數(shù)conj(z) % 復(fù)數(shù)的共軛 real(z) % 復(fù)數(shù)的實(shí)部 imag(z) % 復(fù)數(shù)的虛部angle(z) % 復(fù)數(shù)的輻角sign(x) % 符號(hào)函數(shù)round(x) % 取整函數(shù) (四舍五入)fix(x)、floor(x)、ceil(x) % 另外三個(gè)取整函數(shù) mod(x,y) % 計(jì)算 x 除以 y 的余數(shù)(結(jié)果與 y 同號(hào))rem(x,y) % 計(jì)算 x 除以 y
36、的余數(shù)(結(jié)果與 x 同號(hào))gcd(x,y) % 最大公約數(shù)lcm(x,y) % 最小公倍數(shù)65常用數(shù)學(xué)函數(shù)linspace(a,b,n) % 生成 a 到 b,n 個(gè)數(shù)的等差數(shù)列l(wèi)ogspace(a,b,n) % 生成 10a 到 10b,n 個(gè)數(shù)的等比數(shù)列max(x) % 求 向量 x 中的最大值min(x) % 求最小值mean(x) % 求平均值sum(x) % 求和sort(x) % 排序det(A) % 矩陣行列式inv(A) % 矩陣的逆eig(A) % 矩陣的特征值rank(A) % 矩陣的秩若參數(shù) x 是矩陣,則作用在其各列上66 輸出格式Matlab 的輸出格式 Matlab
37、 以雙精度執(zhí)行所有的運(yùn)算,運(yùn)算結(jié)果可以在屏幕上輸出,同時(shí)賦給指定變量;若無(wú)指定變量,則系統(tǒng)會(huì)自動(dòng)將結(jié)果賦給變量 “ans” 在屏幕上輸出運(yùn)算結(jié)果時(shí),可以通過(guò) format 命令指定輸出格式format 只改變輸出格式,不會(huì)改變變量的值!67各種 format格式解釋例format短格式(缺省格式),同 short3.1416format short短格式(缺省格式),小數(shù)點(diǎn)后 4 位3.1416format long長(zhǎng)格式,雙精度 15位,單精度 7位3.14159265358979format short e短格式e方式(科學(xué)計(jì)數(shù)格式)3.1416e+000format long e長(zhǎng)格式e
38、方式3.141592653589793e+000format short g短格式g方式3.1416format long g長(zhǎng)格式g方式3.14159265358979format rat分?jǐn)?shù)形式355/113format compact壓縮格式format loose自由格式format +, format bank, format hex (詳情查看聯(lián)機(jī)幫助)68變量的存儲(chǔ) 將變量保存到 mat 文件中save將所有變量保存到文件 matlab.mat 中save fnamesave fname.mat 將所有變量保存到文件 fname.mat 中save fname 變量將指定變量保存
39、到文件 fname.mat 中 可同時(shí)保存多個(gè)變量,各變量之間用空格隔開(kāi)例:x=2:5; A=magic(3); a=2.4;save mydata A x; 從 mat 文件中讀取變量load fname讀取 fname.mat 中的所有變量load fname 變量從 fname.mat 中讀取指定的變量69Matlab應(yīng)用(二) 二維平面作圖 三維空間作圖70本講主要內(nèi)容 二維平面作圖 三維空間作圖 符號(hào)作圖 Matlab 繪圖過(guò)程/原理 71手工作圖如何畫(huà)出 ysin(x) 在 0, 2 上的圖像?72Matlab 作圖 找點(diǎn): x = 0, pi/4, pi/3, pi/2, pi,
40、 . 求值: y = sin(0), sin(pi/4), sin(pi/3), . 描點(diǎn):在坐標(biāo)系中畫(huà)出這些離散點(diǎn) 連線:用直線或曲線連接這些點(diǎn),得到函數(shù)的大致圖形 手工作圖 Matlab 作圖 找點(diǎn): x=0:pi/10:2*pi; 求值: y=sin(x); 描點(diǎn)、連線:使用 Matlab 提供的繪圖函數(shù) plotx=0:pi/10:2*pi; y=sin(x);plot(x,y);例:73二維作圖命令 平面曲線繪圖命令: plot 這里 x, y 都是向量,長(zhǎng)度必須相同 以 x 的分量為橫坐標(biāo), y 的分量為縱坐標(biāo),作平面曲線x=0:pi/10:4*pi; y=cos(x);plot(
41、x,y);例:作 y = cos(x) 在 0, 4 上的圖像plot(x,y)74二維作圖命令 平面曲線繪圖命令: plot 繪制向量 y 的線性圖 即以下標(biāo)為橫坐標(biāo),y 的分量為縱坐標(biāo),等價(jià)于:y=0,0.4,0.8,1.0,0.9,6.1;plot(y);例:plot(y)x=1:length(y); plot(x,y);思考:plot(y) 與 plot(x,y) 有什么區(qū)別?75圖形的屬性這里的 str 是用 單引號(hào) 括起來(lái)的字符串,用來(lái)指定圖形的屬性:點(diǎn)、線的形狀和顏色 指定點(diǎn)和線的屬性plot(x,y,str)x=0:pi/20:2*pi;plot(x,cos(x),r+:);例
42、:紅色、虛線、點(diǎn)用加號(hào)表示x=0:pi/20:2*pi;plot(x,cos(x),bo-);藍(lán)色、間斷線、點(diǎn)用圓圈表示顏色,線型,點(diǎn)標(biāo)記:可以全部指定,也可以部分指定,順序任意76點(diǎn)和線的基本屬性線型點(diǎn)標(biāo)記顏色- 實(shí)線: 虛線-. 點(diǎn)劃線- 間斷線 空白(不畫(huà)線). 點(diǎn)o 小圓圈x 叉子符+ 加號(hào)* 星號(hào)s 方格d 菱形 朝上三角v 朝下三角 朝右三角 sphere(60); axis equal;96 其它調(diào)用方式:坐標(biāo)軸控制axis(xmin,xmax, ymin,ymax, zmin,zmax) 作用:指定坐標(biāo)軸的顯示范圍 坐標(biāo)軸控制命令axis auto自動(dòng),使得圖形的坐標(biāo)滿足圖中的
43、一切元素axis equal 各坐標(biāo)軸采用等長(zhǎng)刻度axis square 使繪圖區(qū)域?yàn)檎叫蝍xis manual 以當(dāng)前的坐標(biāo)限制圖形的繪制(多圖時(shí)). .更多用法參見(jiàn)聯(lián)機(jī)幫助:help axisaxis on/off % 顯示/不顯示坐標(biāo)軸97 s 為字符串,表示所采用的色系,常用的值有顏色映象相應(yīng)的顏色系autumn紅黃色系gray線性灰色系cool青和洋紅色系pink柔和色系. .更多參見(jiàn)聯(lián)機(jī)幫助: help colormap圖像的著色方案colormap(s) 圖形的著色方案98繪圖小結(jié) 平面曲線繪圖:X=a:h:b;(1) 繪圖區(qū)域劃分y=f(x); % (2) 計(jì)算分割點(diǎn)上的函數(shù)
44、值plot(x,y); (3) 調(diào)用 Matlab 繪圖命令99繪圖小結(jié) 三維曲面繪圖:x=a:h1:b; y=c:h2:d;(1) 繪圖區(qū)域劃分X,Y=meshgrid(x,y); (2) 生成網(wǎng)格Z=z(X,Y); % 數(shù)組運(yùn)算(3) 計(jì)算在網(wǎng)格點(diǎn)上的函數(shù)值mesh(X,Y,Z); (4) 調(diào)用 Matlab 繪圖命令100繪圖小結(jié) 三維曲面參數(shù)方程繪圖:u=a:h1:b; v=c:h2:d;(1) 繪圖區(qū)域劃分U,V=meshgrid(u,v); (2) 生成網(wǎng)格X=x(U,V); Y=y(U,V); Z=z(U,V); % 數(shù)組運(yùn)算(3) 計(jì)算在網(wǎng)格點(diǎn)上的函數(shù)值mesh(X,Y,Z);
45、 (4) 調(diào)用 Matlab 繪圖命令101本講主要內(nèi)容 二維平面作圖 三維空間作圖 符號(hào)作圖 Matlab 繪圖過(guò)程/原理102二維曲線 ezplot 二維曲線符號(hào)繪圖函數(shù)ezplot(f(x),a,b)繪制 y = f (x) 在區(qū)域 a x b 上的圖形ezplot(f(x,y),a,b,c,d)繪制 f (x, y) = 0 在區(qū)域 a x b, c y d 上的圖形ezplot(x(t),y(t),a,b)繪制 x = x(t), y = y(t) 在區(qū)域 a t b 上的圖形103二維曲線 ezplotezplot(f(x)繪制 y = f (x) 在區(qū)域 -2 x 2 上的圖形e
46、zplot(f(x,y)繪制 f (x, y) = 0 在區(qū)域 -2 x, y 2 上的圖形ezplot(x(t),y(t)繪制 x = x(t), y = y(t) 在區(qū)域 0 t 2 上的圖形缺省的繪圖區(qū)間為 -2, 2缺省的繪圖區(qū)間為 -2, 2缺省的繪圖區(qū)間為 0, 2104ezplot 作圖ezplot(sin(x);ezplot(sin(x),-pi,pi);符號(hào)作圖時(shí)要注意使用 單引號(hào)!105Matlab 符號(hào)作圖 空間曲線符號(hào)作圖ezplot3(x(t),y(t),z(t),a,b) 繪制空間曲線:x = x (t) , y = y (t) , z = z (t) , a t
47、bezplot3(x(t),y(t),z(t) 繪制空間曲線:x = x (t) , y = y (t) , z = z (t) , 0 t 2缺省的繪圖區(qū)間為 0, 2ezplot3(2*t,sin(t),cos(t),0,20)例:106Matlab 符號(hào)作圖 空間曲面符號(hào)繪圖函數(shù): ezmesh、ezsurf ezmesh(z(x,y),a,b,c,d) ezmesh(z(x,y),a,b) ezmesh(z(x,y)ezsurf 的用法與 ezmesh 相同107Matlab 符號(hào)作圖 空間曲面符號(hào)繪圖函數(shù): ezmesh、ezsurf ezmesh(x(s,t),y(s,t),z(s
48、,t),a,b,c,d) ezmesh(x(s,t),y(s,t),z(s,t),a,b) ezmesh(x(s,t),y(s,t),z(s,t)108本講主要內(nèi)容 二維平面作圖 三維空間作圖 符號(hào)作圖 Matlab 繪圖過(guò)程/原理109曲線作圖過(guò)程 基本原理:點(diǎn) 線,即先畫(huà)點(diǎn),后連線二、連線x=0:pi/5:2*pi;plot(x,sin(x),r.-)例:一、畫(huà)點(diǎn)x=0:pi/5:2*pi;plot(x,sin(x),.)三、加密x=0:pi/20:2*pi;plot(x,sin(x),r.-)110線: 分別沿 x 方向和 y 方向 連接這些點(diǎn)即可得到三維曲面作圖先畫(huà)點(diǎn),后連線,構(gòu)成曲面
49、網(wǎng)格圖點(diǎn):111 Matlab應(yīng)用(三) Matlab 符號(hào)運(yùn)算112主要內(nèi)容 Matlab 符號(hào)運(yùn)算介紹 符號(hào)對(duì)象與基本符號(hào)運(yùn)算 symvar、 subs 和 vpa 常見(jiàn)的符號(hào)計(jì)算113符號(hào)運(yùn)算 計(jì)算以推理方式進(jìn)行,不受計(jì)算誤差累積所帶來(lái)的困擾 符號(hào)計(jì)算指令的調(diào)用比較簡(jiǎn)單,與教科書(shū)上的公式相近 符號(hào)計(jì)算可以給出完全正確的封閉解,或任意精度的數(shù)值解(封閉解不存在時(shí) ) 符號(hào)計(jì)算所需的運(yùn)行時(shí)間相對(duì)較長(zhǎng) 符號(hào)運(yùn)算的特點(diǎn) 114Matlab 符號(hào)運(yùn)算 Matlab 符號(hào)運(yùn)算是通過(guò)符號(hào)數(shù)學(xué)工具箱(Symbolic Math Toolbox)來(lái)實(shí)現(xiàn)的。 Matlab 的符號(hào)數(shù)學(xué)工具箱可以完成幾乎所有得
50、符號(hào)運(yùn)算功能,如:符號(hào)表達(dá)式的運(yùn)算,符號(hào)矩陣的運(yùn)算,符號(hào)微積分,符號(hào)作圖,符號(hào)代數(shù)方程求解,符號(hào)微分方程求解等。 此外,該工具箱還支持可變精度運(yùn)算,即支持以指定的精度返回結(jié)果。 Matlab 符號(hào)運(yùn)算 115符號(hào)運(yùn)算舉例 求一元二次方程 ax2 + bx + c = 0 的根 solve(a*x2+b*x+c=0) 求的根 f (x) = (cos x)2 的一次導(dǎo)數(shù)x=sym(x);diff(cos(x)2) 計(jì)算 f (x) = x2 在區(qū)間 a, b 上的定積分syms a b x;int(x2,a,b)116內(nèi)容提要 Matlab 符號(hào)運(yùn)算介紹 符號(hào)對(duì)象與基本符號(hào)運(yùn)算 symvar、
51、subs 和 vpa 常見(jiàn)的符號(hào)計(jì)算117 在進(jìn)行符號(hào)運(yùn)算時(shí),必須先定義基本的符號(hào)對(duì)象,可以是 符號(hào)變量、符號(hào)表達(dá)式等 符號(hào)對(duì)象是一種數(shù)據(jù)結(jié)構(gòu) 符號(hào)對(duì)象 符號(hào)表達(dá)式:含有符號(hào)對(duì)象的表達(dá)式 符號(hào)矩陣/數(shù)組:元素為符號(hào)表達(dá)式的矩陣/數(shù)組 Matlab 符號(hào)對(duì)象 118 sym 用來(lái)建立單個(gè)符號(hào)對(duì)象,一般調(diào)用格式為: 符號(hào)對(duì)象的定義/聲明:sym、syms符號(hào)對(duì)象的建立例:a=sym(a) 符號(hào)變量 = sym(x)參數(shù) x 可以是一個(gè)數(shù)或數(shù)值矩陣,也可以是字符串a(chǎn) 是符號(hào)變量b 是符號(hào)常量b=sym(1/3)C 是符號(hào)矩陣C=sym(1 ab; c d)119符號(hào)對(duì)象的建立syms 符號(hào)變量1 符
52、號(hào)變量2 . 符號(hào)變量n 例:syms a b c;a=sym(a);b=sym(b);c=sym(c); syms 用來(lái)聲明多個(gè)符號(hào)變量,一般調(diào)用格式為: 符號(hào)對(duì)象的定義/聲明:sym、syms120例: 建立符號(hào)表達(dá)式通常有以下 2 種方法: (1) 用 sym 函數(shù)直接建立符號(hào)表達(dá)式 (2) 使用已經(jīng)定義的符號(hào)變量組成符號(hào)表達(dá)式 y=sym(sin(x)+cos(x)x=sym(x);y=sin(x)+cos(x)符號(hào)表達(dá)式syms x;y=sin(x)+cos(x) 符號(hào)表達(dá)式:含符號(hào)對(duì)象的表達(dá)式121Matlab 符號(hào)運(yùn)算采用的運(yùn)算符和基本函數(shù),在形狀、名稱和使用上,都與數(shù)值計(jì)算中的
53、運(yùn)算符和基本函數(shù)完全相同基本符號(hào)運(yùn)算 普通運(yùn)算: 數(shù)組運(yùn)算: 矩陣轉(zhuǎn)置: 基本運(yùn)算 基本數(shù)學(xué)函數(shù)三角函數(shù)與反三角函數(shù)、指數(shù)函數(shù)、對(duì)數(shù)函數(shù)等sin,cos,asin,acos,exp,log,abs,diag,tril,triu, .+ - * / .* . ./ . .122符號(hào)矩陣A=sym(1+x, sin(x); 5, exp(x) 使用 sym 函數(shù)直接生成 將數(shù)值矩陣轉(zhuǎn)化成符號(hào)矩陣 符號(hào)矩陣中元素的引用和修改B=2/3, sqrt(2); 5.2, log(3); C=sym(B)A=sym(1+x, sin(x); 5, exp(x);A(1,2) % 引用A(2,2)=sym(c
54、os(x) % 重新賦值 符號(hào)矩陣的生成123內(nèi)容提要 Matlab 符號(hào)運(yùn)算介紹 符號(hào)對(duì)象與基本符號(hào)運(yùn)算 symvar、 subs 和 vpa 常見(jiàn)的符號(hào)計(jì)算124symvarsymvar(s)symvar(s, N) 列出符號(hào)表達(dá)式中的符號(hào)變量 按字母順序列出符號(hào)表達(dá)式 s 中的所有符號(hào)變量 列出符號(hào)表達(dá)式 s 中離 x 最近的 N 個(gè)符號(hào)變量 若有兩個(gè)符號(hào)變量與 x 的距離相等,則ASCII 碼大者優(yōu)先 常量 pi, i, j 不作為符號(hào)變量f=sym(2*v-3*y+z2+5*a)symvar(f)symvar(f,2)例:125subs 用 a 替換符號(hào)表達(dá)式 s 中的符號(hào)變量 x
55、這里 a 可以是 數(shù)/變量/表達(dá)式 或 符號(hào)變量/表達(dá)式 符號(hào)替換 用給定的數(shù)據(jù)替換符號(hào)表達(dá)式中的指定的符號(hào)變量subs(s,x,a)syms x y u v;f1=2*x+y-1;f2=subs(f1,x,u)f3=subs(f1,y,2+3)f3=subs(f1,x,y,u,v) 例:126subs 舉例f=sym(2*u);f1=subs(f,u,2)f2=subs(f,u,u+2)f3=subs(f,u,1,2)a=3; f4=subs(f2,u,a+2)f5=subs(f2,u,a+2)syms x y;f6=subs(f,u,x+y)f7=subs(f6,x,y,1,2)f8=su
56、bs(f6,x,y,x+y,x+y)例:指出下面各條語(yǔ)句的輸出結(jié)果符號(hào)變量若沒(méi)有聲明,則需要加上單引號(hào)!f=2*uf1=4f2=2*u+4f3=2,4f4=14f5=2*a+8f6=2*x+2*yf7=6f8=4*x+4*y127vpa 計(jì)算表達(dá)式 s 的值,保留 n 位有效數(shù)字 返回值是符號(hào)對(duì)象 可變精度vpa(s,n)x1=vpa(sin(pi/2),10)x2=vpa(pi3,3)x3=vpa(pi,100) 例:128內(nèi)容提要 Matlab 符號(hào)運(yùn)算介紹 符號(hào)對(duì)象與基本符號(hào)運(yùn)算 symvar、 subs 和 vpa 常見(jiàn)的符號(hào)計(jì)算 因式分解、展開(kāi)、合并、簡(jiǎn)化及通分等 計(jì)算極限 計(jì)算導(dǎo)數(shù)
57、 計(jì)算積分 符號(hào)級(jí)數(shù)求和 代數(shù)方程和微分方程的求解129因式分解factor(f)syms x; f=x6+1; factor(f) factor 也可用于正整數(shù)的分解s=factor(100)factor(12345678901234567890) % ERRORfactor(sym(12345678901234567890)對(duì)大整數(shù)進(jìn)行因式分解時(shí)可以先將其轉(zhuǎn)化成符號(hào)常量例:例: 因式分解130函數(shù)展開(kāi)expand(f)syms x; f=(x+1)6;expand(f) 多項(xiàng)式展開(kāi) 三角函數(shù)展開(kāi)syms x y; f=sin(x+y);expand(f) 函數(shù)展開(kāi)例:例:131合并同類項(xiàng)s
58、yms x y; f=x2*y+y*x+y2+2*x ;collect(f)collect(f,y)例:collect(f,v) % 按指定變量 v 進(jìn)行合并collect(f) % 按默認(rèn)變量進(jìn)行合并 合并同類項(xiàng) 默認(rèn)變量:symvar(f,1) 的返回結(jié)果syms u v; g=u2*v+u*v3-u2+v;collect(g)132函數(shù)簡(jiǎn)化y=simplify(f) 函數(shù)簡(jiǎn)化 對(duì)符號(hào)表達(dá)式 f 進(jìn)行簡(jiǎn)化syms x; f=sin(x)2 + cos(x)2;y=simplify(f)例:133函數(shù)簡(jiǎn)化y=simple(f) 函數(shù)簡(jiǎn)化 對(duì) f 嘗試多種不同的方法(包括 simplify)進(jìn)
59、行簡(jiǎn)化, 以尋求其最簡(jiǎn)短形式例:化簡(jiǎn)syms x; f=(cos(x)2-sin(x)2)*sin(2*x)*(exp(2*x) . -2*exp(x)+1)/(exp(2*x)-1);y1=simplify(f)y2=simple(f)134函數(shù)簡(jiǎn)化N,D=numden(f) 通分 N 為通分后的分子,D 為通分后的分母syms x y; f=x/y+y/x;N,D=numden(f )n,d=numden(sym(112/1024)例:135horner 多項(xiàng)式 horner 多項(xiàng)式:嵌套形式的多項(xiàng)式syms x; f=x4+2*x3+4*x2+x+1;g=horner(f)例:136計(jì)算
60、極限limit(f,x,a) % 計(jì)算limit(f,a) % 當(dāng)默認(rèn)變量趨向于 a 時(shí)的極限limit(f) % 計(jì)算 a=0 時(shí)的極限limit(f,x,a,right) % 計(jì)算右極限limit(f,x,a,left) % 計(jì)算左極限例:計(jì)算 ,syms x h n; L=limit(log(x+h)-log(x)/h,h,0)M=limit(1-x/n)n,n,inf) 計(jì)算極限137計(jì)算導(dǎo)數(shù)g=diff(f,v) % 求符號(hào)表達(dá)式 f 關(guān)于變量 v 的導(dǎo)數(shù)g=diff(f) % 計(jì)算關(guān)于默認(rèn)變量的導(dǎo)數(shù)g=diff(f,v,n) % 求 f 關(guān)于 v 的 n 階導(dǎo)數(shù) 計(jì)算導(dǎo)數(shù)syms
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度網(wǎng)絡(luò)安全風(fēng)險(xiǎn)評(píng)估與解決方案合同范本3篇
- 二零二五版股權(quán)激勵(lì)合同:某上市公司對(duì)高級(jí)管理人員股權(quán)激勵(lì)計(jì)劃3篇
- 2025年度時(shí)尚服飾店開(kāi)業(yè)活動(dòng)承包合同3篇
- 2025年度高端不銹鋼醫(yī)療器械制造委托合同3篇
- 二零二五版智能穿戴設(shè)備代加工合同范本2篇
- 二零二五年度環(huán)保型車(chē)間生產(chǎn)承包服務(wù)合同范本3篇
- 二零二五年高管子女教育援助與扶持合同3篇
- 2025年草場(chǎng)租賃與牧區(qū)基礎(chǔ)設(shè)施建設(shè)合同3篇
- 二零二五版涵洞工程勞務(wù)分包單價(jià)及工期延誤賠償合同3篇
- 二零二五版財(cái)務(wù)報(bào)表編制會(huì)計(jì)勞動(dòng)合同范本3篇
- GB/T 34241-2017卷式聚酰胺復(fù)合反滲透膜元件
- GB/T 12494-1990食品機(jī)械專用白油
- 運(yùn)輸供應(yīng)商年度評(píng)價(jià)表
- 成熙高級(jí)英語(yǔ)聽(tīng)力腳本
- 北京語(yǔ)言大學(xué)保衛(wèi)處管理崗位工作人員招考聘用【共500題附答案解析】模擬試卷
- 肺癌的診治指南課件
- 人教版七年級(jí)下冊(cè)數(shù)學(xué)全冊(cè)完整版課件
- 商場(chǎng)裝修改造施工組織設(shè)計(jì)
- 統(tǒng)編版一年級(jí)語(yǔ)文上冊(cè) 第5單元教材解讀 PPT
- 加減乘除混合運(yùn)算600題直接打印
- ASCO7000系列GROUP5控制盤(pán)使用手冊(cè)
評(píng)論
0/150
提交評(píng)論