語言與應(yīng)用章_第1頁
語言與應(yīng)用章_第2頁
語言與應(yīng)用章_第3頁
語言與應(yīng)用章_第4頁
語言與應(yīng)用章_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

2024/1/233:42MATLAB語言與應(yīng)用1第2章

程序設(shè)計基礎(chǔ)現(xiàn)代設(shè)計與分析研究所王雷2024/1/233:42MATLAB語言與應(yīng)用2本章主要內(nèi)容2.1MATLAB語言基礎(chǔ)2.2MATLAB基本數(shù)學(xué)運算2.3MATLAB語言流程控制2.4MATLAB函數(shù)的編寫2024/1/233:42MATLAB語言與應(yīng)用32.1MATLAB

語言基礎(chǔ)MATLAB語言的變量名規(guī)則由一個字母引導(dǎo),后面可以為其他字符區(qū)分大小寫Abc

ABc有效MYvar12,MY_Var12

和MyVar12_錯誤的變量名12MyVar,_MyVar12

MATLAB的保留常量eps,i,j,pi,Inf,NaNlastwarn,lasterr

2024/1/233:42MATLAB語言與應(yīng)用4數(shù)值型數(shù)據(jù)結(jié)構(gòu)雙精度數(shù)值變量IEEE標(biāo)準(zhǔn),64位(8字節(jié)),11指數(shù)位,53數(shù)值位和一個符號位

double()函數(shù)的轉(zhuǎn)換其他數(shù)據(jù)類型uint8,常用于圖像表示和處理,8位int8(),int16(),int32(),uint16(),uint32()2024/1/233:42MATLAB語言與應(yīng)用5符號型變量數(shù)據(jù)類型符號型,sym(A),常用于公式推導(dǎo)變量聲明采用變精度函數(shù)求值【例2-1】求出p

的300位有效數(shù)字2024/1/233:42MATLAB語言與應(yīng)用6MATLAB

支持的其他數(shù)據(jù)結(jié)構(gòu)字符串型數(shù)據(jù):用單引號括起來多維數(shù)組:是矩陣的直接擴(kuò)展,多個下標(biāo)單元數(shù)組:將不同類型數(shù)據(jù)集成到一個變量名下面,用{}表示(細(xì)胞型)結(jié)構(gòu)體:A.b,引用也用A.b,不是A->b類與對象:可以定義重載函數(shù)2024/1/233:42MATLAB語言與應(yīng)用7MATLAB的基本語句結(jié)構(gòu)直接賦值語句【例2-2】表示矩陣2024/1/233:42MATLAB語言與應(yīng)用8函數(shù)調(diào)用語句冒號表達(dá)式2024/1/233:42MATLAB語言與應(yīng)用9【例2-3】用不同的步距生成(0,p)間向量2024/1/233:42MATLAB語言與應(yīng)用10Linspace(a,b,n)【例2-4】0到pi的50個等間距點

T=linspace(0,pi,50)

相當(dāng)于 0:pi/49:pi2024/1/233:42MATLAB語言與應(yīng)用11子矩陣提取基本語句格式【例2-5】子矩陣提取提取A

矩陣全部奇數(shù)行,所有列提取A

矩陣3,2,1行、2,3,4列構(gòu)成子矩陣將A

矩陣左右翻轉(zhuǎn)2024/1/233:42MATLAB語言與應(yīng)用12例子exstring.m 字符串?dāng)?shù)據(jù)類型xibao.m 單元數(shù)組(細(xì)胞)jiegou.m 結(jié)構(gòu)型數(shù)據(jù)2024/1/233:42MATLAB語言與應(yīng)用132.2基本數(shù)學(xué)運算2.2.1代數(shù)運算2.2.2邏輯運算2.2.3比較運算2.2.4解析結(jié)果的化簡與變換2.2.5基本數(shù)論運算2024/1/233:42MATLAB語言與應(yīng)用14矩陣的代數(shù)運算矩陣轉(zhuǎn)置數(shù)學(xué)表示MATLAB

求解B=A’2024/1/233:42MATLAB語言與應(yīng)用15矩陣加減法注意其一為標(biāo)量的情形矩陣乘法數(shù)學(xué)表示MATLAB表示注意相容性2024/1/233:42MATLAB語言與應(yīng)用16矩陣除法矩陣左除:AX=B,求X

MATLAB求解:X=A\BA不是方陣,求最小二乘解矩陣右除:XA=B,求X

MATLAB求解:X=B/AA不是方陣,求最小二乘解

2024/1/233:42MATLAB語言與應(yīng)用17矩陣除法求解方程組MATLAB求解A=[816;357;492];B=[7.5412]’;x=A\B2024/1/233:42MATLAB語言與應(yīng)用18矩陣翻轉(zhuǎn)左右翻轉(zhuǎn)上下翻轉(zhuǎn)旋轉(zhuǎn)90o矩陣乘方

