版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
MATLAB與科學(xué)計算
多媒體網(wǎng)絡(luò)教室方案示意圖
、兒、▲
,、刖百
?MATLAB:matrixlaboratory的縮寫,
矩陣實驗室的意思。一開始它是一種
專門用于矩陣數(shù)值計算的軟件。自
MATLAB4.0版本問世以來,該軟件成
為最具有吸引力,應(yīng)用最為廣泛的科
學(xué)計算語言。我們這個課就拿
MATLAB6.1版本來講。(6.x版本大
同小異)
?學(xué)習(xí)該軟件的必要性:目前,
MATLAB軟件不僅走入企業(yè)、公
司和科研機(jī)構(gòu),而且在高等院校
也是從大學(xué)生到博士生都必須掌
握的一項基本技能,是必不可少
的計算工具,。
?MATLAB功能:數(shù)值計算、符號
運(yùn)算和圖形處理。
?學(xué)習(xí)它的意義:隨著計算機(jī)科學(xué)
和計算軟件的發(fā)展,數(shù)學(xué)系學(xué)生
必須掌握一門好的計算軟件。這
是我們就業(yè)、繼續(xù)身造或做科研
工作所要用到的。是當(dāng)代大學(xué)生
必備的一項技能。
?其它計算軟件:MATHEMATIC
(數(shù)學(xué)分析問題的計算);IDL
(航天、控制),F(xiàn)OETRAN、
BASIC(科學(xué)計算)。可以說一
個人掌握了一門計算軟件,再學(xué)
習(xí)其它計算軟件很容易。
?MATLAB桌面平臺:
(1)主窗口:整個大的窗口(其它
幾個窗口都包括在其中)
(2)命令窗口(command
window):》為運(yùn)算提示符,表
示MATLAB在準(zhǔn)備狀態(tài)。當(dāng)在提示
符后輸入一段運(yùn)算式并按回車鍵
后,就給出計算結(jié)果
(3)歷史窗口(commandhistory):
保留命令歷史記錄,這方便于使
用者查詢。雙擊歷史窗口中的某
一行命令,即可在命令窗口中執(zhí)
行該命令。
(4)當(dāng)前目錄窗口(current
directory):在當(dāng)前目錄窗口中
可顯示或改變當(dāng)前目錄,也可以
顯示當(dāng)前目錄下的文件,并提供
搜索功能。
(5)發(fā)行說明書窗口(launchpad):
用來鋪明用戶所擁有的Mathworks
公司產(chǎn)品的工具包、演示以及幫助
信息。
(6)工作間管理窗口
(workspace):顯示目前內(nèi)存中所
有的MATLAB變量的變量名、數(shù)學(xué)結(jié)
構(gòu)、字節(jié)數(shù)及其類型。
?命令窗口查詢幫助:help+函數(shù)名,
當(dāng)用戶知道函數(shù)名字,而不知道
其用法時,用help命令可以去了
解此函數(shù)的用法。
如:helpinv
?MATLAB標(biāo)點的含義:
(1)分號;……區(qū)分行以及取消
運(yùn)行顯示等。例:
A=[l,2,3,4]與A=[1,2;3,4];
的區(qū)別。
(2)逗號,……區(qū)分列及函數(shù)參
數(shù)分隔符等。例:二[1,2;3,4],
B=[l,4,3;3,2,1;4,5,6]
⑶小括號():指定運(yùn)算過程的
先后次序等。例:
x=0.5;
y=sin(x)/(2+cos(x))
z=sin(x)/2+cos(x)
(4)方括號[]:矩陣定義標(biāo)志等。
見上。
(5)續(xù)行號…:例:
y=sin(x)/(2+cos(x))
也可寫為
y=sin(x)...
/(2+cos(x))
(6)百分號%:注釋標(biāo)記,該行%以
后的語句不執(zhí)行。例
%線性規(guī)劃程序
%a=0.5;
b二sin(x);%正弦函數(shù)
(6)等號=:賦值標(biāo)記。見上。
(7)單引號'':字符串表示
符,單引號里面的內(nèi)容為字符串。
單引號一定在英文狀態(tài)下輸入例:
a=lxingtaicollege1
(8)冒號,':有多種應(yīng)用功
能,學(xué)習(xí)過程中注意。如:選取
矩陣的所有行、歹!J;矩陣定義
二、數(shù)值計算
變量:MATLAB語言不需要對所使用
的變量進(jìn)行事先聲明,也不需要指定其
類型,它會首動根據(jù)所賦予變量的值或
卷翻藕鬣r2無量Z的類劃型。如,果
代替舊值。如:
a=1
b=0.5
c=a*b
c=3
?變量命名的規(guī)則:
(1)變量名區(qū)分大小寫;
(2)變量名長度不能超過31位;
(3)必須以字母開頭,變量名中
可包含字母、數(shù)字、下劃線,但
不能使用標(biāo)點。
?常量:MATLAB中有些預(yù)定義的
變量,這些特殊的變量稱為常量。
常用到的有:
i,j:虛數(shù)單位;
pi:IT;
NaN:表示不定值,比如0/0;
inf:無窮大(infinit),比如
1/0o
?算術(shù)操作符:
加,減;可以通用。
*,A,\,/:分別為矩陣乘,乘
方,左除,右除;
分別為數(shù)組乘,
乘方,左除,右除;此時向量的
運(yùn)算不會滿足矩陣的運(yù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是錯誤的寫法
a1.\a2
a2-b2
a2+b2
a2.*b2%a2*b2是錯誤的寫法
a2./b2
b2./a2
a2.\b2
例已知水的黏度隨溫度的變化公式
2
為p=p0Z(1+at+bt)其中
p0=1.785X103,
a=0.03368,b=0.000221,
求水在0,20,40,求水時的黏度。
程序如下:
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)字符串用單引
號括起來;(2)字符串的每個
每個字符(包括空格)都是字符
數(shù)組的一個元素.
例s="xingtaicollege9
f=^sin(x),
是字符串(chararray)
?向量的生成:
(1)直接輸入:如a=[1,2,5,3]
(2)利用冒號表達(dá)式生成:如:
b=[2:2:10],此時[]可省略,步長
為1時,步長可省略。第一個數(shù)為
首元素的值,第2個數(shù)為步長或差
值,第三個數(shù)為尾元素的限值,不
能超過這個值。如b=2;2:11等價
于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ù)與向量的每個元素進(jìn)行作用。
(3)向量與數(shù)可以相乘。用*。
(4)向量與數(shù)可以相除。向量/數(shù),
數(shù)./向量。
(5)兩個向量點積。必須是同維
向量。用dot(a,b)。
(6)兩個向量叉積。
cross(a,b),a,b必須有是3維且次
序不能顛倒,。
(7)混合積。由以上兩個函數(shù)實現(xiàn)。
dot(a,cross(b,c))
?矩陣的生成:
(1)直接輸入:如:a=[1,3,4;4,3,2],
(2)創(chuàng)建M文件輸入大矩陣:當(dāng)矩陣
很大時,直接輸入顯得很笨,出錯
不易修改.我們可以編寫一個M文
件,M文件的擴(kuò)展名必須是m.
例編寫一個名為111@1;"*.111(名字
自己隨便起)的M文件如下:
%matrix.m
mat=[l,2,3,3;3,4,5,1;3,2,1,4;8
,9,7,5]
在命令窗口中輸入matrix,就
會運(yùn)行該文件.查看矩陣的結(jié)構(gòu)可
用size(mat).
?矩陣運(yùn)算:
(1)+、-、*:力口、減、乘運(yùn)算。
(2)矩陣的除法有兩種形式:左除
和右除.右除是先計算
逆再做乘法;而左除不計算逆直接
進(jìn)行除法運(yùn)算,這樣可避免奇異矩
陣無法求逆帶來的麻煩.
如: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為
增廣矩陣),所以有無窮多個
解,MATLAB中用除法解方程組時所
得到的解是所有解中范數(shù)最小的一
個x二A\bo
(3)矩陣與常數(shù)間的運(yùn)算:+、-、
*運(yùn)算是數(shù)與矩陣的每個元素進(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)矩陣對數(shù)運(yùn)算:logm(A),A為
方陣。
如:a=rand(3);%成生一個3階
隨機(jī)矩陣
b=expm(a)
c=logm(b)
(10)矩陣開方: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:生成一個隨機(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注意安維操作
要保證元素個數(shù)一致。
例
s=l:12;
c=zeros(3,4);
c(:)=s(:);%符號“:”表示
變維操作,這兩個矩陣必須預(yù)先
定義維數(shù),結(jié)果c取的是S的元素。
(2)對角元素抽取diag(a,k)(注:
diagonal為對角線的意思):抽
取矩陣a的第k條對角線的元素作
為向量,k=0時為主對角線,k為
正值時為上方第k條對角線,k為
負(fù)值時為下方第k條對角線。
diag(a)相當(dāng)于diag(a,0).例
a=rand(3);v=diag(a)
說明:如果b是一個向量,貝(Jdiag(b)
為對角矩陣,其對角線元素為b的
元素。如:b=l:3,diag(b).
(3)tril(a)(注:trianglelow):
提取矩a的主下三角。
(4)tril(a,k):提取矩a的第k條
對角線下面部分。k=0時為主對
角線,k為正值時為上方第k條對
角線,k為負(fù)值時為下方第k條對
角線。
(5)triu(a,k)(注:triangle
up):提取矩a的第k條對角線上面
部分。
?邏輯運(yùn)算符:
(1)==:等于。
(2)~二:不等于。
(3)<:小于。
(4)):大于。
(5)<=:小于等于。
(6)〉二:大于等于。
(7)&:邏輯與。
(8)|:邏輯或。
(9)1邏輯非。
說明:
①在關(guān)系比較中,若雙方為同
維數(shù)組(矩陣),則比較的結(jié)果
也是同維數(shù)組(矩陣)。它們的
元素有0和1組成。對應(yīng)位置上的
元素滿足比較關(guān)系時為L否則為
0o當(dāng)常數(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)算雙方的對應(yīng)元素值
都為非。時,結(jié)果為I,否則為0;
或:當(dāng)運(yùn)算雙方的對應(yīng)元素值
有一非0時,結(jié)果為1,否則為0;
非:當(dāng)運(yùn)算數(shù)組(矩陣)的對
應(yīng)位置上的元素值為0時,結(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)先級:先算術(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):自然對數(shù)函數(shù)(logarithm);
Iog10(x):以10為底的對數(shù);
Iog2(x):以2為底的對數(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的階乘。
?多項式表示方法:
在MATLAB中多項式
P(X)=anXn+an.iXn」+…+a0是以向量
p=[an田用…,a。]的形式福存的.
(1)系數(shù)向量直接輸入:例輸入多項式
xA3-5xA2+6x-33.
p=[1,-5,6,-33];
poly2sym(p)%polynomial多項
式,將系數(shù)向量表示成符號多項式
⑵矩陣的特征多項式輸入:例
a=[l,2,3;2,3,4;3,4,5];
p=poly(a);%求@的特征多項式系數(shù)
向量
pl=poly2sym(p);%即為a的特征多
項式
(3)由根創(chuàng)建多項式:例
root=[-5,?3+4i廣3?4i];%是某個多
項式的根
p=poly(root)%求相應(yīng)的多項式
的系數(shù)向量
P1=poly2sym(p)%將多項式系數(shù)
向量表示成符號多項式
?多項式運(yùn)算:
⑴求多項式的值:例
p=[1,11,55,125];
a=1.2
b=[1,2;2,3]
polyval(p,a)%polynomialvalue
求多項式在1.2的值
polyvalm(p,b)%多項式在b的值
⑵求多項式的根:例求多項式
2xF-5x-3+6x人2-x+9=0的所有根.
P=[2,-5,6,-1,9]
roots(p)%得到多項式的根
(3)factor:因式分解。例
symsx
factor(x"9-1)
結(jié)果:ans=(x-1)*(xA2+x+1)*(xA6+xA3+1)
factor(symC10(F))%把整數(shù)100進(jìn)
行素數(shù)分解.結(jié)果:(2)八2*(5)八2
(4)expand(s):多項式展開,s可為多
項式、多項式向量和矩陣。例
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):對默認(rèn)的變量合并同
類項。
co11ect(s,v):對變量v合并同類
項。
S可為符號多項式、多項式向量和矩陣
例
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):符號表達(dá)式簡化,s可為
符號多項式、多項式向量和矩陣。
例
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
⑺多項式乘除運(yùn)算分別用conv和
deconv:
(convolution,deconvolution)
例
p1=[2,-5,6,-1,9];
p2=[3,-90,18];
p=conv(p1,p2)%為p1和p2所相應(yīng)
的多項式的乘積多項式的系數(shù)向量
p3=deconv(p,pl)%為p2
p4=deconv(p,p2)%為「1
poly2sym(pl);
poly2sym(p2);
poly2sym(p)
poly2sym(p3)
poly2sym(p4)%觀看這幾個多項
polyfit(x,y,n)其中x,y為擬合數(shù)
據(jù),n為擬合多項式的階數(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次多項式擬合上
組數(shù)據(jù),a為擬合多項式的系數(shù)向量
xl=O.5:0.05:3
yl=a(l)*xl."2+a(2)*xl+a(3)
plot(xl,yl)%畫出擬合曲線的圖
形
holdon%保留上面的圖形和坐
標(biāo),可在該坐標(biāo)系中繼續(xù)作圖
plot(x,y,)%用*號的形式
畫出被擬合的數(shù)據(jù)圖形
?求矩陣的特征值(eigenvalue:)和特
征向量(eigenvector)
例
a=[7,3,-2;3,4,-1;-2,-1,3];
[x,y]=eig(a)%所得結(jié)果x為a的特征
向量矩陣,y為特征值矩陣
說明:a必須是方陣,此時a*x=x*y,
三、符號運(yùn)算
?MATLAB進(jìn)行符號運(yùn)算的主要功能:
符號表達(dá)式和符號矩陣的基本操作、
符號矩陣的基本運(yùn)算、符號微積分
運(yùn)算、符號線性方程求解、符號微
分方程求解、特殊數(shù)學(xué)符號函數(shù)、
符號函數(shù)圖形等。
■符號表達(dá)式的生成
創(chuàng)建符號函數(shù):如fmiog(x)'
創(chuàng)建符號方程:如
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,)
說明:符號函數(shù)也可以用另一方
法創(chuàng)建(該方法不能創(chuàng)建方程):
symsx%用$丫1^可以定義多個變量,變量間用空格分開
f=log(x)
w=sin(x)+cos(x)
?符號與數(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型代碼)
說明:對sym型數(shù)據(jù),上兩者作用一樣
例求函數(shù)f(x)=x?cos(x)在x=2的值。
解
symsx
f=x-cos(x);
fl=subs(f,T,x)%字符替代,
在符號函數(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的解
?符號函數(shù)運(yùn)算
復(fù)合函數(shù)運(yùn)算:設(shè)z=g(y),y=f(x)
compose(g,f)%即為g(f(x)),自
變量的符號取為f函數(shù)的自變量符
號。
compose(g,f,t)%即為g(f(x)),
自變量的符號取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)
?符號矩陣創(chuàng)立
使用sym函數(shù)直接創(chuàng)建符號矩陣:例八
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)建符號矩陣(該方法不推
薦):例
a=[-1/sin(x),cos(x)…2],;'[2*x
,l+x…2]']%同列元素的位數(shù)必須一樣,可
用空可空格來補(bǔ)。例
b=[a,/[1,x2了:
?將數(shù)值矩陣轉(zhuǎn)化為符號矩陣
a=[2/3,sqrt(2);0.222Jog(3)]%2為
數(shù)值矩陣
b=sym(a)%把2轉(zhuǎn)化為符號矩陣b。
?符號矩陣索引和修改
b(2,2)%矩陣的索弓顯示矩陣b的
第2行第2列元素。
?符號矩陣的修改
b(2,2)=1og(9)J%矩陣的修改,
b(2,2)修改為log(9)。
?符號矩陣的運(yùn)算
(1)+、一、*、\、/運(yùn)算
(2)矩陣轉(zhuǎn)置('):聯(lián)
(3)行列式運(yùn)算:det(a)
%determinant的簡寫并算符號矩陣
的行列式。
(4)求逆inv(a):求矩陣a的逆。
(5)求矩陣的秩rank(a):求矩陣a的秩。
?符號函數(shù)極限(只限于sym型函數(shù))
limit(f,x,a):求表達(dá)式依x-a時的極限。
limit(f):求f在x—0時的極限.
而計(仃聲,昵伍):求表達(dá)式他*一2時的左
極限。
Iimit(f,x,a,5rightJ):求表達(dá)式由Ex—a時的
右極限。例
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)%沒極限
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)
?符號積分(適于sym型、char型)
(Dint(f,x):計算符號表達(dá)式f,自由變
量為x的不定積分.
(2)int(f,x,a,b):計算符號表達(dá)式f,自
由變量為x,從a到b的定積分
說明:符號表達(dá)式可以是符號函數(shù),
也可是符號矩陣。
例
symsx
int(sin(x),x)
int(sin(x),x,O,l)
int(sin(x),x,O,l)
說明:變量x省略時默認(rèn)對x積分。
a=sym(,[l/sin(x),cos(x)A2;
2*x,l+x人2「)
int(a,x)
,符號函數(shù)求導(dǎo)(適于sym型和char型)
(1)diff(f,x)%求表達(dá)式f,自由變量為x
的導(dǎo)數(shù)。說明:diff(a),a為向量時,
表示前項與后一項的親。
(2)diff(f,x,n)%求表達(dá)式f,自由變量
為x的n階導(dǎo)數(shù)。
symsx
f=sin(x)-2
diff(f,x)%變量x省略時默認(rèn)對x求導(dǎo)
diff(f,x,2)%x省略時默認(rèn)對x求導(dǎ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)化為浮點近似解,32位有效
數(shù)字。
?非線性方程(組)的符號解法
(1)fsolve(f,xo)洪中f為被求零點的
函數(shù),X。為初值。注:fsolve對sym型
函數(shù)無效;可用于有函數(shù)文件、字符
串、和inline定義的函數(shù);類似命令還
宥:fzeroo或用:
fsolve(T5x0foptions)
(2)slove(屆程1:'方程2,…).
例、求解下面非線性方程組
X1?0.7sifix1-0.2COSX2=0
X2-0.7COSX1+0.2sinx2=0
解首先編寫函數(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è):分別用solve和fsolve函數(shù)求方
程組
x"2*y"2-2*x-1=0
x"2-y2-1=0
的解,并進(jìn)行驗證。
兩個函數(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對x的jacobian
矩陣。
提示:利用函數(shù):jacobian(f,v),
其中v為自變量向量。
利用該雅可比函數(shù)求下面函數(shù)的
導(dǎo)數(shù)以及在(1,2,3)點的導(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);
?常微分方程的符號解(dsolve):
字符D代表對獨立變量導(dǎo)數(shù)d/dt,Dn代表對獨立變量的n
階導(dǎo)數(shù),
例求dy/dt=?ay和dy/dx=x的解
解dsolve(iDy=-a*y5)%得到通解,默認(rèn)自變量為匕
dsolve(tDy=-a*y5/y(0)=15)%給定了初始條件,求
特解。方程和初始條件用逗號分開,都用單引號引
起來。
y=dsolve(,Dy=xlX。;%通解
y=dsolveCDy=x;y(1)=2,Jx=%特解
?符號函數(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é)計算人
員所喜歡和追求的一項技術(shù)。把
結(jié)果用圖形描述出來,便于理解、
分析。
?二維繪圖命令
(1)plot(y):%若y是向量,就以向量的索
可為橫坐標(biāo),以向量的元素值為縱坐
標(biāo);
(2)plot(x,y):一般來說是繪制向量y的圖
形,橫坐標(biāo)為x的值,縱坐標(biāo)為y的值。
(3Lplot(x,y;J):這里表示用點線顯
Zj\O
?二維繪圖命令
(1加10*丫):%若丫是向量,就以向量的索引
為橫坐標(biāo),以向量的元素值為縱坐標(biāo);
(2)plot(x,y):一般來說是繪制向量y的圖形,
橫坐標(biāo)為x的值,縱坐標(biāo)為y的值。x,y的維
數(shù)相同
(3)plot(x,y,l):這里'「表示用離散點顯示。
(4)plot(xl,y1,x2,y2):xl,yl的維數(shù)相同,
x2,y2的維數(shù)相同。
例
x=-pi:0.1:pi
y=sin(x)
Plot(y)
holdon%保留上一個圖形
plot(x,y)
說明:在pl。t(x,y,、,)中圖形設(shè)置選項s的規(guī)
定
點或線的顏色標(biāo)記點的形式線型1
k(黃)r,(點)(實線)?
M(紫紅)]'o'(圓圈)Y(點線)
'c'(青)'X,(叉).-.’(點劃淺)
,1,
'r‘(紅)—一(盅線))
'g'(綠)
'b'(蘭),s'(正方形)
(白),d,(菱形)1
'k'(黑)(向下三角形)
L'(向上三角形)
''響左三龜?。?/p>
'〉'(向右身形)
'P'(五角星)
■(六角形)
點或線的顏色標(biāo)記點的形式線型
黃)(點)■(實線)
(紫紅)'o’(圓圈)(點線)
%,(青)飛’(叉)(點劃線)
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)%分別用虛黑線和
點劃紅線顯示兩條曲線。
(5)polar(0,ij:畫出極坐標(biāo)函
數(shù)r=?0)的肉形
例
cita=0:0.1*pi:4*pi;
r=cita+sin(cita/2)
polar(cita,r)
(6)refline(k,b):畫平面參考線,
k為斜率,b為在y軸的截距
(7)ezplot(T(x))畫出f(x)的圖形。例
ezplot('sin(x))結(jié)果是在12*pi,2*pi]上畫出
圖形;
ezplot(4sin(xy,[-1,3]),結(jié)果是在11,3]上畫出
圖形.
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]上畫出
圖形例fplot(&in(x)\[-1,3]),結(jié)果是在口3上畫
出圖形形(x)向為char型、inline型。
?三維圖形命令
(1)plot3(x,y,z):x,y,z為同維向量
時畫空間曲線,例畫出
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é)點時,它
可以畫出空間曲面z=f(x,y)的圖
形。
(3)mesh(x,y,z):畫出三維網(wǎng)格
圖。
(4)meshc(x,y,z):畫出三維網(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]
的范圍畫出x=x⑴,y=y(t),z=z(t)對應(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的范圍,畫出參激方程
x=x(u,v),y=y(u,v),z=z(u,v)的對應(yīng)的曲面。
(9)ezsurf:ezsurf與ezmesh的區(qū)另U類彳以于surf
與mesh的區(qū)別。例
ezmesh('r*cos⑴',T*sin(t)',TA2',[0,2*pi])
畫出拋物面圖形。
(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是啟動圖形保持功能,在已存
在的一張圖中添加曲線,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):其功能
是把一個面形分成mXn個小
圖形窗口,通過參數(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):對
二維圖形v=[a,b,c,d]淇中[a,b]和
[c,d]分別為x軸和y軸的范圍;對于
三維圖形曠二團(tuán)由上內(nèi)收用分別給出
x,y和z軸的范圍。例
(2)平面坐標(biāo)網(wǎng)格函數(shù)gridon/off:
作用是平面圖形帶有網(wǎng)格和取消網(wǎng)
寤。
五、程序設(shè)計
?MATLAB作為一種高級計算語言,
不僅可以做如上所講的那些工作,
還可以像basic,fortran,c等其它
高級計算機(jī)語言一樣進(jìn)行程序設(shè)
計,即編制以m為擴(kuò)展名的文本
文件(簡稱M文件)。
?M文件的形式
(1)命令式(script):命令式文
件就是命令行的簡單疊加,
MATLAB就會自動按順序執(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)用問題,它的第
一句以function語旬為引導(dǎo)。木能
直接運(yùn)行,只能調(diào)用。
例%f.m文件名與函數(shù)名必須一致
functionf(x)
f=2*xA2+4*x+6
在命令窗口中輸入:f(O),f(1O)可以看
出結(jié)果。
例、建立一個名字為f的函數(shù)文件,該
函數(shù)為
f=cos2(x)
試計算該函數(shù)在x=1:10的函數(shù)值,
并給出離散點(x,f(x))的圖形。
(大家一起討論)
例、一個函數(shù)文件可以定義個函數(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)入到工作
間。
控制語句
(1)循環(huán)語句
(a)for循環(huán):例
s=0;
fork=1:1:10%初始值、步長和最大
限值
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選擇語句:
例
編寫分段函數(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語句:例
?fori=l:10
?ifi<8
?a(i)=100
?end
?end
?結(jié)果:a=
100100100100100100100
(e)if...elseif...elseif...else...end^
重選擇語句:例編寫函數(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
語句
case2
語句
otherwise
語句
end
例、
?fori=1:6
?switchi
?case1
?a=1
?case2
?a=2
?case3
?a=3
?case4
?a=4
?otherwise
?b=0
?end
?end
例已知n=自己的真實學(xué)號,在xoy平面
有點
Aj二(i,0)
Bi=(i,n)
(i=0,1,2,??????,n)
現(xiàn)要畫連接AjB的線段(i,j=0,1,…,
n),試給出其MATLAB程序。
解現(xiàn)就學(xué)號為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ǔ)上,再加上點
Ci=(O,i),Di=(n,i)
(i=0,1,2,……,n)
現(xiàn)要畫連接AiBj和CiBj的線段
(i,j=0,1,…,n),試給出其MAT
LAB程序。把運(yùn)行結(jié)果得到的圖像,
存放到WORD文件,文件名字取為:
真實姓名—真實學(xué)號,然后發(fā)送到
信箱:xtxyshx@126.com
六、主要命令匯總
1、常用信息
?help:在線幫助(顯示在命令窗)。
?helpwin:在線幫助(獨立窗口顯示)。
?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:打開頁面瀏覽器加載文件。
5、數(shù)據(jù)類型
?double:雙精度類型
?sym:符號型
?Inline:內(nèi)聯(lián)對象
?char:字符數(shù)組或字符串。
?Uint8:無符號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為向量
時得到向量平均值,結(jié)果為一
個數(shù);a為矩陣時,進(jìn)行每列
平均,得到一個向量。
?sum:元素和。sum(a),a為向量時得
到該向量各元素之和,結(jié)果為一
個數(shù);a為矩陣時,進(jìn)行每列
求和,得到一個向量。
?prod:元素積。prod(a)當(dāng)a為向量和
矩陣時的情況,類似于max(a)。
?cumsum:元素累和。cumsum(a),a
可為向量,也可為矩陣。
?cumprod:元素累積。a可為向量,
也可為矩陣。
7、基本矩陣函數(shù)
?zeros:零矩陣函數(shù)。
?ones:全1矩陣。
?eye:單位矩陣。
?rand:隨機(jī)數(shù)、向量、矩陣.
?linspace:線性等分向量。
8、基本數(shù)組操作
?size:矩陣大小。
?length:數(shù)組長度。
?isempty:判斷是不是空矩陣。
?isequal:判斷數(shù)組是否相等。
isequal(a,b)o
?isnumeric:判斷是否為數(shù)值矩陣。
?reshape:矩陣重置。
?tril:抽取下三角部分。
?triu:抽取上三角部分。
?flipk左右方向翻轉(zhuǎn)矩陣(flip:翻
轉(zhuǎn))。
?flipud:上下方向翻轉(zhuǎn)矩陣。
?rot90:逆時針把矩陣旋轉(zhuǎn)90度。
?find(x):[i,j]=find(x)查找x非零元下標(biāo)。
9、專用變量和常量
ans:最新答案。
pi:圓周率。
i,j:復(fù)數(shù)單位。
inf:無窮大。
NaN:不定數(shù)。
isnan:判斷不定數(shù)。
?isinf:判斷無窮大元素。
?isfinite:判斷有限大元素。
10、指數(shù)、對數(shù)函數(shù)
?exp:e指數(shù)函數(shù)。
?pow2:以2為底的塞函數(shù)。
?sqrt:平方根函數(shù)。
11、舍入函數(shù)和剩余函數(shù)
?fix:朝零方向舍入為整數(shù)。
?floor:朝負(fù)方向舍入為整數(shù)。
?ceil:朝正方向舍入為整數(shù)。
?round:四舍五入為整數(shù)。
?sign:符號函數(shù)。
?mod:無符號求余函數(shù)。mod(3,2)=1
?rem:帶符號求余函數(shù)。
12、復(fù)數(shù)函數(shù)
?abs:求模。
?conj:求共朝函數(shù)(conjugate)。
?angle:相角函數(shù)。
?imag:復(fù)矩陣虛部。
?real:復(fù)矩陣實部。
?isreal:實矩陣判斷函數(shù)。
12、矩陣函數(shù)
?norm:矩陣或向量范數(shù)。
?normest響量、矩陣2范數(shù)。
?rank:矩陣的秩。
?det:矩陣行列式的值。
?trace:矩陣的跡(主對角線元素之和)。
?inv:矩陣逆。
13、特征多項式、特征值
?poly:特征多項式。
?poly2sym:多項式表示。
,eig:特征值和特征向量。
?eigs:特征值。
14、矩陣函數(shù)
?expm:矩陣指數(shù)。
?logm:矩陣對數(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)%注意該語句必須在圖形顯
示語句的后面
說明:二維圖形是類似的。
例2、axis1控制字符串,):可以選
擇
不同的字符串完成對坐標(biāo)軸的操作。
控制字符串有:
(1)auto:自動模式,使得圖形的坐
標(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:取消對坐標(biāo)軸的一切設(shè)置,
包括系統(tǒng)的自動設(shè)置。
(7)on:恢復(fù)對坐標(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:雙對數(shù)坐標(biāo)圖。
?semilogx:半對數(shù)(x)坐標(biāo)圖。
?semilogy泮對數(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:符號函數(shù)圖。
?fplot:繪制字符串指定的函數(shù)名的函
數(shù)圖。如fplotCsin(x),,[2,3])。
?pie:餅圖。
?plotmatrix:繪矩陣點圖。
?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)畫
二維彗星線)。
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/)%畫球面
axis(6equaP)%坐標(biāo)軸刻度相同
例
?[x,y,z]=sphere(50);mesh(x+l,y+2,z+2)畫出以(1,
2,2)為中心半徑為1的森面;
?[x,y,z]=sphere(50);mesh(x,y,abs(z))畫出以(0,0,0)
為中心半徑為1的上半個球面;
?[x9y,z]=sphere(50);
mesh(2*x,2*y,2*abs(z)),畫出以(0,0,0)為中
心的半徑為2上半個球面;
[x,y9z]=sphere(50);
?mesh(2*x,2*y,2*abs(z)),畫出以(0,0,0)為中
心的半徑為2上半個球面;
例、繞地球運(yùn)動的飛行物
?[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)圖
對于三維圖形自變量是二維的,對
于三個自變量的函數(shù)w=fx,y,z),其
其圖形應(yīng)該是四維的,由于我們所
處的空間和思維的局限性,在計算
機(jī)屏幕上只能表現(xiàn)出三維空間。為
了表現(xiàn)四維圖像,可利用三維實體
的四維切片色圖,用三維實體上的
顏色來描述函數(shù)值的變化情況。
?MATLAB中用slice函數(shù)來完成
(1)slice(x,y,z,w,sx,sy.sz):繪制向
量sx,sy,sz中的點沿x,y,z軸方向的切片
圖,W的大小決定了每一點的顏色。
(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. 本站所有資源如無特殊說明,都需要本地電腦安裝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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版小學(xué)四年級數(shù)學(xué)上期教案
- 2024高中地理第六章人類與地理環(huán)境的協(xié)調(diào)發(fā)展第1節(jié)人地關(guān)系思想的練習(xí)含解析新人教版必修2
- 2024高中生物第2章動物和人體生命活動的調(diào)節(jié)第3節(jié)神經(jīng)調(diào)節(jié)與體液調(diào)節(jié)的關(guān)系課堂演練含解析新人教版必修3
- 2024高中語文第二單元古代記敘散文第5課荊軻刺秦王學(xué)案新人教版必修1
- 2024高考地理一輪復(fù)習(xí)第五部分選修地理-重在遷移第43講環(huán)境保護(hù)課時作業(yè)含解析新人教版
- 2024高考地理一輪復(fù)習(xí)第一部分自然地理-重在理解第一章行星地球第3講地球的宇宙環(huán)境及地球的圈層結(jié)構(gòu)學(xué)案新人教版
- 誤解以后心健教案
- (4篇)2024年幼兒園教師年度個人總結(jié)
- 施工測量控制措施
- 2024年渤海船舶職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測試歷年參考題庫含答案解析
- 教育管理學(xué)課件-管理、教育管理和教育管理學(xué)之概述
- 2025年廣西事業(yè)單位聯(lián)考招聘高頻重點提升(共500題)附帶答案詳解
- 真需求-打開商業(yè)世界的萬能鑰匙
- 2025年中儲糧儲運(yùn)限公司公開招聘高頻重點提升(共500題)附帶答案詳解
- 2024年考研英語一閱讀理解80篇試題及答案
- 風(fēng)箏產(chǎn)業(yè)規(guī)劃專項研究報告
- 酒店住宿投標(biāo)書
- GB/T 451.2-2023紙和紙板第2部分:定量的測定
- 大型集團(tuán)公司商學(xué)院培訓(xùn)體系建設(shè)方案
- 職工退休提取住房公積金申表版
- 電力電子技術(shù)全套課件
評論
0/150
提交評論