版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
MATLAB與科學(xué)計(jì)算
多媒體網(wǎng)絡(luò)教室方案示意圖
、兒、▲
,、刖百
?MATLAB:matrixlaboratory的縮寫(xiě),
矩陣實(shí)驗(yàn)室的意思。一開(kāi)始它是一種
專門(mén)用于矩陣數(shù)值計(jì)算的軟件。自
MATLAB4.0版本問(wèn)世以來(lái),該軟件成
為最具有吸引力,應(yīng)用最為廣泛的科
學(xué)計(jì)算語(yǔ)言。我們這個(gè)課就拿
MATLAB6.1版本來(lái)講。(6.x版本大
同小異)
?學(xué)習(xí)該軟件的必要性:目前,
MATLAB軟件不僅走入企業(yè)、公
司和科研機(jī)構(gòu),而且在高等院校
也是從大學(xué)生到博士生都必須掌
握的一項(xiàng)基本技能,是必不可少
的計(jì)算工具,。
?MATLAB功能:數(shù)值計(jì)算、符號(hào)
運(yùn)算和圖形處理。
?學(xué)習(xí)它的意義:隨著計(jì)算機(jī)科學(xué)
和計(jì)算軟件的發(fā)展,數(shù)學(xué)系學(xué)生
必須掌握一門(mén)好的計(jì)算軟件。這
是我們就業(yè)、繼續(xù)身造或做科研
工作所要用到的。是當(dāng)代大學(xué)生
必備的一項(xiàng)技能。
?其它計(jì)算軟件:MATHEMATIC
(數(shù)學(xué)分析問(wèn)題的計(jì)算);IDL
(航天、控制),F(xiàn)OETRAN、
BASIC(科學(xué)計(jì)算)??梢哉f(shuō)一
個(gè)人掌握了一門(mén)計(jì)算軟件,再學(xué)
習(xí)其它計(jì)算軟件很容易。
?MATLAB桌面平臺(tái):
(1)主窗口:整個(gè)大的窗口(其它
幾個(gè)窗口都包括在其中)
(2)命令窗口(command
window):》為運(yùn)算提示符,表
示MATLAB在準(zhǔn)備狀態(tài)。當(dāng)在提示
符后輸入一段運(yùn)算式并按回車鍵
后,就給出計(jì)算結(jié)果
(3)歷史窗口(commandhistory):
保留命令歷史記錄,這方便于使
用者查詢。雙擊歷史窗口中的某
一行命令,即可在命令窗口中執(zhí)
行該命令。
(4)當(dāng)前目錄窗口(current
directory):在當(dāng)前目錄窗口中
可顯示或改變當(dāng)前目錄,也可以
顯示當(dāng)前目錄下的文件,并提供
搜索功能。
(5)發(fā)行說(shuō)明書(shū)窗口(launchpad):
用來(lái)鋪明用戶所擁有的Mathworks
公司產(chǎn)品的工具包、演示以及幫助
信息。
(6)工作間管理窗口
(workspace):顯示目前內(nèi)存中所
有的MATLAB變量的變量名、數(shù)學(xué)結(jié)
構(gòu)、字節(jié)數(shù)及其類型。
?命令窗口查詢幫助:help+函數(shù)名,
當(dāng)用戶知道函數(shù)名字,而不知道
其用法時(shí),用help命令可以去了
解此函數(shù)的用法。
如:helpinv
?MATLAB標(biāo)點(diǎn)的含義:
(1)分號(hào);……區(qū)分行以及取消
運(yùn)行顯示等。例:
A=[l,2,3,4]與A=[1,2;3,4];
的區(qū)別。
(2)逗號(hào),……區(qū)分列及函數(shù)參
數(shù)分隔符等。例:二[1,2;3,4],
B=[l,4,3;3,2,1;4,5,6]
⑶小括號(hào)():指定運(yùn)算過(guò)程的
先后次序等。例:
x=0.5;
y=sin(x)/(2+cos(x))
z=sin(x)/2+cos(x)
(4)方括號(hào)[]:矩陣定義標(biāo)志等。
見(jiàn)上。
(5)續(xù)行號(hào)…:例:
y=sin(x)/(2+cos(x))
也可寫(xiě)為
y=sin(x)...
/(2+cos(x))
(6)百分號(hào)%:注釋標(biāo)記,該行%以
后的語(yǔ)句不執(zhí)行。例
%線性規(guī)劃程序
%a=0.5;
b二sin(x);%正弦函數(shù)
(6)等號(hào)=:賦值標(biāo)記。見(jiàn)上。
(7)單引號(hào)'':字符串表示
符,單引號(hào)里面的內(nèi)容為字符串。
單引號(hào)一定在英文狀態(tài)下輸入例:
a=lxingtaicollege1
(8)冒號(hào),':有多種應(yīng)用功
能,學(xué)習(xí)過(guò)程中注意。如:選取
矩陣的所有行、歹!J;矩陣定義
二、數(shù)值計(jì)算
變量:MATLAB語(yǔ)言不需要對(duì)所使用
的變量進(jìn)行事先聲明,也不需要指定其
類型,它會(huì)首動(dòng)根據(jù)所賦予變量的值或
卷翻藕鬣r2無(wú)量Z的類劃型。如,果
代替舊值。如:
a=1
b=0.5
c=a*b
c=3
?變量命名的規(guī)則:
(1)變量名區(qū)分大小寫(xiě);
(2)變量名長(zhǎng)度不能超過(guò)31位;
(3)必須以字母開(kāi)頭,變量名中
可包含字母、數(shù)字、下劃線,但
不能使用標(biāo)點(diǎn)。
?常量:MATLAB中有些預(yù)定義的
變量,這些特殊的變量稱為常量。
常用到的有:
i,j:虛數(shù)單位;
pi:IT;
NaN:表示不定值,比如0/0;
inf:無(wú)窮大(infinit),比如
1/0o
?算術(shù)操作符:
加,減;可以通用。
*,A,\,/:分別為矩陣乘,乘
方,左除,右除;
分別為數(shù)組乘,
乘方,左除,右除;此時(shí)向量的
運(yùn)算不會(huì)滿足矩陣的運(yùn)算法則。
注意矩陣的加點(diǎn)運(yùn)算結(jié)果。
如:
a1=2;
a2=[1,2,3,4];
b2=[4,3,2,1];
a1+a2
a1-a2
a2-a1
a1*a2
a1./a2%a1/a2是錯(cuò)誤的寫(xiě)法
a1.\a2
a2-b2
a2+b2
a2.*b2%a2*b2是錯(cuò)誤的寫(xiě)法
a2./b2
b2./a2
a2.\b2
例已知水的黏度隨溫度的變化公式
2
為p=p0Z(1+at+bt)其中
p0=1.785X103,
a=0.03368,b=0.000221,
求水在0,20,40,求水時(shí)的黏度。
程序如下:
miu0=1.785e-3;
a=0.03368;
b=0.000221;
t=0:20:80
miu=miuO./(1+a*t+b*t.A2)
運(yùn)行后的結(jié)果為:
miu=
0.00180.00100.00070.00050.0003
?字符串:
字符串的約定(1)字符串用單引
號(hào)括起來(lái);(2)字符串的每個(gè)
每個(gè)字符(包括空格)都是字符
數(shù)組的一個(gè)元素.
例s="xingtaicollege9
f=^sin(x),
是字符串(chararray)
?向量的生成:
(1)直接輸入:如a=[1,2,5,3]
(2)利用冒號(hào)表達(dá)式生成:如:
b=[2:2:10],此時(shí)[]可省略,步長(zhǎng)
為1時(shí),步長(zhǎng)可省略。第一個(gè)數(shù)為
首元素的值,第2個(gè)數(shù)為步長(zhǎng)或差
值,第三個(gè)數(shù)為尾元素的限值,不
能超過(guò)這個(gè)值。如b=2;2:11等價(jià)
于b=[2:2:10]
(3)線性等份向量生成:
y=linspace(x1,x2,n),生成n維向
量,使得y(1)=x1,y(n)=x2。如:
y=linspace(1,100,6)o
?向量的基本運(yùn)算
(1)向量的加減:用+、?。同維向
量才可以加、減。相應(yīng)元素加減
(2)向量與數(shù)可以加、減。用+、
-o數(shù)與向量的每個(gè)元素進(jìn)行作用。
(3)向量與數(shù)可以相乘。用*。
(4)向量與數(shù)可以相除。向量/數(shù),
數(shù)./向量。
(5)兩個(gè)向量點(diǎn)積。必須是同維
向量。用dot(a,b)。
(6)兩個(gè)向量叉積。
cross(a,b),a,b必須有是3維且次
序不能顛倒,。
(7)混合積。由以上兩個(gè)函數(shù)實(shí)現(xiàn)。
dot(a,cross(b,c))
?矩陣的生成:
(1)直接輸入:如:a=[1,3,4;4,3,2],
(2)創(chuàng)建M文件輸入大矩陣:當(dāng)矩陣
很大時(shí),直接輸入顯得很笨,出錯(cuò)
不易修改.我們可以編寫(xiě)一個(gè)M文
件,M文件的擴(kuò)展名必須是m.
例編寫(xiě)一個(gè)名為111@1;"*.111(名字
自己隨便起)的M文件如下:
%matrix.m
mat=[l,2,3,3;3,4,5,1;3,2,1,4;8
,9,7,5]
在命令窗口中輸入matrix,就
會(huì)運(yùn)行該文件.查看矩陣的結(jié)構(gòu)可
用size(mat).
?矩陣運(yùn)算:
(1)+、-、*:力口、減、乘運(yùn)算。
(2)矩陣的除法有兩種形式:左除
和右除.右除是先計(jì)算
逆再做乘法;而左除不計(jì)算逆直接
進(jìn)行除法運(yùn)算,這樣可避免奇異矩
陣無(wú)法求逆帶來(lái)的麻煩.
如:A=[l,2,3,2;3,2,
4,1;3,1,5,6;2,5,3,2],
b=[l;3;2;lL求方程組Ax二b的解.
由于rank(A)=rank(B)=4(B為增
廣矩陣),所以有唯一解,X二A\b,
或x=inv(A)*b?
?又如:
A=[361,625,961,1444,1936;1,1,1
,1,1],b=\求方程組Ax=b
的解.由于rank(A)=rank(B)=2(B為
增廣矩陣),所以有無(wú)窮多個(gè)
解,MATLAB中用除法解方程組時(shí)所
得到的解是所有解中范數(shù)最小的一
個(gè)x二A\bo
(3)矩陣與常數(shù)間的運(yùn)算:+、-、
*運(yùn)算是數(shù)與矩陣的每個(gè)元素進(jìn)行
運(yùn)算,除法運(yùn)算,只能常數(shù)做除
數(shù)。
(4)矩陣求逆:inv(A)為A的逆
(inverse).
(5)求轉(zhuǎn)置矩陣:A'.
(6)求矩陣的行列
式:det(A),(determinant是行
列式)。
(7)矩陣塞運(yùn)算:用二如N3,表示
A*A*A。
(8)矩陣指數(shù)運(yùn)算:expm(A),A為
方陣。
(9)矩陣對(duì)數(shù)運(yùn)算:logm(A),A為
方陣。
如:a=rand(3);%成生一個(gè)3階
隨機(jī)矩陣
b=expm(a)
c=logm(b)
(10)矩陣開(kāi)方:sqrtm(a).
(11)求矩陣呢的秩:rank(a).
?特殊矩陣的生成:
(1)zeros(n):生成nXn階0矩陣。
(2)zeros(m,n):生成0><11階0矩
陣。
(3)zeros(size(a)):生成與a階數(shù)
相同的0矩陣。
(4)eye(n):生成n階單位矩陣。
(5)eye(m,n):生成inXn階單位
矩陣。
(6)eye(size(a)):生成與@階數(shù)
相同的單位矩陣。
(7)ones(n):生成n階全1矩陣。
(8)ones(m,n):生成mXn階全1
矩陣。
(9)ones(size(a)):生成與a階數(shù)
相同的全1矩陣。
(10)rand(n):生成nXn階隨機(jī)矩
陣,其元素值在0和1之間。
(11)rand(m,n):生成mXn階隨機(jī)
矩陣。
(12)rand:生成一個(gè)隨機(jī)數(shù)。
(13)rand(size(a)):生成與a階
數(shù)相同的隨機(jī)矩陣。
?矩陣的特殊操作:
(1)變維操作reshape(a,m,n):把
矩陣a變成nXn階矩陣。如
a=l:12,reshape(a,2,6),
reshape(a,3,4)o注意安維操作
要保證元素個(gè)數(shù)一致。
例
s=l:12;
c=zeros(3,4);
c(:)=s(:);%符號(hào)“:”表示
變維操作,這兩個(gè)矩陣必須預(yù)先
定義維數(shù),結(jié)果c取的是S的元素。
(2)對(duì)角元素抽取diag(a,k)(注:
diagonal為對(duì)角線的意思):抽
取矩陣a的第k條對(duì)角線的元素作
為向量,k=0時(shí)為主對(duì)角線,k為
正值時(shí)為上方第k條對(duì)角線,k為
負(fù)值時(shí)為下方第k條對(duì)角線。
diag(a)相當(dāng)于diag(a,0).例
a=rand(3);v=diag(a)
說(shuō)明:如果b是一個(gè)向量,貝(Jdiag(b)
為對(duì)角矩陣,其對(duì)角線元素為b的
元素。如:b=l:3,diag(b).
(3)tril(a)(注:trianglelow):
提取矩a的主下三角。
(4)tril(a,k):提取矩a的第k條
對(duì)角線下面部分。k=0時(shí)為主對(duì)
角線,k為正值時(shí)為上方第k條對(duì)
角線,k為負(fù)值時(shí)為下方第k條對(duì)
角線。
(5)triu(a,k)(注:triangle
up):提取矩a的第k條對(duì)角線上面
部分。
?邏輯運(yùn)算符:
(1)==:等于。
(2)~二:不等于。
(3)<:小于。
(4)):大于。
(5)<=:小于等于。
(6)〉二:大于等于。
(7)&:邏輯與。
(8)|:邏輯或。
(9)1邏輯非。
說(shuō)明:
①在關(guān)系比較中,若雙方為同
維數(shù)組(矩陣),則比較的結(jié)果
也是同維數(shù)組(矩陣)。它們的
元素有0和1組成。對(duì)應(yīng)位置上的
元素滿足比較關(guān)系時(shí)為L(zhǎng)否則為
0o當(dāng)常數(shù)與數(shù)組(矩陣)比較時(shí),
結(jié)果與數(shù)組(矩陣)同維,其值
依次為常數(shù)與數(shù)組元素依次比較
的結(jié)果。例:
a=[l:3;4:6;7:9]
x=5
y=x<=a
運(yùn)行結(jié)果
y=
000
011
111
②邏輯運(yùn)算的意義是:
與:當(dāng)運(yùn)算雙方的對(duì)應(yīng)元素值
都為非。時(shí),結(jié)果為I,否則為0;
或:當(dāng)運(yùn)算雙方的對(duì)應(yīng)元素值
有一非0時(shí),結(jié)果為1,否則為0;
非:當(dāng)運(yùn)算數(shù)組(矩陣)的對(duì)
應(yīng)位置上的元素值為0時(shí),結(jié)果為
1,否則為0。例
a=[1,2;3,2];
b=[0,1;3,0];
d=a&b
e=a|b
f=~b
③算術(shù)運(yùn)算、比較運(yùn)算、邏輯與或
非運(yùn)算的優(yōu)先級(jí):先算術(shù)運(yùn)算、
再比較運(yùn)算、最后邏輯與或非運(yùn)
算。
?常用的一些函數(shù)(直接調(diào)用):
sin(x):正弦函數(shù)(sine);例:
x="pi:0.1:pi;y=sin(x);plot(x,y)
asin(x):反正弦函數(shù)(anti?sine);
cos(x):余弦函數(shù)(cosine);
acos(x):反余弦函數(shù)(anti-cosine);
tan(x):正切函數(shù)(tangent);
atan(x):反正切函數(shù)(anti-tangent);
cot(x):余切函數(shù)(cotangent);
acot(x):反余切函數(shù)(anti-
cotangent);
sec(x):正割函數(shù)(secant);
asec(x):反正割函數(shù)(anti-secant);
esc(x):余割函數(shù)(cosecant);
acsc(x):反余割函數(shù)(anti-
cosecant);
sinh(x):雙曲正弦(hyperbolicsine);
asinh(x):反雙曲正弦(anti-hyperbolic
sine);
cosh(x):雙曲余弦(hyperboliccosine);
acosh(x):反雙曲余弦(anti-
hyperboliccosine);
tanh(x):雙曲正切函數(shù)(hyperbolic
tangent);
atanh(x):反雙曲正切函數(shù)(anti-
hyperbolictangent);
coth(x):雙曲余切函數(shù)(hyperbolic
cotangent);
acoth(x):反雙曲余切函數(shù)(anti-
hyperboliccotangent);
exp(x):e指數(shù)函數(shù)(exponent);
log(x):自然對(duì)數(shù)函數(shù)(logarithm);
Iog10(x):以10為底的對(duì)數(shù);
Iog2(x):以2為底的對(duì)數(shù);
sqrt(x):平方根函數(shù)(squareroot);
abs(x):求模函數(shù)(absolute)
lnline(¥的表達(dá)式'):自定義函數(shù)。函數(shù)的自變量為函數(shù)中
出現(xiàn)的變量。自變量順序安字母表順序。
InlineCf的表達(dá)式','變量1','變量Z,'變量3,……):
與上面的區(qū)別是它安變量表的給出的順序規(guī)定函數(shù)的變量
順序。如:g=inline('sin(2*x*y+z)J),
表示:g(x,y,z)=sin(2*x*y+z)
g=inline('sin(2*x*y+z)-x-z'V)
表示:g(x,z,y)=sin(2*x*y+z);
g1(123)與g2(1,2,3)的意義不同o
factorial(n):求n的階乘。
?多項(xiàng)式表示方法:
在MATLAB中多項(xiàng)式
P(X)=anXn+an.iXn」+…+a0是以向量
p=[an田用…,a。]的形式福存的.
(1)系數(shù)向量直接輸入:例輸入多項(xiàng)式
xA3-5xA2+6x-33.
p=[1,-5,6,-33];
poly2sym(p)%polynomial多項(xiàng)
式,將系數(shù)向量表示成符號(hào)多項(xiàng)式
⑵矩陣的特征多項(xiàng)式輸入:例
a=[l,2,3;2,3,4;3,4,5];
p=poly(a);%求@的特征多項(xiàng)式系數(shù)
向量
pl=poly2sym(p);%即為a的特征多
項(xiàng)式
(3)由根創(chuàng)建多項(xiàng)式:例
root=[-5,?3+4i廣3?4i];%是某個(gè)多
項(xiàng)式的根
p=poly(root)%求相應(yīng)的多項(xiàng)式
的系數(shù)向量
P1=poly2sym(p)%將多項(xiàng)式系數(shù)
向量表示成符號(hào)多項(xiàng)式
?多項(xiàng)式運(yùn)算:
⑴求多項(xiàng)式的值:例
p=[1,11,55,125];
a=1.2
b=[1,2;2,3]
polyval(p,a)%polynomialvalue
求多項(xiàng)式在1.2的值
polyvalm(p,b)%多項(xiàng)式在b的值
⑵求多項(xiàng)式的根:例求多項(xiàng)式
2xF-5x-3+6x人2-x+9=0的所有根.
P=[2,-5,6,-1,9]
roots(p)%得到多項(xiàng)式的根
(3)factor:因式分解。例
symsx
factor(x"9-1)
結(jié)果:ans=(x-1)*(xA2+x+1)*(xA6+xA3+1)
factor(symC10(F))%把整數(shù)100進(jìn)
行素?cái)?shù)分解.結(jié)果:(2)八2*(5)八2
(4)expand(s):多項(xiàng)式展開(kāi),s可為多
項(xiàng)式、多項(xiàng)式向量和矩陣。例
expand(sym(l(x+l)A31))
結(jié)果:ans=xA3+3*xA2+3*x+l
expand(sym('sin(x+y)'))
結(jié)果:ans=sin(x)*cos(y)+cos(x)*sin(y)
(5)collect(s):對(duì)默認(rèn)的變量合并同
類項(xiàng)。
co11ect(s,v):對(duì)變量v合并同類
項(xiàng)。
S可為符號(hào)多項(xiàng)式、多項(xiàng)式向量和矩陣
例
collect(sym(lxA2*y+y*x-xA2-2*y*x,))
collect(sym(,xA2*y+y*x-xA2-2*y*x,)/x,)
collect(sym(,xA2*y+y*x-xA2-2*y*x,)/y5)
(6)simple(s):符號(hào)表達(dá)式簡(jiǎn)化,s可為
符號(hào)多項(xiàng)式、多項(xiàng)式向量和矩陣。
例
f=simple(sym(Tsin(x)A2+cos(x)A21))
結(jié)果:f=l
g=simple(sym(,xA3+3*xA2+3*x+l,))
結(jié)果:g=(x+l)A3
⑺多項(xiàng)式乘除運(yùn)算分別用conv和
deconv:
(convolution,deconvolution)
例
p1=[2,-5,6,-1,9];
p2=[3,-90,18];
p=conv(p1,p2)%為p1和p2所相應(yīng)
的多項(xiàng)式的乘積多項(xiàng)式的系數(shù)向量
p3=deconv(p,pl)%為p2
p4=deconv(p,p2)%為「1
poly2sym(pl);
poly2sym(p2);
poly2sym(p)
poly2sym(p3)
poly2sym(p4)%觀看這幾個(gè)多項(xiàng)
polyfit(x,y,n)其中x,y為擬合數(shù)
據(jù),n為擬合多項(xiàng)式的階數(shù)。例
用最小二乘法擬合數(shù)據(jù)
X:0.501.001.502.002.503.00
y:1.752.453.814.808.008.60
x=[0.5,1,1.5,2,2.5,3]
y=[l.75,2.45,3.81,4.80,8.00,8.60]
a=polyfit(x,y,2)%用2次多項(xiàng)式擬合上
組數(shù)據(jù),a為擬合多項(xiàng)式的系數(shù)向量
xl=O.5:0.05:3
yl=a(l)*xl."2+a(2)*xl+a(3)
plot(xl,yl)%畫(huà)出擬合曲線的圖
形
holdon%保留上面的圖形和坐
標(biāo),可在該坐標(biāo)系中繼續(xù)作圖
plot(x,y,)%用*號(hào)的形式
畫(huà)出被擬合的數(shù)據(jù)圖形
?求矩陣的特征值(eigenvalue:)和特
征向量(eigenvector)
例
a=[7,3,-2;3,4,-1;-2,-1,3];
[x,y]=eig(a)%所得結(jié)果x為a的特征
向量矩陣,y為特征值矩陣
說(shuō)明:a必須是方陣,此時(shí)a*x=x*y,
三、符號(hào)運(yùn)算
?MATLAB進(jìn)行符號(hào)運(yùn)算的主要功能:
符號(hào)表達(dá)式和符號(hào)矩陣的基本操作、
符號(hào)矩陣的基本運(yùn)算、符號(hào)微積分
運(yùn)算、符號(hào)線性方程求解、符號(hào)微
分方程求解、特殊數(shù)學(xué)符號(hào)函數(shù)、
符號(hào)函數(shù)圖形等。
■符號(hào)表達(dá)式的生成
創(chuàng)建符號(hào)函數(shù):如fmiog(x)'
創(chuàng)建符號(hào)方程:如
g="a*xA2+b*yA2+c=0"
創(chuàng)建微分方程:如q="Dy.y=x'
或者:f=sym(tlog(x),)>
g=sym('a*xA2+b*yA2+c=0i)>
q=sym(,Dy-y=x,)
說(shuō)明:符號(hào)函數(shù)也可以用另一方
法創(chuàng)建(該方法不能創(chuàng)建方程):
symsx%用$丫1^可以定義多個(gè)變量,變量間用空格分開(kāi)
f=log(x)
w=sin(x)+cos(x)
?符號(hào)與數(shù)值之間的轉(zhuǎn)換
(1)Vpa函數(shù):如
digits(25)%設(shè)置有效數(shù)字
的精度為25位有效數(shù)字
vpa(pi+1)%顯示在上述
digits函數(shù)設(shè)置下的精度的數(shù)值
或者vpa(pi+1,25)
^±vpa:variableprecisionarithmetic
(2)numeric函數(shù):如
numeric(pi+2),a="1\numeric(a)(把a(bǔ)
變?yōu)閐ouble型,相當(dāng)于str2nlim(a))
(3)double函數(shù):轉(zhuǎn)sym型為double型.
double(sym(2)),a="1\
double(a))(把a(bǔ)變?yōu)閐ouble型代碼)
說(shuō)明:對(duì)sym型數(shù)據(jù),上兩者作用一樣
例求函數(shù)f(x)=x?cos(x)在x=2的值。
解
symsx
f=x-cos(x);
fl=subs(f,T,x)%字符替代,
在符號(hào)函數(shù)f中用2代替x
fl=subs(f,x,1)%給出f在x=l處
的值。
digits(20)
vpa(f1)
numeric(fl),doub1e(fl)
例求方程3x2?ex=0的精確解和各種
精度的近似解。
解s=solve(<3*xA2-exp(x)=0,)
vpa(s)%顯示32位有效數(shù)字
vpa(s,6)%顯示6位有效數(shù)字
symsx
ezplot(3*xA2-exp(x))
注:W=LAMBERTW(X)是w*exp(w)=x的解
?符號(hào)函數(shù)運(yùn)算
復(fù)合函數(shù)運(yùn)算:設(shè)z=g(y),y=f(x)
compose(g,f)%即為g(f(x)),自
變量的符號(hào)取為f函數(shù)的自變量符
號(hào)。
compose(g,f,t)%即為g(f(x)),
自變量的符號(hào)取t。
反函數(shù)運(yùn)算:finverse
例
?symsx;symsy;symst;%或者symsxyt
?g=sin(y);f=1/x
?compose(g9f)
?compose(g,f,t)
?finverse(g)
?finverse(f)
?符號(hào)矩陣創(chuàng)立
使用sym函數(shù)直接創(chuàng)建符號(hào)矩陣:例八
a=sym(,[l/sin(x),cos(x)^2;2*x,l+x^2])
或
symsx
a=[l/sin(x),cos(x)-2;2*x,l+x^2]
用創(chuàng)建子矩陣的辦法創(chuàng)建符號(hào)矩陣(該方法不推
薦):例
a=[-1/sin(x),cos(x)…2],;'[2*x
,l+x…2]']%同列元素的位數(shù)必須一樣,可
用空可空格來(lái)補(bǔ)。例
b=[a,/[1,x2了:
?將數(shù)值矩陣轉(zhuǎn)化為符號(hào)矩陣
a=[2/3,sqrt(2);0.222Jog(3)]%2為
數(shù)值矩陣
b=sym(a)%把2轉(zhuǎn)化為符號(hào)矩陣b。
?符號(hào)矩陣索引和修改
b(2,2)%矩陣的索弓顯示矩陣b的
第2行第2列元素。
?符號(hào)矩陣的修改
b(2,2)=1og(9)J%矩陣的修改,
b(2,2)修改為log(9)。
?符號(hào)矩陣的運(yùn)算
(1)+、一、*、\、/運(yùn)算
(2)矩陣轉(zhuǎn)置('):聯(lián)
(3)行列式運(yùn)算:det(a)
%determinant的簡(jiǎn)寫(xiě)并算符號(hào)矩陣
的行列式。
(4)求逆inv(a):求矩陣a的逆。
(5)求矩陣的秩rank(a):求矩陣a的秩。
?符號(hào)函數(shù)極限(只限于sym型函數(shù))
limit(f,x,a):求表達(dá)式依x-a時(shí)的極限。
limit(f):求f在x—0時(shí)的極限.
而計(jì)(仃聲,昵伍):求表達(dá)式他*一2時(shí)的左
極限。
Iimit(f,x,a,5rightJ):求表達(dá)式由Ex—a時(shí)的
右極限。例
symsx
limit(sin(x)/x,x,1)
limit(sin(x)/x)
limit((1+1/x)A(1/x),x,inf)
f=atan(1/(1-x))
y=limit(f,x,1)%沒(méi)極限
y1=limit(f,x,1Jeft')
y2=limit(f,x,1,'right')
f=1/x,
y1=limit(f,x,O」eft')
,1
y2=limit(f,x,0Jright)
?符號(hào)積分(適于sym型、char型)
(Dint(f,x):計(jì)算符號(hào)表達(dá)式f,自由變
量為x的不定積分.
(2)int(f,x,a,b):計(jì)算符號(hào)表達(dá)式f,自
由變量為x,從a到b的定積分
說(shuō)明:符號(hào)表達(dá)式可以是符號(hào)函數(shù),
也可是符號(hào)矩陣。
例
symsx
int(sin(x),x)
int(sin(x),x,O,l)
int(sin(x),x,O,l)
說(shuō)明:變量x省略時(shí)默認(rèn)對(duì)x積分。
a=sym(,[l/sin(x),cos(x)A2;
2*x,l+x人2「)
int(a,x)
,符號(hào)函數(shù)求導(dǎo)(適于sym型和char型)
(1)diff(f,x)%求表達(dá)式f,自由變量為x
的導(dǎo)數(shù)。說(shuō)明:diff(a),a為向量時(shí),
表示前項(xiàng)與后一項(xiàng)的親。
(2)diff(f,x,n)%求表達(dá)式f,自由變量
為x的n階導(dǎo)數(shù)。
symsx
f=sin(x)-2
diff(f,x)%變量x省略時(shí)默認(rèn)對(duì)x求導(dǎo)
diff(f,x,2)%x省略時(shí)默認(rèn)對(duì)x求導(dǎo)
?線性方程組的符號(hào)解法(linsolve)
例a=sym('10,-2;0,-2,10?)
b=sym('[9;7;6]')
x=linsolve(a,b)%x為線性方程
ax=b的解。注:這里a,b出行是double型
,但得到的x為sym型。
vpa(x)%轉(zhuǎn)化為浮點(diǎn)近似解,32位有效
數(shù)字。
?非線性方程(組)的符號(hào)解法
(1)fsolve(f,xo)洪中f為被求零點(diǎn)的
函數(shù),X。為初值。注:fsolve對(duì)sym型
函數(shù)無(wú)效;可用于有函數(shù)文件、字符
串、和inline定義的函數(shù);類似命令還
宥:fzeroo或用:
fsolve(T5x0foptions)
(2)slove(屆程1:'方程2,…).
例、求解下面非線性方程組
X1?0.7sifix1-0.2COSX2=0
X2-0.7COSX1+0.2sinx2=0
解首先編寫(xiě)函數(shù)文件f.m如下
functiony=fc(x)
y(1)=x(1)-0.7*sin(x(1))-0.2*cos(x(2));
y(2)=x(2)-0.7*cos(x(1))+0.2*sin(x(2));
y=[y(i);y(2)];
在命令窗口中輸入
x0=[0.502,0.51];%x0為初始向量
fsolve('fc\xO)
作業(yè):分別用solve和fsolve函數(shù)求
sinx+cosx+x=0的解,并進(jìn)行驗(yàn)證。
作業(yè):分別用solve和fsolve函數(shù)求方
程組
x"2*y"2-2*x-1=0
x"2-y2-1=0
的解,并進(jìn)行驗(yàn)證。
兩個(gè)函數(shù)用法的區(qū)別是什么?
%方法1
?[x,y]=solve(,xA2*yA2-2*x-1=05/xA2-yA2-1=O9);
%方法2
?functiony=fc(x)
?y(l)=x(l)八2*x(2)八2-2*x(l)?l;
?y(2)=x(l)A2-x(2)A2-l;
?y=[y(D,y⑵]
?x0=[1.6;1.2]
?x=fsolve(!fc\xO)
%方法3
?f=![x(l)A2*x(2)A2-2*x(l)-l;x(l)A2-x(2)A2-X]6
?x0=[0.6;0]
?x=fsolve(f,xO)
%方法4
f=inlinef[x(l)A2*x(2)A2-2*x(l)-l;x(l)A2-x(2)A2-X]f)
?x0=[1.6;1.2]
?x=fsolve(f,xO)
(4)已知
x=[xx,x2,…,xj
f=(fl(X);f2(x);…;fn(x))
試求導(dǎo)數(shù)f'(x),即f對(duì)x的jacobian
矩陣。
提示:利用函數(shù):jacobian(f,v),
其中v為自變量向量。
利用該雅可比函數(shù)求下面函數(shù)的
導(dǎo)數(shù)以及在(1,2,3)點(diǎn)的導(dǎo)數(shù)值。
F=[3x-cos(xy)-0.5;
x2-80(y+0.l)2+sinz+l.06;
exy+20z+l]
?symsx5symsy,symsz
f=[3^x-cos(x^y)-0.5;xA2-
0^(y+0.1)A2+sin(z)+1.06;exp(-
x*y)+20*z+l]
?df=jacobian(f5[x^z])
?b=subs(df,[x,y,z],[1,2,3]);b='[1;2;3],;
?c=linsolve(a5b);
?常微分方程的符號(hào)解(dsolve):
字符D代表對(duì)獨(dú)立變量導(dǎo)數(shù)d/dt,Dn代表對(duì)獨(dú)立變量的n
階導(dǎo)數(shù),
例求dy/dt=?ay和dy/dx=x的解
解dsolve(iDy=-a*y5)%得到通解,默認(rèn)自變量為匕
dsolve(tDy=-a*y5/y(0)=15)%給定了初始條件,求
特解。方程和初始條件用逗號(hào)分開(kāi),都用單引號(hào)引
起來(lái)。
y=dsolve(,Dy=xlX。;%通解
y=dsolveCDy=x;y(1)=2,Jx=%特解
?符號(hào)函數(shù)的二維圖形
(1)ezplot(f):繪制f(x)的圖形,
的范圍為[-2立,2TT]。如
ezplot('sin(x)9。
(2)ezplot(f,a,b):繪制f(x)的
圖形,x的范圍為[a,b]o如
ezplot('sin(x)10,9)o
四、圖形處理
圖形可視化是數(shù)學(xué)計(jì)算人
員所喜歡和追求的一項(xiàng)技術(shù)。把
結(jié)果用圖形描述出來(lái),便于理解、
分析。
?二維繪圖命令
(1)plot(y):%若y是向量,就以向量的索
可為橫坐標(biāo),以向量的元素值為縱坐
標(biāo);
(2)plot(x,y):一般來(lái)說(shuō)是繪制向量y的圖
形,橫坐標(biāo)為x的值,縱坐標(biāo)為y的值。
(3Lplot(x,y;J):這里表示用點(diǎn)線顯
Zj\O
?二維繪圖命令
(1加10*丫):%若丫是向量,就以向量的索引
為橫坐標(biāo),以向量的元素值為縱坐標(biāo);
(2)plot(x,y):一般來(lái)說(shuō)是繪制向量y的圖形,
橫坐標(biāo)為x的值,縱坐標(biāo)為y的值。x,y的維
數(shù)相同
(3)plot(x,y,l):這里'「表示用離散點(diǎn)顯示。
(4)plot(xl,y1,x2,y2):xl,yl的維數(shù)相同,
x2,y2的維數(shù)相同。
例
x=-pi:0.1:pi
y=sin(x)
Plot(y)
holdon%保留上一個(gè)圖形
plot(x,y)
說(shuō)明:在pl。t(x,y,、,)中圖形設(shè)置選項(xiàng)s的規(guī)
定
點(diǎn)或線的顏色標(biāo)記點(diǎn)的形式線型1
k(黃)r,(點(diǎn))(實(shí)線)?
M(紫紅)]'o'(圓圈)Y(點(diǎn)線)
'c'(青)'X,(叉).-.’(點(diǎn)劃淺)
,1,
'r‘(紅)—一(盅線))
'g'(綠)
'b'(蘭),s'(正方形)
(白),d,(菱形)1
'k'(黑)(向下三角形)
L'(向上三角形)
''響左三龜取)
'〉'(向右身形)
'P'(五角星)
■(六角形)
點(diǎn)或線的顏色標(biāo)記點(diǎn)的形式線型
黃)(點(diǎn))■(實(shí)線)
(紫紅)'o’(圓圈)(點(diǎn)線)
%,(青)飛’(叉)(點(diǎn)劃線)
k(紅)'+'(虛線)
(綠)
―(蘭)飛,,正方形)
'w'(白)'d'(菱形)
'k‘(黑)‘V’(向下三角形)
L'(向上三角形)
(向左三角形)
'>'(向右三角形)
'p'(五角星)
口(六角形)
還有大小、線寬控制:如2
plot(1,1/ro'/markersize'jSO)
plot(1,1/linewidth',49)
例
x=0:0.1*pi:2*pi;
y=sin(x);
z=cos(x);
'?r)%分別用虛黑線和
點(diǎn)劃紅線顯示兩條曲線。
(5)polar(0,ij:畫(huà)出極坐標(biāo)函
數(shù)r=?0)的肉形
例
cita=0:0.1*pi:4*pi;
r=cita+sin(cita/2)
polar(cita,r)
(6)refline(k,b):畫(huà)平面參考線,
k為斜率,b為在y軸的截距
(7)ezplot(T(x))畫(huà)出f(x)的圖形。例
ezplot('sin(x))結(jié)果是在12*pi,2*pi]上畫(huà)出
圖形;
ezplot(4sin(xy,[-1,3]),結(jié)果是在11,3]上畫(huà)出
圖形.
f(x)可為sym型、char型、inline型和function
定義的函數(shù)。如:founctionf(x);仁x/2-1%這
里必須用.*、.八;調(diào)用:ezplot(@f)或ezplot
(嚇)O
(8)fplot(T(x)Ja,b]),結(jié)果是在『a,b]上畫(huà)出
圖形例fplot(&in(x)\[-1,3]),結(jié)果是在口3上畫(huà)
出圖形形(x)向?yàn)閏har型、inline型。
?三維圖形命令
(1)plot3(x,y,z):x,y,z為同維向量
時(shí)畫(huà)空間曲線,例畫(huà)出
x=sin(t),y=cos(t),x=t,
10E的圖形。
解
t=0:pi/50:10*pi;
z=t,x=sin(t),y=cos(t),plot3(x,y,
z);plot3(x,y,z+1,,-r,)
(2)plot3(x,y,z):當(dāng)z=f(x,y),(x,y)
為xoy平面上的網(wǎng)格節(jié)點(diǎn)時(shí),它
可以畫(huà)出空間曲面z=f(x,y)的圖
形。
(3)mesh(x,y,z):畫(huà)出三維網(wǎng)格
圖。
(4)meshc(x,y,z):畫(huà)出三維網(wǎng)格
與等高線圖
(5)meshz(x,y,z):增加邊界面屏
蔽。
(6)surf(x,y,z):與mesh函數(shù)不
同的是把圖拓著色,surfc與
meshc類似。例
[x,y]=meshgrid(-2:0.1:2,-
2:0.1:2);z=x.A2+y.A2;
plot3(x,y,z)
holdon
meshc(x,y,z+8),
meshc(x,y,z+16),
%mesh(z)與mesh(x,y,z)的區(qū)別類
似于pIotjx)與pIot(x,y而應(yīng)別。
(7)ezplot3('x⑴7y(t),'z(t)',[a,b]):為參數(shù)在[a,b]
的范圍畫(huà)出x=x⑴,y=y(t),z=z(t)對(duì)應(yīng)的三維空
間曲線。^Jezplot3(,cos(t)),(sin(t)7t,,[0,10*pi])o
(8)ezmeshCx(u,v)\y(u,v”z(u,v)\[a,b,c,d]):在
awuwb,cwvwd的范圍,畫(huà)出參激方程
x=x(u,v),y=y(u,v),z=z(u,v)的對(duì)應(yīng)的曲面。
(9)ezsurf:ezsurf與ezmesh的區(qū)另U類彳以于surf
與mesh的區(qū)別。例
ezmesh('r*cos⑴',T*sin(t)',TA2',[0,2*pi])
畫(huà)出拋物面圖形。
(3)坐標(biāo)軸標(biāo)注xlabe(標(biāo)注'),
ylabel(癡注,)
(4)標(biāo)題標(biāo)注title(,標(biāo)題')
x="pi:0.1*pi:pi,y=sin(x)
plot(x,y),v=[-16,6,-1,2],axis(v)
gridon
xlabelCx-axis9),ylabel('y=sinx,)
title。正弦函數(shù)圖像')
(5)圖形保持holdon/off:hold
on是啟動(dòng)圖形保持功能,在已存
在的一張圖中添加曲線,hold
off是關(guān)閉圖形保持功能。
(6)圖例標(biāo)注legend,標(biāo)注
'標(biāo)注2',…)
例x=0:0.1*pi:2*pi;
y=sin(x);z=cos(x);
holdon
plot(x,z/-of)
plot(x,y+z,'-h')
Iegend(ly=sinx,/z=cosx7y+z=sinx+
cosx
holdoff%關(guān)閉圖形保持
⑺子圖subplot(m,n,p):其功能
是把一個(gè)面形分成mXn個(gè)小
圖形窗口,通過(guò)參數(shù)p調(diào)用各
子窗口進(jìn)行操作。例
x=0:0.1*pi:2*pi;
y=sin(x);
z=cos(x);
subplot(2,2,1),plot(x,y1*')
subplot(2,2,2),plotfXjZj'"o')
subplot(2,2,3),plotfXjy+Zj'-h')
subplot(2,2,4),plot(x,y-z,'-x')
?圖形處理技術(shù)
(1)坐標(biāo)軸控制函數(shù)axis(v):對(duì)
二維圖形v=[a,b,c,d]淇中[a,b]和
[c,d]分別為x軸和y軸的范圍;對(duì)于
三維圖形曠二團(tuán)由上內(nèi)收用分別給出
x,y和z軸的范圍。例
(2)平面坐標(biāo)網(wǎng)格函數(shù)gridon/off:
作用是平面圖形帶有網(wǎng)格和取消網(wǎng)
寤。
五、程序設(shè)計(jì)
?MATLAB作為一種高級(jí)計(jì)算語(yǔ)言,
不僅可以做如上所講的那些工作,
還可以像basic,fortran,c等其它
高級(jí)計(jì)算機(jī)語(yǔ)言一樣進(jìn)行程序設(shè)
計(jì),即編制以m為擴(kuò)展名的文本
文件(簡(jiǎn)稱M文件)。
?M文件的形式
(1)命令式(script):命令式文
件就是命令行的簡(jiǎn)單疊加,
MATLAB就會(huì)自動(dòng)按順序執(zhí)行文
件中的命令,這樣就可以避免在
命令窗口運(yùn)行許多命令的麻煩和
重復(fù)行工作,也便于修改。其可
在命令窗口直接輸入文件名運(yùn)行
例
%sinfig.m
x="pi:0.1*pi:pi;
y=sin(x);
plot(x,y);
holdon;
plot(y,x)
(2)函數(shù)式(function):他主要解決
參數(shù)傳遞和函數(shù)調(diào)用問(wèn)題,它的第
一句以function語(yǔ)旬為引導(dǎo)。木能
直接運(yùn)行,只能調(diào)用。
例%f.m文件名與函數(shù)名必須一致
functionf(x)
f=2*xA2+4*x+6
在命令窗口中輸入:f(O),f(1O)可以看
出結(jié)果。
例、建立一個(gè)名字為f的函數(shù)文件,該
函數(shù)為
f=cos2(x)
試計(jì)算該函數(shù)在x=1:10的函數(shù)值,
并給出離散點(diǎn)(x,f(x))的圖形。
(大家一起討論)
例、一個(gè)函數(shù)文件可以定義個(gè)函數(shù)
function[yl,y2,y3]=f(x)
yl=sin(x);
y2=cos(x);
y3=tan(x);
(3)數(shù)據(jù)文件:
用save,文件名','變量V,'變量2"……)或
save文件名變量1變量2變量3創(chuàng)建;
用load。文件名')或Load文件名調(diào)入到工作
間。
控制語(yǔ)句
(1)循環(huán)語(yǔ)句
(a)for循環(huán):例
s=0;
fork=1:1:10%初始值、步長(zhǎng)和最大
限值
s=s+k;
end%循環(huán)結(jié)束標(biāo)志
(b)while循環(huán):例
s=0;
k=0;
whilek<=9
k=k+1;
s=s+k;
end
(c)if......else......end選擇語(yǔ)句:
例
編寫(xiě)分段函數(shù)f(x)=x,(?
A
1=<x<0);f(x)=x2,(0<=x<=1)o
functiony=f(x)
ifx>=-1&x<0
y=x;
else
y=xA2;
end
(d)if...end語(yǔ)句:例
?fori=l:10
?ifi<8
?a(i)=100
?end
?end
?結(jié)果:a=
100100100100100100100
(e)if...elseif...elseif...else...end^
重選擇語(yǔ)句:例編寫(xiě)函數(shù)文件:
functiony=f(x)
ifx>=-1&x<0,y=x;elseif
x>=0&x<=1,y=xA2;else,f=0
end
在命令窗口中輸入f(1),(3)可以得到結(jié)
果。
(f)swith變量
case1
語(yǔ)句
case2
語(yǔ)句
otherwise
語(yǔ)句
end
例、
?fori=1:6
?switchi
?case1
?a=1
?case2
?a=2
?case3
?a=3
?case4
?a=4
?otherwise
?b=0
?end
?end
例已知n=自己的真實(shí)學(xué)號(hào),在xoy平面
有點(diǎn)
Aj二(i,0)
Bi=(i,n)
(i=0,1,2,??????,n)
現(xiàn)要畫(huà)連接AjB的線段(i,j=0,1,…,
n),試給出其MATLAB程序。
解現(xiàn)就學(xué)號(hào)為6,給出其程序如下:
n=6;x=0:n;y=0:n;
fori=1:7
forj=1:7
ifi==j
plot(x(i)*ones(size(y)),y);
xlabel('x');ylabel(V);title('AiBj的連線')
v=[0,n,0,n];axis(v)
holdon;
else
a=min(x(i),xG));b=max(x⑴
X1=a:0.1*(b-a):b;
Y1=?n/(x(i)?x(j))*(X1?x(i));%連接內(nèi)Bj的直線
plot(X1,Y1);
end
end
end
作業(yè):在上題的基礎(chǔ)上,再加上點(diǎn)
Ci=(O,i),Di=(n,i)
(i=0,1,2,……,n)
現(xiàn)要畫(huà)連接AiBj和CiBj的線段
(i,j=0,1,…,n),試給出其MAT
LAB程序。把運(yùn)行結(jié)果得到的圖像,
存放到WORD文件,文件名字取為:
真實(shí)姓名—真實(shí)學(xué)號(hào),然后發(fā)送到
信箱:xtxyshx@126.com
六、主要命令匯總
1、常用信息
?help:在線幫助(顯示在命令窗)。
?helpwin:在線幫助(獨(dú)立窗口顯示)。
?ver:MATLAB及工具箱的版本信息。
2、管理工作區(qū)命令
?who:顯示當(dāng)前變量。
?whos:顯示當(dāng)前變量具體信息。
?clear:從內(nèi)存中清楚變量和函數(shù)。
?quit:退出MATLAB。
3、管理命令和函數(shù)
?what:顯示當(dāng)前目錄下的MATLAB
文件。
?edit:編輯M文件。edit健立編輯新
文件);edit+文件名(編輯已有
的文件)。
?which:找出函數(shù)和文件的位置。
?type:顯示M文件內(nèi)容。Type+文件
名。
?Inmem:顯示內(nèi)存中的函數(shù)。
4、操作系統(tǒng)命令
?dir:顯示目錄。
?pwd:顯示當(dāng)前工作目錄。
?delete:刪除文件。Delete+文件名。
?web:打開(kāi)頁(yè)面瀏覽器加載文件。
5、數(shù)據(jù)類型
?double:雙精度類型
?sym:符號(hào)型
?Inline:內(nèi)聯(lián)對(duì)象
?char:字符數(shù)組或字符串。
?Uint8:無(wú)符號(hào)8位整數(shù)(unsignedinteger)
?char(sym型變量):把sym型轉(zhuǎn)化為char型
?sym(char型變量):把char型轉(zhuǎn)化為sym型
?char(inline型)和inline(char型)可相互轉(zhuǎn)化。
?num2str:數(shù)字轉(zhuǎn)化成字符串
6、數(shù)據(jù)基本操作
?max:最大元素。向量為數(shù),矩陣為向量
?min:最小元素。類似max.
?mean:求平均值。mean(a),a為向量
時(shí)得到向量平均值,結(jié)果為一
個(gè)數(shù);a為矩陣時(shí),進(jìn)行每列
平均,得到一個(gè)向量。
?sum:元素和。sum(a),a為向量時(shí)得
到該向量各元素之和,結(jié)果為一
個(gè)數(shù);a為矩陣時(shí),進(jìn)行每列
求和,得到一個(gè)向量。
?prod:元素積。prod(a)當(dāng)a為向量和
矩陣時(shí)的情況,類似于max(a)。
?cumsum:元素累和。cumsum(a),a
可為向量,也可為矩陣。
?cumprod:元素累積。a可為向量,
也可為矩陣。
7、基本矩陣函數(shù)
?zeros:零矩陣函數(shù)。
?ones:全1矩陣。
?eye:單位矩陣。
?rand:隨機(jī)數(shù)、向量、矩陣.
?linspace:線性等分向量。
8、基本數(shù)組操作
?size:矩陣大小。
?length:數(shù)組長(zhǎng)度。
?isempty:判斷是不是空矩陣。
?isequal:判斷數(shù)組是否相等。
isequal(a,b)o
?isnumeric:判斷是否為數(shù)值矩陣。
?reshape:矩陣重置。
?tril:抽取下三角部分。
?triu:抽取上三角部分。
?flipk左右方向翻轉(zhuǎn)矩陣(flip:翻
轉(zhuǎn))。
?flipud:上下方向翻轉(zhuǎn)矩陣。
?rot90:逆時(shí)針把矩陣旋轉(zhuǎn)90度。
?find(x):[i,j]=find(x)查找x非零元下標(biāo)。
9、專用變量和常量
ans:最新答案。
pi:圓周率。
i,j:復(fù)數(shù)單位。
inf:無(wú)窮大。
NaN:不定數(shù)。
isnan:判斷不定數(shù)。
?isinf:判斷無(wú)窮大元素。
?isfinite:判斷有限大元素。
10、指數(shù)、對(duì)數(shù)函數(shù)
?exp:e指數(shù)函數(shù)。
?pow2:以2為底的塞函數(shù)。
?sqrt:平方根函數(shù)。
11、舍入函數(shù)和剩余函數(shù)
?fix:朝零方向舍入為整數(shù)。
?floor:朝負(fù)方向舍入為整數(shù)。
?ceil:朝正方向舍入為整數(shù)。
?round:四舍五入為整數(shù)。
?sign:符號(hào)函數(shù)。
?mod:無(wú)符號(hào)求余函數(shù)。mod(3,2)=1
?rem:帶符號(hào)求余函數(shù)。
12、復(fù)數(shù)函數(shù)
?abs:求模。
?conj:求共朝函數(shù)(conjugate)。
?angle:相角函數(shù)。
?imag:復(fù)矩陣虛部。
?real:復(fù)矩陣實(shí)部。
?isreal:實(shí)矩陣判斷函數(shù)。
12、矩陣函數(shù)
?norm:矩陣或向量范數(shù)。
?normest響量、矩陣2范數(shù)。
?rank:矩陣的秩。
?det:矩陣行列式的值。
?trace:矩陣的跡(主對(duì)角線元素之和)。
?inv:矩陣逆。
13、特征多項(xiàng)式、特征值
?poly:特征多項(xiàng)式。
?poly2sym:多項(xiàng)式表示。
,eig:特征值和特征向量。
?eigs:特征值。
14、矩陣函數(shù)
?expm:矩陣指數(shù)。
?logm:矩陣對(duì)數(shù)。
?sqrtm:矩陣平方根。
15、坐標(biāo)轉(zhuǎn)換
?cart2sph:轉(zhuǎn)換直角坐標(biāo)為球坐標(biāo)。
?cart2pol:轉(zhuǎn)換直角坐標(biāo)為極坐標(biāo)。
?pol2cart:轉(zhuǎn)換極坐標(biāo)為直角坐標(biāo)。
?sph2cart:轉(zhuǎn)換球坐標(biāo)為直角坐標(biāo)。
16、坐標(biāo)軸控制
?axis:控制坐標(biāo)軸范圍。
?gridon/off:柵格線保持、取消。
?Gridminor:較小網(wǎng)格。
?holdon/off:圖形保持/取消o
?boxon/off:圖形四周都顯示/常規(guī)坐標(biāo)
軸。
例1、
?[x,y]=meshgrid(0:0.5:10);
?z=y.*sin(x.人2)+cos(y);
?surf(x,y,z)
?v=[-20,10,-20,10,-10,50];%坐標(biāo)
軸范圍控制
?axis(v)%注意該語(yǔ)句必須在圖形顯
示語(yǔ)句的后面
說(shuō)明:二維圖形是類似的。
例2、axis1控制字符串,):可以選
擇
不同的字符串完成對(duì)坐標(biāo)軸的操作。
控制字符串有:
(1)auto:自動(dòng)模式,使得圖形的坐
標(biāo)范圍滿足圖中一切圖元素。
(2)axis:將當(dāng)前坐標(biāo)設(shè)置[定,使
用hoId命令后,圖形仍以此作為坐標(biāo)
界限。
(3)manual:以當(dāng)前的坐標(biāo)限定繪
制。
(4)tight:將坐標(biāo)限控制在指定的數(shù)
據(jù)范圍內(nèi)。
(5)equal:使坐標(biāo)軸分度相等。
(6)off:取消對(duì)坐標(biāo)軸的一切設(shè)置,
包括系統(tǒng)的自動(dòng)設(shè)置。
(7)on:恢復(fù)對(duì)坐標(biāo)軸的一切設(shè)置。
?[x,y]=meshgrid(-1:0.1:1,-1:0.1:1);
?z=x.A2+y.A2;
?surf(x,y,z)
?boxon
17、基本二維圖形
?plot:線性繪圖。
?loglog:雙對(duì)數(shù)坐標(biāo)圖。
?semilogx:半對(duì)數(shù)(x)坐標(biāo)圖。
?semilogy泮對(duì)數(shù)(y)坐標(biāo)圖。
,polar:極坐標(biāo)圖。
?subplot:分割圖窗
?refline⑸ope,intercept):加參考線
18、圖形注解
?legend:圖形標(biāo)簽.
?xlable:x軸標(biāo)簽。
?ylable:y軸標(biāo)簽。
,title:圖形題目o
?text:文字注解。
19、特殊二維圖形
?bar:條形圖。
,barh:水平柱圖。
,ezplot:符號(hào)函數(shù)圖。
?fplot:繪制字符串指定的函數(shù)名的函
數(shù)圖。如fplotCsin(x),,[2,3])。
?pie:餅圖。
?plotmatrix:繪矩陣點(diǎn)圖。
?stem:2維火柴桿圖。
?stem3:3維火柴桿圖。
20、等高線圖和向量圖
?contour:等高線圖。
?contour3:三維等高線圖。
?quiver:向量圖。
例
[x,y]=meshgrid(-2:.2:2,-1:.15:1);
z=x/exp(-x.A2-y.A2);
[px,py]=gradient(z,2);
contour(x,y,z),
holdon
quiver(x,y,px,py)
holdoff
21、特殊三維圖形
?comet3:三維彗星軌線(comet(x,y)畫(huà)
二維彗星線)。
t=-10*pi:pi/500:10*pi
comet3(sin(t),cos(t),t)
?meshc(x,y,z)湎出三維網(wǎng)格與等高線
圖,類似sutfc。
?meshz(x,y,z):增加邊界面屏蔽。
?stem3:三維火柴干圖。例
a=rand(3);
stem3(a);
22、固體模型
?cylinder:生成圓柱。格式為
[x,y,z]=cylinder(QH)J為母線半
徑,N為顯示的母線條數(shù)
mesh(x,y/)或surf(x,y/)顯示單位
高度柱面。
t=.l*pi:pi/20:l*pi;
r=5+cos(t);
[x,y/]=cylinder(r,30)
surf(x,y,z)
?sphere:生成單位球面。例
[x,y,z]=sphere(40)%40為子午線條
數(shù),sphere默認(rèn)為20條。
mesh(x,y,z)或surf(x,y/)%畫(huà)球面
axis(6equaP)%坐標(biāo)軸刻度相同
例
?[x,y,z]=sphere(50);mesh(x+l,y+2,z+2)畫(huà)出以(1,
2,2)為中心半徑為1的森面;
?[x,y,z]=sphere(50);mesh(x,y,abs(z))畫(huà)出以(0,0,0)
為中心半徑為1的上半個(gè)球面;
?[x9y,z]=sphere(50);
mesh(2*x,2*y,2*abs(z)),畫(huà)出以(0,0,0)為中
心的半徑為2上半個(gè)球面;
[x,y9z]=sphere(50);
?mesh(2*x,2*y,2*abs(z)),畫(huà)出以(0,0,0)為中
心的半徑為2上半個(gè)球面;
例、繞地球運(yùn)動(dòng)的飛行物
?[x,y,z]=sphere(50);
?mesh(x,y,z);
?holdon
?v=[-6,6,-6,6,-6,6];
?axis(v);
?axis('off')
?t=0:pi/1000:200*pi;
?x=6*sin(t);
?y=2*cos(t);
?z=zeros(size(t));
?comet3(x,y,z)
23、四維表現(xiàn)圖
對(duì)于三維圖形自變量是二維的,對(duì)
于三個(gè)自變量的函數(shù)w=fx,y,z),其
其圖形應(yīng)該是四維的,由于我們所
處的空間和思維的局限性,在計(jì)算
機(jī)屏幕上只能表現(xiàn)出三維空間。為
了表現(xiàn)四維圖像,可利用三維實(shí)體
的四維切片色圖,用三維實(shí)體上的
顏色來(lái)描述函數(shù)值的變化情況。
?MATLAB中用slice函數(shù)來(lái)完成
(1)slice(x,y,z,w,sx,sy.sz):繪制向
量sx,sy,sz中的點(diǎn)沿x,y,z軸方向的切片
圖,W的大小決定了每一點(diǎn)的顏色。
(2)slice(x,y,z,w,xl,yl,zl):按數(shù)
組xl,yl,zl切片(按坐標(biāo)軸單位)。
(3)slice(w,xl,yl,zl):按數(shù)組xL
yl,zl切片(按x,y,z的網(wǎng)格單位進(jìn)行切片。
(4)slice(w,sx,sy,sz):按x,y,z的網(wǎng)
格單位進(jìn)行切片。
例、程序如下:
[x,y,z]=meshgrid(-2:0.2:2,-2:0.25:2,-2:0.16:2);
w=x.A2+y.A2+z.A2;
%slice(x,y,z,a,x,y,z)
x1=1:15;
y1=1:10;
z1=1:10
subplot(221),slice(x,y,乙w,1
subplot(2,2,2),slice(w,1,1,[0,1]);
subplot(2,2,3),slice(x,y,z,w,x1,y1,z1);holdon
subplot(2,2,4),slice(w,x1,y1,z1);
colorbar%色軸,它可以標(biāo)注顏色與數(shù)值之間的關(guān)系
24、數(shù)據(jù)文件
(1)Sav
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度高端定制門(mén)頭裝修設(shè)計(jì)與施工合同規(guī)范4篇
- 二零二五版創(chuàng)業(yè)團(tuán)隊(duì)股權(quán)激勵(lì)及轉(zhuǎn)讓合同樣本5篇
- 技能更新職業(yè)培訓(xùn)合同(2篇)
- 二零二五年互聯(lián)網(wǎng)金融服務(wù)合同風(fēng)險(xiǎn)控制3篇
- 二零二五年度定制豪華鐵門(mén)表面處理合同范本
- 二零二五年度LNG運(yùn)輸合同-公路運(yùn)輸及安全應(yīng)急預(yù)案編制協(xié)議3篇
- 二零二五年度儲(chǔ)罐租賃及遠(yuǎn)程監(jiān)控服務(wù)合同4篇
- 2025年酒吧人員緊急疏散預(yù)案合同范本3篇
- 二零二五年度房地產(chǎn)項(xiàng)目風(fēng)險(xiǎn)控制合同
- 二零二五年度農(nóng)業(yè)合作社農(nóng)業(yè)節(jié)水灌溉股權(quán)投資合同3篇
- 山東鐵投集團(tuán)招聘筆試沖刺題2025
- 真需求-打開(kāi)商業(yè)世界的萬(wàn)能鑰匙
- 2025年天津市政集團(tuán)公司招聘筆試參考題庫(kù)含答案解析
- GB/T 44953-2024雷電災(zāi)害調(diào)查技術(shù)規(guī)范
- 2024-2025學(xué)年度第一學(xué)期三年級(jí)語(yǔ)文寒假作業(yè)第三天
- 2024年列車員技能競(jìng)賽理論考試題庫(kù)500題(含答案)
- 心律失常介入治療
- 《無(wú)人機(jī)測(cè)繪技術(shù)》項(xiàng)目3任務(wù)2無(wú)人機(jī)正射影像數(shù)據(jù)處理
- 6S精益實(shí)戰(zhàn)手冊(cè)
- 展會(huì)場(chǎng)館保潔管理服務(wù)方案
- 監(jiān)理從業(yè)水平培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論