A

為方陣,求

MATLAB實現(xiàn):2024/1/233:42MATLAB語言與應(yīng)用19點運算矩陣對應(yīng)元素的直接運算例如2024/1/233:42MATLAB語言與應(yīng)用20矩陣的邏輯運算邏輯運算(相應(yīng)元素間的運算)與運算或運算非運算異或運算2024/1/233:42MATLAB語言與應(yīng)用21矩陣的比較運算各種允許的比較關(guān)系

>,>=,<,<=,==,~=,find(),all(),any()實例2024/1/233:42MATLAB語言與應(yīng)用22解析結(jié)果的化簡與變換其他常用化簡函數(shù)【例2-6】2024/1/233:42MATLAB語言與應(yīng)用23變量替換symsxsubs(P,’s’,x)subs(P,’s’,5)2024/1/233:42MATLAB語言與應(yīng)用24【例2-7】求其Taylor冪級數(shù)展開symsabcdt;f=cos(a*t+b)+sin(c*t)*sin(d*t);f1=taylor(f)pretty(f1)結(jié)果2024/1/233:42MATLAB語言與應(yīng)用25基本數(shù)論運算2024/1/233:42MATLAB語言與應(yīng)用26【例2-8】對下面的數(shù)據(jù)進(jìn)行取整運算

-0.2765,0.5772,1.4597,2.1091,1.191,-1.61872024/1/233:42MATLAB語言與應(yīng)用27m=1856120; n=1483720g=gce(m,n); l=lcm(m,n);[g,l]【例2-10】1856120,1483720,最大公約數(shù)、最小公倍數(shù),質(zhì)因數(shù)分解【例2-11】1-1000間質(zhì)數(shù)%prod驗證2024/1/233:42MATLAB語言與應(yīng)用282.3MATLAB語言流程控制循環(huán)結(jié)構(gòu)for結(jié)構(gòu)while結(jié)構(gòu)2024/1/233:42MATLAB語言與應(yīng)用29【例2-12】用循環(huán)求解【例2-13】用循環(huán)求解求最小的m2024/1/233:42MATLAB語言與應(yīng)用30【例2-14】求>>tic,s=0;fori=1:100000,s=s+1/2^i+1/3^i;endtoc2024/1/233:42MATLAB語言與應(yīng)用31轉(zhuǎn)移結(jié)構(gòu)2024/1/233:42MATLAB語言與應(yīng)用322024/1/233:42MATLAB語言與應(yīng)用33【例2-15】用循環(huán)求解求最大的m2024/1/233:42MATLAB語言與應(yīng)用342.3.3開關(guān)結(jié)構(gòu)2024/1/233:42MATLAB語言與應(yīng)用352024/1/233:42MATLAB語言與應(yīng)用36和C語言的區(qū)別當(dāng)開關(guān)表達(dá)式的值等于某表達(dá)式,執(zhí)行該語句后結(jié)束該結(jié)構(gòu),不用break同時滿足若干個條件之一,則用單元結(jié)構(gòu)otherwise語句,不是default程序的執(zhí)行結(jié)果和各個case順序無關(guān)case語句中條件不能重復(fù),否則列在后面的條件將不能執(zhí)行2024/1/233:42MATLAB語言與應(yīng)用372.3.4試探結(jié)構(gòu)全新結(jié)構(gòu)2024/1/233:42MATLAB語言與應(yīng)用382.4MATLAB函數(shù)的編寫函數(shù)是MATLAB編程的主流方法除了函數(shù)外,還可以采用M-script文件M-script適合于小規(guī)?!纠?-16】若最大值不為10000,需修改程序?qū)和10000值的設(shè)置,不適合于M-script2024/1/233:42MATLAB語言與應(yīng)用392.4.1MATLAB

語言的函數(shù)的基本結(jié)構(gòu)

nargin,nargout,varargin,varargout2024/1/233:42MATLAB語言與應(yīng)用40【例2-17】前面的要求,m,10000無需修改程序2024/1/233:42MATLAB語言與應(yīng)用41【例2-18】若只給出一個輸入?yún)?shù),則會自動生成一個方陣在函數(shù)中給出合適的幫助信息檢測輸入和返回變量的個數(shù)editmyhilb2024/1/233:42MATLAB語言與應(yīng)用422024/1/233:42MATLAB語言與應(yīng)用432024/1/233:42MATLAB語言與應(yīng)用442.4.2可變輸入輸出個數(shù)【例2-21】可以計算兩個多項式的積用varargin實現(xiàn)任意多個多項式的積2024/1/233:42MATLAB語言與應(yīng)用452.4.3inline函數(shù)和匿名函數(shù)inline函數(shù),可以免去文件M

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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

提交評論