




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、MATLAB 基礎(chǔ)知識(shí)一、MATLAB簡(jiǎn)介二、MATLAB基礎(chǔ)知識(shí)1、命令窗口是用戶與MATLAB進(jìn)行交互作業(yè)的主要場(chǎng)所,用戶輸入的MATLAB交互命令均在命令窗口執(zhí)行。例如:在MATLAB命令窗口下鍵入a=3 2 3;4 7 6;7 5 9按回車鍵后,顯示結(jié)果a= 3 2 3 4 7 6 7 5 92、求逆矩陣命令格式:變量=inv(參數(shù))例如:輸入b=inv(a),按回車后,顯示b= 1.3750 -0.1250 -0.37500.2500 0.2500 -0.2500-1.2083 -0.0417 0.5417 3、MATLAB系統(tǒng)還具有保存歷史紀(jì)錄的功能,它將本次啟動(dòng)MATLAB系統(tǒng)之
2、后,用戶輸入的命令和創(chuàng)建的所有變量的值保存起來,用戶通過方向鍵可查找所需的命令。MATLAB提供了存儲(chǔ)變量和刪除變量的命令。SAVE 文件名變量名1,變量名2,.功能:將命令中的變量保存在給出的文件中。說明:(1)若過文件名省略,默認(rèn)保存在MATLAB.MAT中。 (2)若變量名省略,則保存所有的變量到指定的文件中。 (3)若文件名和變量名都省略,則保存所有定義過的變量到MATLAB.MAT中。例如:SAVE AA.MAT a b c %將變量a b c保存在文件AA.MAT中。 SAVE BB.MAT % 將所有的變量保存到文件BB.MAT中。 SAVE % 將所有變量保存到文件MATLAB
3、.MAT中。clear 變量名1 變量名2,.功能:刪除指定的變量。說明:若變量名表省略,表明刪除當(dāng)前工作空間中的所有變量。例如:clear a b c %刪除變量a b c clear %刪除當(dāng)前工作空間的所有變量。MATLAB還提供了一些命令,專門管理和控制命令窗口。例如:clc 格式:clc功能:清除命令窗口。home 格式:home功能:光標(biāo)移動(dòng)到左上角who格式:who功能:查看當(dāng)前的所有變量,只給出變量名。whos格式:whos功能:查看當(dāng)前的所有變量,給出變量的詳細(xì)信息。信息同變量瀏覽器。clear格式:clear 變量名功能:刪除后面列出的變量,如果變量名省略,則刪除所有的變量
4、。4、MATLAB中的常量MATLAB提供了整數(shù)、實(shí)數(shù)、復(fù)數(shù)和字符四種類型數(shù)據(jù)。對(duì)應(yīng)的常量類型也是這四種。實(shí)數(shù)在屏幕顯時(shí)默認(rèn)的小數(shù)位數(shù)為4位??梢杂妹罡淖儗?shí)數(shù)的顯示格式。命令format格式:format 格式例如:format long :輸出實(shí)數(shù)為16位 format short e :5位加指數(shù) format long e : 16位加指數(shù) format rat : 有理數(shù)近似矩陣操作1、 提取矩陣的元素例如:A=1 2 3 3; 3 2 4 1; 3 4 5 6執(zhí)行b=A(1,2),結(jié)果為:b= 2執(zhí)行v=A(1,2,3,4),結(jié)果為:v= 3 34 12、 矩陣的修改例如:執(zhí)行A(
5、1,2)=3后,結(jié)果為:A= 1 3 3 3 3 2 4 13 4 5 6作用:修改了第一行第二列的元素值。執(zhí)行 A(: ,3)= 后,結(jié)果為:A= 1 3 33 2 13 4 6相當(dāng)于刪除了第三列。接著執(zhí)行A(2, :)= 后,結(jié)果為:A= 1 3 3 3 4 6 相當(dāng)于刪除了第二行。說明: 只能刪除矩陣的某一行或某一列, 不能刪除某一個(gè)元素。3、 有關(guān)矩陣的其他操作(1) 提取矩陣的上三角矩陣和下三角矩陣A= 1 3 34 2 14 4 6執(zhí)行B=triu(A)后,結(jié)果為:B= 1 3 30 2 10 0 6執(zhí)行C=tril(A)后, 結(jié)果為:C= 1 0 04 2 04 4 6(2) 提
6、取矩陣的對(duì)角元素執(zhí)行B=diag(A)后,結(jié)果為:B= 1 2 6(3) 利用向量建立對(duì)角矩陣執(zhí)行C=diag(B)后,結(jié)果為:C= 1 0 0 0 2 0 0 0 6(4) 矩陣的秩、特征向量和特陣值 A= 1 3 3 4 2 4 3 4 5 執(zhí)行rank(A)后,結(jié)果為: %求矩陣的秩ans=2執(zhí)行eig(A)后, 結(jié)果為: %求矩陣的特征值ans= 10.0000-2.0000-0.0000執(zhí)行v, d=eig(A)后, 結(jié)果為: %求矩陣的特征向量和對(duì)應(yīng)的特征值組成的對(duì)角陣v = -0.4243 0.5883 0.4243 -0.5657 -0.7845 0.5657 -0.7071
7、0.1961 -0.7071d = 10.0000 0 0 0 -2.0000 0 0 0 -0.0000(5) 矩陣的算術(shù)運(yùn)算和矩陣元素之間的運(yùn)算 a= 1 2 3 2 b= 2 1 1 2 執(zhí)行c=a+b后,結(jié)果為:c= 3 3 4 4執(zhí)行d=a-b后,結(jié)果為:d= -1 1 2 0 執(zhí)行e=a*b后,結(jié)果為:執(zhí)行f=a.*b后,結(jié)果為:f= 2 2 3 4執(zhí)行g(shù)=a.b后,結(jié)果為:g= 2 1/2 1/3 1執(zhí)行h=a./b后,結(jié)果為:h= 1/2 2 3 1執(zhí)行j=a.b后,結(jié)果為:j= 1 2 3 4執(zhí)行k=b.3后,結(jié)果為:k= 8 1 1 8 試驗(yàn)二 MATLAB程序設(shè)計(jì)1、關(guān)系
8、運(yùn)算符< 小于 <= 小于等于 >大于 >=大于等于 = =等于 =不等于格式:A 關(guān)系運(yùn)算符 B例如:a=-1 2 4;5 4 8; b=0 1 5;5 1 2;則 c=a>bc=0 1 0 0 1 1 2、邏輯運(yùn)算符邏輯與:& , 格式:c=a&b邏輯或:| ,格式:c=a|b邏輯非: ,格式:c=a例如:c=a&bc=0 1 1 1 1 1c=a|bc=1 1 1 1 1 13、程序的控制結(jié)構(gòu)選擇結(jié)構(gòu):(1)if語句格式1: if <表達(dá)式> <語句組1> end格式2: if <表達(dá)式> <
9、語句組1> else <語句組2>end格式3: if <表達(dá)式> <語句組1> elseif <表達(dá)式2> <語句組2>.elseif <表達(dá)式n> <語句組n>else <語句組n+1>end格式4:if <表達(dá)式> if <表達(dá)式1> <語句組1> else <語句組2>endelse if <表達(dá)式2> <語句組3> else <語句組4>endend(2)switch語句格式:switch 表達(dá)式 c
10、ase 表達(dá)式值1語句組1 case 表達(dá)式值2語句組2. case 表達(dá)式值n語句組n otherwise語句組n+1 end例1:data=input(input the value of data);n=mod(data, 5);switch n case 1 y=1; case 2 y=2; case 3 y=3; case 4 y=4 otherwise y=n;end y 例2:var=input(input a number);switch var case 1disp(1) case 2,3,4 disp(2 or 3 or 4) case 5 disp(5) otherwis
11、e disp(something else)end(3)while 語句格式:while(表達(dá)式) 語句組 end例3:使用while語句求1+2+3.+100。 i=1;sum=0;while(i<=100) sum=sum+i: i=i+1; endstr=計(jì)算結(jié)果為:num2str(sum);(4)for循環(huán)語句格式:for 循環(huán)變量=初始值:增量:終值 語句組; end例4:使用for語句求1+2+3.+100。 sum=0; for i=1:100 sum=sum+i; end str=計(jì)算結(jié)果為:num2str(sum); disp(str)4、函數(shù)M-文件 格式: func
12、tion 輸出參數(shù)表=函數(shù)名(形式參數(shù))語句組 end說明:(1)函數(shù)M-文件獨(dú)自保存為一個(gè)文件,文件名就是函數(shù)名。 (2)調(diào)用格式:輸出參數(shù)表=函數(shù)名(實(shí)際參數(shù)) (3)輸出參數(shù)可以是多個(gè)變量,兩兩之間用逗號(hào)隔開,它們表示要計(jì)算的項(xiàng); (4)形式參數(shù)是一組形式變量,本身沒有任何意義,也不代表任何內(nèi)容,只有在調(diào)用時(shí)賦予它實(shí)際值,才有意義。例5:求向量的平均值和標(biāo)準(zhǔn)差 function mean, stdev=stat(x) n=length(x); mean=sum(x)/n; stdev=sqrt(sum(x.2)/n-mean.2); end 說明:函數(shù)M-文件保存為stat.m。leng
13、th(x):求向量x的長(zhǎng)度。 sum(x):求向量x 中各個(gè)元素的總和,如果x是一矩陣,則按列求和。 sqrt(x):求x的平均值。調(diào)用:重新打開一m文件,輸入:x=1 2 3;6 2 1;-1 -6 -4; mean, stdev=stat(x); 然后保存為任一文件名即可。(除函數(shù)名外)試驗(yàn)三函數(shù)極限與導(dǎo)數(shù)1、函數(shù)的極限格式:limit(表達(dá)式,變量,常量,right和left)含義:當(dāng)變量趨向于常量時(shí),表達(dá)式的左極限或右極限。說明:(1)當(dāng)變量省略時(shí),默認(rèn)的變量是x,沒有x時(shí),找字母表中離x最近的字母作為變量。 (2)當(dāng)常量省略時(shí),默認(rèn)為0。 (3)在不說明是左極限還是右極限時(shí),求表達(dá)式
14、的極限。例如: syms x a t hlimit(sin(x)/x);limit(x-2)/(x2-4),2);limit(1+x)/x)(2*x),x,inf);v=(1+a/x)x,exp(-x);limit(v,x,inf,left);2、導(dǎo)數(shù)與微分求導(dǎo)公式格式:diff(表達(dá)式,變量,階數(shù))功能:它表示將“表達(dá)式”按照“變量”求“階數(shù)”階導(dǎo)數(shù)。說明:若階數(shù)省略,則表示求一階導(dǎo)數(shù)。例如:syms xf=log(x);diff(f)diff(f,4)g=(x+exp(x)*sin(x)(1/2);diff(g)pretty(ans)diff(g,2)simplify(ans)pretty
15、(ans)3、積分格式:int(被積函數(shù),積分變量,積分下限,積分上限)功能:求“被積函數(shù)”對(duì)“積分變量”從“積分下限”到“積分上限”的定積分。說明:當(dāng)積分上下限省略時(shí),求“被積函數(shù)”的不定積分。例如: syms x a bint(x*log(x)int(1/(1+sqrt(1-x2)int(cos(log(x)eval(int(exp(-x2),x,-1,1)eval(int(exp(-x2),x,-inf,1)eval(int(exp(-x2),x,-inf,inf)試驗(yàn)四 微分方程、多元函數(shù)微積分一、解方程1、代數(shù)方程格式:solve(f,t)功能:對(duì)變量t解方程f=0,t缺省時(shí)默認(rèn)為x
16、或最接近字母x的符號(hào)變量。例如:求解一元二次方程f=a*x2+b*x+c的實(shí)根,執(zhí)行 solve(f,x)結(jié)果為: ans=1/2/a*(-b+(b2-4*a*c)(1/2) 1/2/a*(-b-(b2-4*a*c)(1/2)又如:求解一元二次方程g=4*x2+6*x-9的實(shí)根,執(zhí)行 solve(g,x); eval(ans)結(jié)果為:0.9271 , -2.42712、微分方程(1)常微分方程的同解當(dāng)微分方程中不含任何附加條件(初值條件)時(shí),其解就是該方程的通解。格式:dsolve(微分方程, 自變量)說明:其中“微分方程”和“自變量”都按字符串形式給出,并用單引號(hào)括住,且當(dāng)自變量為t時(shí)可省略
17、。例如:syms x y z t a bdsolve(Dy-x*Dy=a*(y2+Dy),x)注:Dy<=>y, D2y<=>y”, D3y<=>y”,依次類推。dsolve(D3y=exp(2*x)-cos(x),x)(2) 常微分方程的特解格式:dsolve(微分方程,初值條件1,初值條件2,.,自變量)說明:y(x0)=y0<=>y|x=x0=y0 ;Dy(x0)=y1<=> y|x=x0=y1 。例如:syms x y z t a bdsolve(Dx=a*x*(b-x),x(0)=x0) ; 自變量為tdsolve(x*D2
18、y+Dy=0,y(1)=1, Dy(1)=6,x)(3)常微分方程組求解對(duì)于無初值條件的微分方程組,其通解的求法格式為:dsolve(微分方程1,微分方程2,自變量)對(duì)于帶初值條件的微分方程組,其特解的求解格式為:dsolve(微分方程1,微分方程2,條件1,條件2,自變量)例如:求 的通解和特解,其命令如下:syms x f g hf1,g1=dsolve(D2f+3*g=sin(x), Df+Dg=cos(x),x)f,g=dsolve(D2f+3*g=sin(x), Df+Dg=cos(x),Df(2)=0,f(0)=0,g(0)=0,x)二、多元函數(shù)微積分1、多元函數(shù)極限這里我們僅對(duì)極
19、限存在的函數(shù),求沿坐標(biāo)軸方向的極限。,即將求多元函數(shù)極限問題,化成求多次單極限的問題。例如:syms x y z t a blimit(limit(x2+y2)/(sin(x)+cos(y),0),pi)limit(limit(limit(x+y*z+exp(sin(x*z)/(x+y/z),1),2),3)2、多元函數(shù)偏導(dǎo)數(shù)對(duì)多元函數(shù)中的某一變量求偏導(dǎo)數(shù),等價(jià)于將其余變量看作常量,僅對(duì)該變量求導(dǎo)數(shù)。syms x y z t u vdiff(x3+2*x*y+y2-6,x)diff(diff(x3+2*x*y+y2-6,x),y)試驗(yàn)五 繪圖和級(jí)數(shù)一、化簡(jiǎn)和代換simplify 利用各種恒等式
20、化簡(jiǎn)代數(shù)式expand 將乘積展開為和式factor 把多項(xiàng)式轉(zhuǎn)換為乘積形式collet 合并同類項(xiàng)horner 把多項(xiàng)式轉(zhuǎn)換為嵌套表示形式 例如:合并同類項(xiàng): collect(3*x3-0.5*x3+3*x2) 結(jié)果為: ans=5/2*x3+3*x2進(jìn)行因式分解執(zhí)行: factor(3*x3-0.5*x3+3*x2) 結(jié)果為: ans=1/2*x2*(5*x+6)展開多項(xiàng)式執(zhí)行: expand(x-a)*(x-b) 結(jié)果為: ans=x2-x*b-a*x+a*b把多項(xiàng)式轉(zhuǎn)換成嵌套表示形式執(zhí)行: horner(x3-6*x2+11*x-6)結(jié)果為: ans=-6+(11+(-6+x)*x)*
21、x二、繪圖命令matlab 提供了兩個(gè)非常簡(jiǎn)便的繪圖命令,分別如下:1、格式:ezplot(f, xmin, xmax) 功能:繪出以x為橫坐標(biāo)的曲線f,x在xmin, xmax內(nèi)取值,當(dāng)xmin和xmax缺省時(shí),默認(rèn)xmin=-2*pi,xmax=2*pi。 例如:描述函數(shù)cos(2*x)在區(qū)間-2*pi, 2*pi上的圖形,執(zhí)行命令如下:ezplot(cos(2*x), -2*pi, 2*pi)2、格式:plot(x, y, 格式串, ) 功能:繪出以x為橫坐標(biāo)y為縱坐標(biāo)的散點(diǎn)圖或折線圖。其中,x和y為同維向量,“格式串”指定圖形格式,包括顏色、線形等。 例如:執(zhí)行 x=1 2 3 5 8
22、; y=1 14 19 22 37; plot(x, y, -*k)其中,-*k表示黑色實(shí)線,點(diǎn)用“*”表示。初等函數(shù)的圖形:x=linspace(-pi,pi,60);z=linspace(0.1,2*pi,60);t=linspace(-1,1,60);u=linspace(-10,10,60);y1=x; y2=x.2; y3=x.3;y4=x.4;subplot(3,2,1);plot(x,y1,-,x,y2,:,x,y3,-.,x,y4,- -);axis(-pi pi -2 5);text(-0.5,4,冪函數(shù));三、級(jí)數(shù)1、常數(shù)項(xiàng)級(jí)數(shù)格式:symsum(一般項(xiàng),變量,起始,終止)
23、功能:用指定變量從“起始”到“終止”求級(jí)數(shù)和。當(dāng)“終止”值取有限值時(shí),可求出級(jí)數(shù)指定項(xiàng)數(shù)的部分和。例如:symsum(1/n2,n,1,10);symsum(1/n,n,1,10);symsum(1+n)/(1+n2),n,1,10);當(dāng)“終止”值為inf時(shí),可求出級(jí)數(shù)的收斂和。例如:symsum(1/n2,n,1,inf);symsum(1/n,n,1,inf);symsum(1+n)/(1+n2),n,1,inf);當(dāng)“終止”值為變量,比如取m時(shí),可求得級(jí)數(shù)部分和數(shù)列的一般項(xiàng),該一般項(xiàng)以m為變量,當(dāng)時(shí),取得極限即為收斂和。例如:symsum(1/n,n,1,m)symsum(1/n2,n,
24、1,m);symsum(1+n)/(1+n2),n,1,m);2、冪級(jí)數(shù)冪級(jí)數(shù)的收斂半徑:,求的收斂半徑,用與求常數(shù)項(xiàng)級(jí)數(shù)收斂和相同的辦法求冪級(jí)數(shù)的收斂和函數(shù)。例如:syms x nlimit(n+1)/n,n,inf)symsum(-1)(n-1)*xn/n,n,1,inf)limit(2(n+1)*(n+1)/(2n*n),n,inf)symsum(x-1)n/(2n*n),n,1,inf)3、將函數(shù)展開成冪級(jí)數(shù)格式:taylor(函數(shù),階數(shù)n,x0點(diǎn),變量x)功能:將給定“函數(shù)”在“x0點(diǎn)”處按“變量x”展開成n-1階的泰勒級(jí)數(shù)。說明:(1)階數(shù)n省略,默認(rèn)為6; (2)x0點(diǎn)省略,默認(rèn)
25、為0; (3)“變量x”省略,默認(rèn)用findsym(f)查找默認(rèn)變量。 (4)后面的三個(gè)參數(shù)順序還可以打亂次序,但若x0點(diǎn)和階數(shù)均為整數(shù)時(shí),必須階數(shù)在前,x0點(diǎn)在后。例如:taylor(exp(-x),x,8,7)表示將在x0=7點(diǎn)處展開為七階泰勒級(jí)數(shù)。taylor(exp(x) %將在x=0點(diǎn)展開成5階泰勒級(jí)數(shù)。taylor(exp(-x2),x,n) %將在x=n點(diǎn)展開成5階泰勒級(jí)數(shù).taylor(cos(x),8) %將cos(x)在x=0點(diǎn)展開成7階泰勒級(jí)數(shù)注:參數(shù)終止給出一個(gè)整數(shù),認(rèn)為是階數(shù)。四、傅立葉級(jí)數(shù)三角級(jí)數(shù):其中, (n=0,1,2,3,), (n=0,1,2,3,),正弦級(jí)
26、數(shù): (n=0,1,2,3,)余弦級(jí)數(shù): (n=0,1,2,3,)在matlab中,編寫以下四個(gè)函數(shù)mfourier(f), msin(f), mcos(f)和mlfourier(f, l),分別用于求函數(shù)f的傅立葉級(jí)數(shù)、正弦級(jí)數(shù)、余弦級(jí)數(shù),以及周期為2l的傅立葉級(jí)數(shù)的系數(shù)。function a0, an, bn=mfourier(f)syms n xa0=int(f, -pi, pi)/pi;an=int(f*cos(n*x), -pi, pi)/pi;bn=int(f*sin(n*x), -pi, pi)/pi;endfunction bn=msin(f)syms n xbn=int(f*
27、sin(n*x), -pi, pi)/pi;endfunctiona0, an=mcos(f)syms n xa0=int(f, -l, l)/pi;an=int(f*cos(n*x), -pi, pi)/pi;endfunction a0, an, bn=mlfourier(f, l)syms n xa0=int(f, -pi, pi)/pi;an=int(f*cos(n*pi*x/l), -l, l)/l;bn=int(f*sin(n*pi*x/l), -l, l)/l;end說明:以上四個(gè)函數(shù)分別保存在四個(gè)M-文件中,以函數(shù)名作為文件名。試驗(yàn)六 方程組求解和數(shù)值微積分一、欠定方程組的求解
28、若有方程組AX=B,其中X為m個(gè)變量構(gòu)成的列向量,一共有n個(gè)方程,則A為n*m矩陣。若rank(A)<m,則方程有無窮多組解,稱為欠定方程組。若b中元素全為0,稱方程組為其次線形方程組。1、齊次線性方程組的求解如方程組:在MATLAB中輸入A=1 -2 3 -4;0 1 -1 1;-1 0 -1 2;1 -3 4 -5;a=null(A) %返回矩陣A的零空間的標(biāo)準(zhǔn)正交基組成的矩陣a。a= 0.7888 -0.2110 -0.4999 -0.2889 -0.2110 -0.7888 0.2889 -0.4999因而,原方程的通解為: %其中k1與k2為任意常數(shù)。 2、欠定方程組的求解從理
29、論上說,欠定方程組有無窮多組解。這時(shí),我們?nèi)匀豢捎脧V義逆矩陣法和矩陣除法求解方程組。前者所求的解是所有解種范數(shù)最小的一個(gè),而后者求的解是所有解中含零個(gè)數(shù)最多的一個(gè)。他們求出的解是所有解系中的一個(gè)特解。要求其通解,則先解其對(duì)應(yīng)的齊次方程的通解,然后再加上自身的一個(gè)特解即可。如:A=1 -2 3;0 1 -1;-1 0 -1;1 -3 4; b=4 -3 -4 1; x=pinv(A)*b x= -2.2549 1.2157 1.0392 y=Ab waring: rank deficient, rank=2 tol=4.6151e-015. y= 0 3.4706 3.2941 B=null(A
30、) B= 0.5774 -0.5774 -0.5774故方程組的通解為 或 二、數(shù)值微積分 1、數(shù)值微分 多項(xiàng)式求導(dǎo)法求微分 若已知函數(shù)在某些接點(diǎn)處的值,(1)只要用曲線擬合法得到一個(gè)函數(shù)近似多項(xiàng)式(即用多項(xiàng)式近似代替函數(shù)),(2)再對(duì)該多項(xiàng)式求微分,(3)然后對(duì)微分后的多項(xiàng)式求值,便可以方便的求出在擬合范圍內(nèi)的任一點(diǎn)處的任意階微分。 幾個(gè)命令: polyfit(x, y, n)利用數(shù)據(jù)點(diǎn)向量x和y擬合一個(gè)n次多項(xiàng)式,返回多項(xiàng)式系數(shù)向量,系數(shù)由高次方朝低次方順序排列。polyder(P)返回多項(xiàng)式P求導(dǎo)后對(duì)系數(shù)向量。polyval(P, x0)計(jì)算多項(xiàng)式P在點(diǎn)x0處的值。P是多項(xiàng)式系數(shù)。根據(jù)上
31、述幾個(gè)函數(shù),我們編寫一個(gè)利用多項(xiàng)式方式求任何函數(shù)在任一點(diǎn)處的任意階導(dǎo)數(shù)的近似值。fpder(f, x0, n, m, d, k)f: 欲求導(dǎo)函數(shù)的符號(hào)表達(dá)式;x0: 固定點(diǎn),即求函數(shù)在該點(diǎn)處的導(dǎo)數(shù);n: 表示求導(dǎo)階數(shù),默認(rèn)為一階導(dǎo)數(shù);m: 為多項(xiàng)式最高次數(shù),表示用m次多項(xiàng)式近似模擬給定函數(shù),默認(rèn)為6;d: 為半?yún)^(qū)間長(zhǎng)度,即在x0-d, x0+d區(qū)間內(nèi)擬合多項(xiàng)式,默認(rèn)值為1;k: 為區(qū)間采樣點(diǎn)數(shù),即在閉區(qū)間x0-d, x0+d上采k+1個(gè)點(diǎn)來擬合多項(xiàng)式,默認(rèn)值為20;函數(shù)如下:function y=fpder(f, x0, n, m, d, k)if nargin<6 k=20;endif
32、 nargin<5 d=1.0;endif nargin<4 m=6;endif nargin= =2 n=1;endx=x0-d:2*d/k:x0+d;y=eval(f);p=polyfit(x, y, m);pp=p;for n1=1:n pp=polyder(pp);endy=polyval(pp,x0);例如:fpder(sin(x), pi/4, 3, 10, 0.5, 10)fpder(exp(-x), 1)fpder(exp(-x.2), 1, 5, 10, 0.5)2、數(shù)值積分 數(shù)值積分就是對(duì)那些不能求積分或不易求積分的函數(shù)提供的一種較精確的積分方法。在MATLAB
33、中,有兩個(gè)函數(shù)是專門求數(shù)值積分的函數(shù),分別是: quad(函數(shù)名串, a, b, tol, trace) 和 quad8(函數(shù)名串, a, b, tol, trace)說明:函數(shù)名串是matlab內(nèi)建函數(shù)的函數(shù)名或用戶自定義函數(shù)的函數(shù)名; a為積分下限;b為積分上限; tol 為數(shù)值方法允許誤差;默認(rèn)為10-3; trace一般為零。 quad8()和quad()的用法完全相同。但在功能上有所區(qū)別:前者用newton-cotes法求數(shù)值積分,后者用simpson法求數(shù)值積分。例如:quad(sin,0,pi)quad(sin,0,pi,1e-6)quad(log,0.1,1)再定義兩個(gè)函數(shù)f1
34、(x)和f2(x)如下:function y=f1(x)y=1./(1+x.4);function y=f2(x)y=log(1+tan(x);則有 quad(f1,0,1) quad(f2,0,pi/4) 3、微分方程數(shù)值解一般情況下,除了簡(jiǎn)單的微分方程外,要找出微分方程解的解析表達(dá)式是極其困難的,有時(shí)甚至是不可能的。微分方程數(shù)值解法是能夠計(jì)算出解在若干個(gè)離散點(diǎn)上近似結(jié)果的一種通用方法。MATLAB提供了一些求解微分方程(組)的數(shù)值方法函數(shù)。ode23( ) %低階法解非剛性微分方程ode113( ) %變序法解非剛性微分方程ode15s( ) %變序法解剛性微分方程ode23s( ) %高
35、階法解剛性微分方程 以ode23( )函數(shù)為例,其格式為 ode(F,Tspan, y0,OPTIONS)說明:(1)F為函數(shù)名,即要將微分方程存入一個(gè)函數(shù)文件中,然后調(diào)用。(2)Tspan為一向量t0,tm或t0,t1,t2,tn,前者是求解區(qū)間,后者是指定要求解的點(diǎn),必須按升序或降序排列。(3)y0為初值條件,即;(4)OPTIONS可以制定一系列可選項(xiàng),包括允許絕對(duì)誤差、允許相對(duì)誤差、是否作圖等等。當(dāng)該項(xiàng)省略時(shí),使用軟件默認(rèn)值。(5)當(dāng)微分方程為方程組時(shí),F(xiàn)與y0均為向量,F(xiàn)為微分方程中的F(t,y)函數(shù)。例如:求微分方程在區(qū)間1,1.1的數(shù)值解;再求點(diǎn)1,1.02,1.04,1.06,1.08,1.10處的近似值。編寫下述函數(shù),并以df1為文件名存盤:function F=df1(t,y)F=t2+y/t ;然后分別用函數(shù)ode23( ), ode45( )和ode113( )在區(qū)間1,1.1上求方程的數(shù)值解。格式:T,Y=函數(shù)(參數(shù))說明:T位子變量值,Y為對(duì)應(yīng)于T的因變量值,若直接使用函數(shù),可畫出數(shù)值解的圖形。 ode23(df1,1,1.1,0.5)T, Y=ode23(df1,1,1.1,0.5)T,Y=ode23(df1,1,1.02, 1.04,1.06,1.08,1.10,0.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- TY/T 1007-2024體育賽事信息化軟件測(cè)試規(guī)范
- 古詩課題申報(bào)書
- 課題申報(bào)書作假
- 發(fā)廊眾籌合同范本
- 員工內(nèi)部借款合同范本
- 修補(bǔ)材料合同范本
- 合同范本找誰寫好
- 分公司保證合同范本
- 合同范例工程范例
- 住宅電梯出售合同范本
- 臨時(shí)用電報(bào)審表及臨時(shí)用電驗(yàn)收記錄
- 維修電工日巡檢、修維記錄表
- 華北理工大學(xué)中藥學(xué)教案(64學(xué)時(shí)-田春雨)
- 大學(xué)生的人格發(fā)展課件
- 長(zhǎng)春中醫(yī)大《中藥化學(xué)》教案
- 攝影培訓(xùn)教學(xué)課件:攝影用光
- 大學(xué)物理相對(duì)運(yùn)動(dòng)課件
- 土壤分析技術(shù)規(guī)范(第二版)
- 碎石運(yùn)輸合同標(biāo)準(zhǔn)范文
- 電子物料編碼規(guī)則
- 小學(xué)二年級(jí)數(shù)學(xué)下冊(cè)教材研說稿
評(píng)論
0/150
提交評(píng)論