




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
現(xiàn)在是1頁(yè)\一共有81頁(yè)\編輯于星期一Matlab計(jì)算與仿真技術(shù)現(xiàn)在是2頁(yè)\一共有81頁(yè)\編輯于星期一物理與光電工程學(xué)院大連理工大學(xué)Matlab計(jì)算與仿真技術(shù)現(xiàn)在是3頁(yè)\一共有81頁(yè)\編輯于星期一什么是MATLAB?MATLAB代表MATrixLABoratory它的首創(chuàng)者是美國(guó)新墨西哥大學(xué)計(jì)算機(jī)系的系主任CleveMoler博士,他在教授線(xiàn)性代數(shù)課程發(fā)現(xiàn)其他語(yǔ)言很不方便,篇構(gòu)思開(kāi)發(fā)了MATLAB。最初采用FORTRAN語(yǔ)言編寫(xiě),20世紀(jì)80年代后出現(xiàn)了MATLAB的第二版,全部采用C語(yǔ)言編寫(xiě).1984年Moler博士和一批數(shù)學(xué)家及軟件專(zhuān)家創(chuàng)建了MathWorks公司,專(zhuān)門(mén)開(kāi)發(fā)MATLAB。現(xiàn)在是4頁(yè)\一共有81頁(yè)\編輯于星期一MATLAB的發(fā)展歷史1984年,MATLAB第1版(DOS版)
1992年,MATLAB4.0版
1994年,MATLAB4.2版
1997年,MATLAB5.0版
1999年,MATLAB5.3版
2000年,MATLAB6.0版
2001年,MATLAB6.1版
2002年,MATLAB6.5版
2004年,MATLAB7.0版
2008年,MATLAB7.6版(支持4線(xiàn)程計(jì)算)
2009年,MATLAB7.8版(支持8線(xiàn)程計(jì)算)是一種解釋性語(yǔ)言,一種演草紙式的科學(xué)計(jì)算語(yǔ)言現(xiàn)在是5頁(yè)\一共有81頁(yè)\編輯于星期一MATLAB能干什么?MATLAB可以進(jìn)行:數(shù)學(xué)計(jì)算、算法開(kāi)發(fā)、數(shù)據(jù)采集建模、仿真、原型數(shù)據(jù)分析、開(kāi)發(fā)和可視化科學(xué)和工程圖形應(yīng)用程序的開(kāi)發(fā),包括圖形用戶(hù)界面的創(chuàng)建。MATLAB廣泛應(yīng)用于:數(shù)值計(jì)算、圖形處理、符號(hào)運(yùn)算、數(shù)學(xué)建模、系統(tǒng)辨識(shí)、小波分析、實(shí)時(shí)控制、動(dòng)態(tài)仿真等領(lǐng)域。現(xiàn)在是6頁(yè)\一共有81頁(yè)\編輯于星期一掌握MATLAB……MATLAB的構(gòu)成:MATLAB開(kāi)發(fā)環(huán)境:進(jìn)行應(yīng)用研究開(kāi)發(fā)的交互式平臺(tái)MATLAB數(shù)學(xué)與運(yùn)算函數(shù)庫(kù):用于科學(xué)計(jì)算的函數(shù)MATLAB語(yǔ)言:進(jìn)行應(yīng)用開(kāi)發(fā)的編程工具圖形化開(kāi)發(fā):二維、三維圖形開(kāi)發(fā)的工具應(yīng)用程序接口(API):用于與其他預(yù)言混編面向?qū)iT(mén)領(lǐng)域的工具箱:小波工具箱、神經(jīng)網(wǎng)絡(luò)工具箱、信號(hào)處理工具箱、圖像處理工具箱、模糊邏輯工具箱、優(yōu)化工具箱、魯棒控制工具箱等幾十個(gè)不同應(yīng)用的工具箱。現(xiàn)在是7頁(yè)\一共有81頁(yè)\編輯于星期一MATLAB界面:命令窗口、圖形窗口、編輯窗口、幫助窗口?,F(xiàn)在是8頁(yè)\一共有81頁(yè)\編輯于星期一常用MATLAB系統(tǒng)命令help在線(xiàn)幫助who顯示當(dāng)前變量whos顯示當(dāng)前變量的詳細(xì)信息clear清空工作間的變量和函數(shù)pack整理工作間的內(nèi)存load把文件調(diào)入變量到工作間save把變量存入文件中echo命令回顯what顯示指定的matlab文件dir顯示目錄內(nèi)容現(xiàn)在是9頁(yè)\一共有81頁(yè)\編輯于星期一基本數(shù)學(xué)運(yùn)算在MATLAB下進(jìn)行基本數(shù)學(xué)運(yùn)算,只需將運(yùn)算式直接打在提示號(hào)>>后面,并按Enter鍵。MATLAB將計(jì)算的結(jié)果以ans顯示?!纠壳蟮乃阈g(shù)運(yùn)算結(jié)果。(1)用鍵盤(pán)在MATLAB指令窗中輸入以下內(nèi)容>>(12+2*(7-4))/3^2
(2)在上述表達(dá)式輸入完成后,按【Enter】鍵,該就指令被執(zhí)行。(3)在指令執(zhí)行后,MATLAB指令窗中將顯示以下結(jié)果。ans=
2
我們也可給運(yùn)算式的結(jié)果設(shè)定一個(gè)變量x:x=(5*2+1.3-0.8)*10^2/25x=42變量x的值可以在下個(gè)語(yǔ)句中調(diào)用:y=2*x+1y=85
現(xiàn)在是10頁(yè)\一共有81頁(yè)\編輯于星期一例:計(jì)算在命令窗口中輸入sqrt(18)+(7*sin(pi/6))/(5+cos(pi/6))注意:(1)“》”為命令提示符;(2)字母要區(qū)分大小寫(xiě),所有命令和函數(shù)名都必須用小寫(xiě)?,F(xiàn)在是11頁(yè)\一共有81頁(yè)\編輯于星期一變量命名規(guī)則1.變量名的大小寫(xiě)敏感。2.變量的第一個(gè)字符必須為英文字母,而且不能超過(guò)31個(gè)字符。3.變量名可以包含下連字符、數(shù)字,但不能為空格符、標(biāo)點(diǎn)。注:數(shù)值型變量和符號(hào)型變量在MATLAB中是不相同的,它們之間不能直接進(jìn)行轉(zhuǎn)化。MATLAB提供了一個(gè)將數(shù)值型轉(zhuǎn)化成符號(hào)型的命令,即sym(syms)?,F(xiàn)在是12頁(yè)\一共有81頁(yè)\編輯于星期一MATLAB提供基本的算術(shù)運(yùn)算有:加(+)、減(-)、乘(*)、除(/)、冪次方(^),范例為:5+3,5-3,5*3,5/3,5^3MATLAB書(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=744現(xiàn)在是13頁(yè)\一共有81頁(yè)\編輯于星期一MATLAB常用數(shù)學(xué)函數(shù)三角函數(shù)和雙曲函數(shù)名稱(chēng)含義名稱(chēng)含義名稱(chēng)含義sin正弦csc余割atanh反雙曲正切cos余弦asec反正割acoth反雙曲余切tan正切acsc反余割sech雙曲正割cot余切sinh雙曲正弦csch雙曲余割asin反正弦cosh雙曲余弦asech反雙曲正割acos反余弦tanh雙曲正切acsch反雙曲余割atan反正切coth雙曲余切atan2四象限反正切acot反余切asinh反雙曲正弦sec正割acosh反雙曲余弦現(xiàn)在是14頁(yè)\一共有81頁(yè)\編輯于星期一MATLAB常用數(shù)學(xué)函數(shù)指數(shù)函數(shù)名稱(chēng)含義名稱(chēng)含義名稱(chēng)含義expE為底的指數(shù)log1010為底的對(duì)數(shù)pow22的冪log自然對(duì)數(shù)log22為底的對(duì)數(shù)sqrt平方根復(fù)數(shù)函數(shù)名稱(chēng)含義名稱(chēng)含義名稱(chēng)含義abs絕對(duì)值conj復(fù)數(shù)共軛real復(fù)數(shù)實(shí)部angle相角imag復(fù)數(shù)虛部現(xiàn)在是15頁(yè)\一共有81頁(yè)\編輯于星期一其他函數(shù)名稱(chēng)含義名稱(chēng)含義min最小值max最大值mean平均值median中位數(shù)std標(biāo)準(zhǔn)差diff相鄰元素的差sort排序length個(gè)數(shù)norm歐氏(Euclidean)長(zhǎng)度sum總和prod總乘積dot內(nèi)積cumsum累計(jì)元素總和cumprod累計(jì)元素總乘積cross外積現(xiàn)在是16頁(yè)\一共有81頁(yè)\編輯于星期一矩陣的MATLAB表示直接輸入
>>A=[12,3;456;7,89]冒號(hào)操作符
>>a=0:1:10>>a=linspace(0,1,10)>>a=logspace(1,2,10)
現(xiàn)在是17頁(yè)\一共有81頁(yè)\編輯于星期一MATLAB下矩陣的運(yùn)算矩陣的代數(shù)運(yùn)算轉(zhuǎn)置B=A’加減乘A+BA-BA*B左除A\B即AX=B的解X=A-1B右除A/B即XB=A的解X=AB-1翻轉(zhuǎn)fliplrflipudrot90乘方A^B點(diǎn)運(yùn)算A.*BA./BA.\BA.^BA.’函數(shù)現(xiàn)在是18頁(yè)\一共有81頁(yè)\編輯于星期一矩陣的邏輯運(yùn)算運(yùn)算符&(與)|(或)~(非)結(jié)果是一個(gè)0-1矩陣。當(dāng)邏輯表達(dá)式的值為真時(shí),賦值1,否則為0
邏輯函數(shù)all:當(dāng)某列的元素都為真時(shí),返回值為1,否則返回0。最終運(yùn)算結(jié)果為一個(gè)0-1行向量any:當(dāng)向量中至少有一個(gè)元素為真時(shí),返回值為1,否則返回0。最終運(yùn)算結(jié)果為一個(gè)0-1行向量find:用于查找向量中的真元素的下標(biāo),返回由所有真元素下標(biāo)構(gòu)成的列向量?,F(xiàn)在是19頁(yè)\一共有81頁(yè)\編輯于星期一矩陣的比較關(guān)系在MATLAB里共有六個(gè)關(guān)系運(yùn)算符
<小于 >大于
<=小于等于>=大于等于
==等于 ~=不等于關(guān)系運(yùn)算符將生成一個(gè)0-1矩陣,當(dāng)運(yùn)算數(shù)相應(yīng)元素為真時(shí),對(duì)應(yīng)位置上生成1,否則為0。
現(xiàn)在是20頁(yè)\一共有81頁(yè)\編輯于星期一矩陣元素的數(shù)據(jù)變換floor(A)向-∞取整ceil(A)向+∞取整round(A)四舍五入取整fix(A)按離0近的方向取整現(xiàn)在是21頁(yè)\一共有81頁(yè)\編輯于星期一下標(biāo)操作矩陣下標(biāo)(按列優(yōu)先排列)用兩個(gè)下標(biāo)來(lái)表示。第i行j列的元素用A(i,j)來(lái)表示用一個(gè)下標(biāo)來(lái)表示。對(duì)于矩陣按列操作,可用單下標(biāo)引用A(i)。在下標(biāo)的表達(dá)式中使用冒號(hào)表示矩陣的一部分。下標(biāo)引用從序號(hào)1開(kāi)始?,F(xiàn)在是22頁(yè)\一共有81頁(yè)\編輯于星期一下標(biāo)操作A=123456789>>A(4)+A(8)現(xiàn)在是23頁(yè)\一共有81頁(yè)\編輯于星期一行列刪除>>B=[123;456;789];>>B(2,:)=[]>>B=123789現(xiàn)在是24頁(yè)\一共有81頁(yè)\編輯于星期一矩陣的尺寸為了判斷矩陣的尺寸,Matlab提供了以下函數(shù):[m,n]=size(A) %返回矩陣的行數(shù)m和列數(shù)nM=size(A) %在矩陣M中返回矩陣的行數(shù)、列數(shù)
len=length(A) %返回矩陣A行數(shù)和列數(shù)中的最大值
現(xiàn)在是25頁(yè)\一共有81頁(yè)\編輯于星期一特殊矩陣單位矩陣
eye(n)
%生成n維單位陣
eye(m,n)
%生成m×n的單位陣
eye([m,n])%生成m×n的單位陣
eye(size(A))%生成與A矩陣同樣大小的單位矩陣
oneszeros
現(xiàn)在是26頁(yè)\一共有81頁(yè)\編輯于星期一特殊矩陣全1矩陣
ones(n)ones(m,n)ones([m,n]) ones(size(A))全零矩陣
zeros(n)zeros(m,n)zeros([m,n]) zeros(size(A))隨機(jī)矩陣
rand(n)rand(m,n)rand([m,n])rand(size(A))生成的隨機(jī)矩陣的各個(gè)元素值在0和1之間。對(duì)角陣diag(n)對(duì)角陣魔術(shù)矩陣
magic(n)魔術(shù)矩陣的所有行元素和、列元素和、對(duì)角線(xiàn)元素和均相等現(xiàn)在是27頁(yè)\一共有81頁(yè)\編輯于星期一陣列與矩陣MATLAB的運(yùn)算事實(shí)上是以陣列(array)及矩陣(matrix)方式在做運(yùn)算.陣列強(qiáng)調(diào)元素對(duì)元素的運(yùn)算,而矩陣則采用線(xiàn)性代數(shù)的運(yùn)算方式.
宣告一變量為陣列或是矩陣時(shí),須用中括號(hào)[]
將元素置于其中。陣列為一維元素所構(gòu)成,而矩陣為多維元素所組成.
例如:?x=[12345678];%
一維1x8陣列
【例】簡(jiǎn)單矩陣的輸入步驟。(1)在鍵盤(pán)上輸入下列內(nèi)容:(以;區(qū)隔各列的元素)
A=[1,2,3;4,5,6;7,8,9]
(2)按【Enter】鍵,指令被執(zhí)行。(3)在指令執(zhí)行后,MATLAB指令窗中將顯示以下結(jié)果:
A=123456789現(xiàn)在是28頁(yè)\一共有81頁(yè)\編輯于星期一陣列的運(yùn)算符號(hào)
除了加減符號(hào)外其余的陣列運(yùn)算符號(hào)均須多加.符號(hào)。陣列運(yùn)算功能(注意:一定要多加.符號(hào))+加-減.*乘./左除.\右除.^次方.’
轉(zhuǎn)置矩陣的幾種基本變換操作(1)
通過(guò)在矩陣變量后加’的方法來(lái)表示轉(zhuǎn)置運(yùn)算
>>a=[10,2,12;34,2,4;98,34,6];>>a'ans=10349822341246現(xiàn)在是29頁(yè)\一共有81頁(yè)\編輯于星期一(2)
矩陣求逆>>inv(a)ans=-0.01160.0372-0.00150.0176-0.10470.03450.0901-0.0135-0.0045(3)
矩陣的特征值>>[u,v]=eig(a)u=-0.29600.3635-0.3600-0.2925-0.41280.7886-0.9093-0.83520.4985v=48.8395000-19.8451000-10.9943現(xiàn)在是30頁(yè)\一共有81頁(yè)\編輯于星期一(4)
取出上三角和下三角
>>triu(a)ans=10212024006>>tril(a)ans=1000342098346(5)LU分解
>>[l,u]=lu(a)l=0.10200.15001.00000.34691.000001.000000u=98.000034.00006.00000-9.79591.91840011.1000現(xiàn)在是31頁(yè)\一共有81頁(yè)\編輯于星期一MatLab圖形繪制功能基本繪圖函數(shù)命令含義plot建立向量或矩陣各隊(duì)隊(duì)向量的圖形loglogx、y軸都取對(duì)數(shù)標(biāo)度建立圖形semilogxx軸用于對(duì)數(shù)標(biāo)度,y軸線(xiàn)性標(biāo)度繪制圖形semilogyy軸用于對(duì)數(shù)標(biāo)度,x軸線(xiàn)性標(biāo)度繪制圖形title給圖形加標(biāo)題xlabel給x軸加標(biāo)記ylabel給y軸加標(biāo)記text在圖形指定的位置上加文本字符串gtext在鼠標(biāo)的位置上加文本字符串grid打開(kāi)網(wǎng)格線(xiàn)現(xiàn)在是32頁(yè)\一共有81頁(yè)\編輯于星期一x=0:0.001:10;%0到10的1000個(gè)點(diǎn)的x座標(biāo)
y=sin(x);%對(duì)應(yīng)的y座標(biāo)
plot(x,y);%繪圖(可以設(shè)定顯示范圍)現(xiàn)在是33頁(yè)\一共有81頁(yè)\編輯于星期一畫(huà)橢圓
a=0:pi/50:2*pi; X=cos(a)*3;
%參數(shù)方程Y=sin(a)*2;plot(X,Y);xlabel('x'),ylabel('y');title('橢圓')現(xiàn)在是34頁(yè)\一共有81頁(yè)\編輯于星期一線(xiàn)條和顏色控制符:.點(diǎn)y黃。小圓圈m棕色xx標(biāo)記c青色+加號(hào)r紅色-實(shí)線(xiàn)g綠色*星號(hào)b藍(lán)色:虛線(xiàn)w白色-.點(diǎn)劃線(xiàn)h黑色現(xiàn)在是35頁(yè)\一共有81頁(yè)\編輯于星期一條形圖當(dāng)資料點(diǎn)數(shù)量不多時(shí),長(zhǎng)條圖是很適合的表示方式:closeall;%關(guān)閉所有的圖形視窗x=1:10;y=rand(size(x));bar(x,y)現(xiàn)在是36頁(yè)\一共有81頁(yè)\編輯于星期一誤差圖x=linspace(0,2*pi,30);y=sin(x);e=std(y)*ones(size(x));%std:標(biāo)準(zhǔn)差errorbar(x,y,e)現(xiàn)在是37頁(yè)\一共有81頁(yè)\編輯于星期一極坐標(biāo)圖形theta=linspace(0,2*pi);r=cos(4*theta);polar(theta,r);現(xiàn)在是38頁(yè)\一共有81頁(yè)\編輯于星期一x=linspace(0,10,50);y=sin(x).*exp(-x/3);stairs(x,y);%階梯圖x=linspace(0,10,50);y=sin(x).*exp(-x/3);stem(x,y);%針狀圖現(xiàn)在是39頁(yè)\一共有81頁(yè)\編輯于星期一符號(hào)表達(dá)式畫(huà)圖在許多的場(chǎng)合,將表達(dá)式可視化是有利的。MATLAB提供了函數(shù)ezplot來(lái)完成該任務(wù)。>>y='16*x^2+64*x+96'y= 16*x^2+64*x+96>>ezplot(y)現(xiàn)在是40頁(yè)\一共有81頁(yè)\編輯于星期一三維曲線(xiàn)和曲面
1.空間曲線(xiàn)繪制函數(shù)plot3()格式一:plot3(x,y,z)功能:若x、y、z為相同長(zhǎng)度的向量,則根據(jù)向量x、y、z繪制空間三維曲線(xiàn)。如果x、y、z為同階矩陣,則繪制對(duì)應(yīng)列的多條曲線(xiàn)。格式二:plot3(x,y,z,’s’)功能:按字符串s設(shè)置的線(xiàn)型、顏色、標(biāo)記符號(hào)繪制三維空間曲線(xiàn)。字符串s的設(shè)置與plot命令的設(shè)置相同。
2.三維網(wǎng)線(xiàn)圖函數(shù)mesh、meshc和meshzMATAL提供的函數(shù)mesh用來(lái)繪制三維網(wǎng)線(xiàn)圖。格式一:mesh(X,Y,Z)
功能:根據(jù)矩陣X、Y和Z繪制彩色的空間三維網(wǎng)線(xiàn)圖。X、Y和Z中對(duì)應(yīng)的元素為三維 空間上的點(diǎn),點(diǎn)與點(diǎn)之間用線(xiàn)連接。其中網(wǎng)線(xiàn)的顏色隨著網(wǎng)點(diǎn)高度的改變而改 變。格式二:mesh(x,y,Z)
功能:n維向量x、m維向量y和m×n矩陣Z繪制網(wǎng)線(xiàn)圖,節(jié)點(diǎn)的坐標(biāo)為 (x(j),y(i),Z(i,j)),網(wǎng)線(xiàn)的顏色隨著網(wǎng)點(diǎn)高度的改變而改變?,F(xiàn)在是41頁(yè)\一共有81頁(yè)\編輯于星期一三維曲面圖函數(shù)surf及surfc
格式一:surf(X,Y,Z,C)功能:繪制由四個(gè)矩陣所指定的帶色參數(shù)的網(wǎng)狀表面圖。視角是由view所指定。軸的刻度決定于X,Y及Z的范圍,或當(dāng)前對(duì)軸的設(shè)定;顏色范圍由C指定。格式二:surf(X,Y,Z)功能:將C設(shè)為與Z相等,則顏色與網(wǎng)的高度成正比?,F(xiàn)在是42頁(yè)\一共有81頁(yè)\編輯于星期一三維螺旋線(xiàn)t=0:pi/50:10*pi;plot3(sin(t),cos(t),t)grid現(xiàn)在是43頁(yè)\一共有81頁(yè)\編輯于星期一空間中的曲線(xiàn)t=linspace(0,20*pi,501);plot3(t.*sin(t),t.*cos(t),t);%注意用點(diǎn)乘.*t=linspace(0,10*pi,501);plot3(t.*sin(t),t.*cos(t),t,t.*sin(t),t.*cos(t),-t);現(xiàn)在是44頁(yè)\一共有81頁(yè)\編輯于星期一立體網(wǎng)狀圖x=linspace(-2,2,25);%在x軸上取25點(diǎn)y=linspace(-2,2,25);%在y軸上取25點(diǎn)[xx,yy]=meshgrid(x,y);%xx和yy都是21x21的矩陣zz=xx.*exp(-xx.^2-yy.^2);%計(jì)算函數(shù)值,zz也是21x21的矩陣mesh(xx,yy,zz);%畫(huà)出立體網(wǎng)狀圖
現(xiàn)在是45頁(yè)\一共有81頁(yè)\編輯于星期一網(wǎng)狀圖填補(bǔ)x=linspace(-2,2,25);%在x軸上取25點(diǎn)y=linspace(-2,2,25);%在y軸上取25點(diǎn)[xx,yy]=meshgrid(x,y);%xx和yy都是21x21的矩陣zz=xx.*exp(-xx.^2-yy.^2);%計(jì)算函數(shù)值,zz也是21x21的 矩陣surf(xx,yy,zz);%畫(huà)出立體曲面圖現(xiàn)在是46頁(yè)\一共有81頁(yè)\編輯于星期一peaks函數(shù)peaks函數(shù),可產(chǎn)生一個(gè)凹凸有致的曲面,包含了三個(gè)局部極大點(diǎn)及三個(gè)局部極小點(diǎn),其方程式為:[x,y,z]=peaks;waterfall(x,y,z);現(xiàn)在是47頁(yè)\一共有81頁(yè)\編輯于星期一等高線(xiàn)圖meshc同時(shí)畫(huà)出網(wǎng)狀圖與等高線(xiàn):[x,y,z]=peaks;meshc(x,y,z);surfc同時(shí)畫(huà)出曲面圖與等高線(xiàn):[x,y,z]=peaks;surfc(x,y,z);現(xiàn)在是48頁(yè)\一共有81頁(yè)\編輯于星期一剔透玲瓏球[X0,Y0,Z0]=sphere(30);%產(chǎn)生單位球面的三維坐標(biāo)X=2*X0;Y=2*Y0;Z=2*Z0;%產(chǎn)生半徑為2的球面的三維坐標(biāo)surf(X0,Y0,Z0);%畫(huà)單位球面shadinginterp%采用插補(bǔ)明暗處理holdon;mesh(X,Y,Z);holdoff%畫(huà)外球面hiddenoff%產(chǎn)生透視效果axisoff%不顯示坐標(biāo)軸現(xiàn)在是49頁(yè)\一共有81頁(yè)\編輯于星期一彗星狀軌跡圖
【*例】簡(jiǎn)單二維示例。(請(qǐng)指令窗中運(yùn)行以下指令)n=10;t=n*pi*(0:0.0005:1);x=sin(t);y=cos(t);plot(x,y,'g');holdon;comet(x,y,0.02);holdoff現(xiàn)在是50頁(yè)\一共有81頁(yè)\編輯于星期一衛(wèi)星返回地球的運(yùn)動(dòng)軌線(xiàn)示意R0=1; %以地球半徑為一個(gè)單位a=12*R0;b=9*R0;T0=2*pi; %T0是軌道周期T=5*T0;dt=pi/100;t=[0:dt:T]';f=sqrt(a^2-b^2); %地球與另一焦點(diǎn)的距離th=12.5*pi/180; %衛(wèi)星軌道與x-y平面的傾角E=exp(-t/20); %軌道收縮率
x=E.*(a*cos(t)-f);y=E.*(b*cos(th)*sin(t));z=E.*(b*sin(th)*sin(t));plot3(x,y,z,'g') %畫(huà)全程軌線(xiàn)[X,Y,Z]=sphere(30);X=R0*X;Y=R0*Y;Z=R0*Z;%獲得單位球坐標(biāo)gridon,holdon,surf(X,Y,Z),shadinginterp %畫(huà)地球x1=-18*R0;x2=6*R0;y1=-12*R0;y2=12*R0;z1=-6*R0;z2=6*R0;axis([x1x2y1y2z1z2]) %確定坐標(biāo)范圍view([11737]),comet3(x,y,z,0.02),holdoff %設(shè)視角、畫(huà)運(yùn)動(dòng)軌線(xiàn)
現(xiàn)在是51頁(yè)\一共有81頁(yè)\編輯于星期一求解線(xiàn)性方程組MATLAB語(yǔ)句實(shí)現(xiàn):
a=[2,3,-1;8,2,3;45,3,9];
b=[2;4;23];
x=inv(a)*b現(xiàn)在是52頁(yè)\一共有81頁(yè)\編輯于星期一求多項(xiàng)式方程的根roots(p)solve(p)例.求方程的所有根
p=[1-49-10]r=roots(p)
或s1=sym('x^3-4*x^2+9*x-10');solve(s1)現(xiàn)在是53頁(yè)\一共有81頁(yè)\編輯于星期一求方程組的根和超越方程解[x,y]=solve('x+y=1','x-11*y=5','x','y')求超越方程的根,其中p,r為常數(shù)ff=sym('p*sin(x)=r')solve(ff,'x')現(xiàn)在是54頁(yè)\一共有81頁(yè)\編輯于星期一求極限symsx;y1=(1+4*x)^(1/x);y2=(exp(x)-1)/x;limit(y1,x,0)limit(y2,x,0)現(xiàn)在是55頁(yè)\一共有81頁(yè)\編輯于星期一求導(dǎo)數(shù)與偏導(dǎo)數(shù)
symsx;f=3*x^3+5*x+1;diff(f,1)
symsxy;%對(duì)x偏導(dǎo)數(shù)
z=x^2*sin(2*y);B=diff(z,x)現(xiàn)在是56頁(yè)\一共有81頁(yè)\編輯于星期一求解不定積分symsxb;f=cos(b*x);f1=int(f,x)f1=1/b*sin(b*x)ezplot(f1)現(xiàn)在是57頁(yè)\一共有81頁(yè)\編輯于星期一求定積分多重積分
symsx;y=(x^2+sin(x))/(1+x^2);int(y,x,-1,1)
symsxy;int(int(x^2+y^2+1,y,x,x+1),x,0,1)現(xiàn)在是58頁(yè)\一共有81頁(yè)\編輯于星期一求微分方程通解和特解dsolve('Dy=1+y^2','x')dsolve('Dy=1+y^2','y(0)=1','x')dsolve('x^2*D2y+x*Dy+(x^2-1/2)*y=0','y(pi/2)=2','Dy(pi/2)=-2/pi','x')現(xiàn)在是59頁(yè)\一共有81頁(yè)\編輯于星期一MATLAB語(yǔ)言編程介紹MATLAB中各種命令可以完成許多單一的任務(wù),對(duì)于某些較為復(fù)雜的問(wèn)題,僅靠現(xiàn)有的命令或函數(shù)來(lái)解決,往往是難以達(dá)到目的。為此,要運(yùn)用MATLAB編程語(yǔ)言編制程序,形成M-文件。程序是使計(jì)算機(jī)完成各項(xiàng)運(yùn)算的命令集,運(yùn)行一個(gè)編制好的程序,計(jì)算機(jī)會(huì)從第一條命令行開(kāi)始,一行接一行地執(zhí)行相應(yīng)的命令,直到終止。程序一般包含:數(shù)據(jù)輸入,數(shù)據(jù)處理和結(jié)果輸出三部分,其中數(shù)據(jù)處理是核心。程序編寫(xiě)調(diào)試完成后,需要存盤(pán),形成永久性文件,可以隨時(shí)對(duì)它進(jìn)行調(diào)用或修改。文件名以字母開(kāi)頭,但不能用專(zhuān)用變量名,如pi等。MATLAB中每一個(gè)命令都是一個(gè)M-文件。現(xiàn)在是60頁(yè)\一共有81頁(yè)\編輯于星期一MATLAB程序類(lèi)型腳本文件函數(shù)文件functiony=mean(x)%MEANAverageormeanValue%Forvectors,Mean(x)isthemeanvalueofX%Formatrices,Mean(x)isarowvectorcontaining%themeanvalueofeachcolumn[m,n]=size(x)ifm==1m=n;endy=sum(x)/m;函數(shù)定義行H1行函數(shù)幫助文件函數(shù)體現(xiàn)在是61頁(yè)\一共有81頁(yè)\編輯于星期一M-文件中輸入、輸出命令
直接賦值輸入:提示對(duì)話(huà)輸入(input命令)x=2;x=input('請(qǐng)輸入?yún)?shù)x=');a=[1,2;3,4];a=input('請(qǐng)輸入矩陣a=');s='anystring!';s=input('Pleaseinputs=');
直接輸出:格式控制輸出(fprintf命令)xfprintf('x=%.0f,y=%.5f\n',pi,pi);disp([a,b]);fprintf('x=%5g,y=%10.5g\n',N,pi);現(xiàn)在是62頁(yè)\一共有81頁(yè)\編輯于星期一M-文件中循環(huán)控制命令(for命令)格式:fori=n1:(step):n2 commands;end作用:重復(fù)執(zhí)行命令集commands.現(xiàn)在是63頁(yè)\一共有81頁(yè)\編輯于星期一例2:求奇數(shù)和:s=1+3+5+…+(2k-1)n=input('請(qǐng)輸入n='); s=0;fori=1:2:n s=s+i;fprintf('i=%.0f,s=%.0f\n',i,s);end例1:求和:s=1+2+…+nn=input('請(qǐng)輸入n='); s=0;fori=1:n s=s+i;fprintf('i=%.0f,s=%.0f\n',i,s);end現(xiàn)在是64頁(yè)\一共有81頁(yè)\編輯于星期一例3:求階乘:p=1×2×3×…×n=n!n=input('請(qǐng)輸入n='); p=1;fori=1:n p=p*i;fprintf('i=%.0f,p=%.0f\n',i,p);end例4:求e:e=1+1+1/2!+1/3!+…+1/n!n=input('請(qǐng)輸入n='); p=1;e=1;fori=1:n p=p*i;p1=1/p;e=e+p1;fprintf('i=%.0f,p=%.0f,e=%.8f\n',i,p,e);end現(xiàn)在是65頁(yè)\一共有81頁(yè)\編輯于星期一例5:求pi:pi/4=1-1/3+1/5-1/7+1/9-1/11+……n=input('請(qǐng)輸入n='); pi=0;k=-1;fori=1:2:n k=(-1)*k;pi=pi+k*1/i;fprintf('i=%.0f,pi=%.8f\n',i,4*pi);end現(xiàn)在是66頁(yè)\一共有81頁(yè)\編輯于星期一M-文件中條件循環(huán)命令(while命令)格式:while(conditionistrue) commands;end作用:重復(fù)執(zhí)行命令集commands.現(xiàn)在是67頁(yè)\一共有81頁(yè)\編輯于星期一例6:求和:s=1+2+…+n<3000 s=0;k=1;whiles<3000 s=s+k;fprintf('k=%.0f,s=%.0f\n',k,s);k=k+1;end例7:求e:e=1+1+1/2!+1/3!+…(1/n!<1.0e-8) p=1;e=1;r=1;i=1;whiler>=1.0e-8 p=p*i;r=1/p;e=e+r;fprintf('i=%.0f,r=%.9f,e=%.9f\n',i,r,e);i=i+1;end現(xiàn)在是68頁(yè)\一共有81頁(yè)\編輯于星期一M-文件中選擇控制命令(if命令)單項(xiàng)選擇控制格式:if(conditionistrue) commands;end作用:若條件成立,則執(zhí)行命令集
commands.否則,不執(zhí)行。現(xiàn)在是69頁(yè)\一共有81頁(yè)\編輯于星期一例8:求n個(gè)實(shí)數(shù)中最大的數(shù)M.a=input('請(qǐng)輸入數(shù)組a[n]=');[m,n]=size(a);M=a(1); fori=2:n ifM<a(i)M=a(i);endfprintf('M=%.5f,a(%.0f)=%.5f\n',M,i,a(i));end現(xiàn)在是70頁(yè)\一共有81頁(yè)\編輯于星期一M-文件中選擇控制命令(if命令)多項(xiàng)選擇控制格式:if(conditionistrue) commands;elseif(conditionistrue)commands;elsecommands;end作用:若條件成立,則執(zhí)行命令集
commands.否則,不執(zhí)行?,F(xiàn)在是71頁(yè)\一共有81頁(yè)\編輯于星期一例9:建立符號(hào)函數(shù)sign(x)x=input('x=');ifx>0sn=1;elseifx==0sn=0;elsesn=-1;endfprintf('x=%.5f,sn=%.0f\n',x,sn);現(xiàn)在是72頁(yè)\一共有81頁(yè)\編輯于星期一Matlab編程(續(xù))程序設(shè)計(jì)技術(shù)循環(huán)向量化計(jì)算模式目的:向量計(jì)算替代循環(huán)模式實(shí)例:i初始化
ticticfort=0:0.01:100t=0.0:0.01:100
i=i+1;y(i)=sin(t)y=sin(t)e
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度養(yǎng)老服務(wù)雇工協(xié)議
- 2025年度試用期員工勞動(dòng)合同簽訂及管理協(xié)議
- 2025年度物聯(lián)網(wǎng)解決方案公司合作成立協(xié)議
- 2025年度租賃公寓正規(guī)協(xié)議書(shū)模板及租賃期限約定
- 二零二五年度企業(yè)員工聘用合同協(xié)議書(shū)(遠(yuǎn)程辦公)
- 二零二五年度旅游酒店房間清潔服務(wù)合同
- 2025年度餐飲企業(yè)供應(yīng)鏈管理服務(wù)合同
- 二零二五年度租賃房屋環(huán)保節(jié)能改造合同
- 二零二五年度木門(mén)研發(fā)與市場(chǎng)推廣合作協(xié)議
- 2025年度生態(tài)農(nóng)業(yè)園承包方與包工頭合作管理協(xié)議
- 2016-2023年濟(jì)南工程職業(yè)技術(shù)學(xué)院高職單招(英語(yǔ)/數(shù)學(xué)/語(yǔ)文)筆試歷年參考題庫(kù)含答案解析
- 浙江省煙草專(zhuān)賣(mài)局(公司)管理類(lèi)崗位招聘筆試真題2023
- 2024年全國(guó)高中生物聯(lián)賽競(jìng)賽試題和答案
- 臺(tái)州模具行業(yè)現(xiàn)狀分析
- 小學(xué)數(shù)學(xué)(含奧數(shù))數(shù)圖形個(gè)數(shù)和找規(guī)律、簡(jiǎn)便運(yùn)算專(zhuān)項(xiàng)及練習(xí)題附答案
- 過(guò)敏性鼻炎中醫(yī)治療
- 傷寒論條文(全398條)
- Android Studio開(kāi)發(fā)實(shí)戰(zhàn)(從零基礎(chǔ)到App上線(xiàn))
- 財(cái)務(wù)指標(biāo)簡(jiǎn)易操作計(jì)算器-小白版
- 數(shù)獨(dú)六宮格練習(xí)題
- 《自動(dòng)升降跳高架》課件
評(píng)論
0/150
提交評(píng)論