MATLAB習(xí)題答案(清華大學(xué))_第1頁
MATLAB習(xí)題答案(清華大學(xué))_第2頁
MATLAB習(xí)題答案(清華大學(xué))_第3頁
MATLAB習(xí)題答案(清華大學(xué))_第4頁
MATLAB習(xí)題答案(清華大學(xué))_第5頁
已閱讀5頁,還剩317頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

高等應(yīng)用數(shù)學(xué)問題MATLAB求解習(xí)題參考解答(薛定宇著)目錄第1章計算機數(shù)學(xué)語言概述2第2章MATLAB語言程序設(shè)計基礎(chǔ)5第3章微積分問題的計算機求解17第4章線性代數(shù)問題的計算機求解29第5章積分變換與復(fù)變函數(shù)問題的計算機求解43第6章代數(shù)方程與最優(yōu)化問題的計算機求解53第7章微分方程問題的計算機求解71第8章數(shù)據(jù)插值、函數(shù)逼近問題的計算機求解93第9章概率論與數(shù)理統(tǒng)計問題的計算機求解114第10章數(shù)學(xué)問題的非傳統(tǒng)解法127第A章自由數(shù)學(xué)語言Scilab簡介136第1章計算機數(shù)學(xué)語言概述1在你的機器上安裝MATLAB語言環(huán)境,并鍵入demo命令,由給出的菜單系統(tǒng)和對話框原型演示程序,領(lǐng)略MATLAB語言在求解數(shù)學(xué)問題方面的能力與方法。【求解】在MATLAB提示符>>下鍵入demo命令,則將打開如圖1-1所示的窗口,窗口左側(cè)的列表框可以選擇各種不同組合的演示內(nèi)容。圖1-1MATLAB演示程序界面例如,用戶選擇MATLAB!Graphics!VolumeVlsulization演示,則將得出如圖1-2所示的演示說明,單擊其中的Runthisdemo欄目,則將得出如圖1-3所示的演示界面。用戶可以在該界面下按按鈕,逐步演示相關(guān)內(nèi)容,而實現(xiàn)這樣演示的語句將在該程序界面的下部窗口中給出。2作者用MATLAB語言編寫了給出例子的源程序,讀者可以自己用type語句閱讀一下源程序,對照數(shù)學(xué)問題初步理解語句的含義,編寫的源程序說明由下表列出。第1章計算機數(shù)學(xué)語言概述3圖1-2MATLAB演示程序界面舉例序號文件名程序說明例1.1c1ex1.m利用MATLAB的符號運算工具箱求解微分問題例1.2c1ex2.m分別利用MATLAB的符號運算工具箱和數(shù)值運算功能求解多項式方程,其中用數(shù)值方法得出的結(jié)果有誤差例1.3c1ex3.m分別利用MATLAB的符號運算工具箱和數(shù)值運算功能計算Hilbert矩陣的行列式,其中用數(shù)值方法得出的結(jié)果有很大誤差例1.4c1ex4.m令x1=y;x2=y_,則可以將原來的二階微分方程轉(zhuǎn)換成一階微分方程組,然后就可以求解微分方程的數(shù)值解了,原方程是非線性微分方程,故不存在解析解。ode45()函數(shù)可以求解常微分方程組,而dde23()可以求解延遲微分方程,或更直觀地采用Simulink繪制求解框圖。例1.5c1ex5.m線性規(guī)劃問題調(diào)用最優(yōu)化工具箱中的linprog()函數(shù)可以立即得出結(jié)果,若想求解整數(shù)規(guī)劃問題,則需要首先安裝整數(shù)規(guī)劃程序ipslvmex()。4第1章計算機數(shù)學(xué)語言概述圖1-3MATLAB體視化演示程序界面第2章MATLAB語言程序設(shè)計基礎(chǔ)1啟動MATLAB環(huán)境,并給出語句tic,A=rand(500);B=inv(A);norm(A*B-eye(500)),toc,試運行該語句,觀察得出的結(jié)果,并利用help命令對你不熟悉的語句進行幫助信息查詢,逐條給出上述程序段與結(jié)果的解釋?!厩蠼狻吭贛ATLAB環(huán)境中感觸如下語句,則可以看出,求解500£500隨機矩陣的逆,并求出得出的逆矩陣與原矩陣的乘積,得出和單位矩陣的差,得出范數(shù)。一般來說,這樣得出的逆矩陣精度可以達到10?12。>>tic,A=rand(500);B=inv(A);norm(A*B-eye(500)),tocans=1.2333e-012Elapsedtimeis1.301000seconds.2試用符號元素工具箱支持的方式表達多項式f(x)=x5+3x4+4x3+2x2+3x+6,并令x=s?1s+1,將f(x)替換成s的函數(shù)?!厩蠼狻靠梢韵榷x出f函數(shù),則由subs()函數(shù)將x替換成s的函數(shù)>>symssxf=x^5+3*x^4+4*x^3+2*x^2+3*x+6;F=subs(f,x,(s-1)/(s+1))F=(s-1)^5/(s+1)^5+3*(s-1)^4/(s+1)^4+4*(s-1)^3/(s+1)^3+2*(s-1)^2/(s+1)^2+3*(s-1)/(s+1)+63用MATLAB語句輸入矩陣A和B矩陣①A=266412344321234132413775;②B=26641+4j2+3j3+2j4+1j4+1j3+2j2+3j1+4j2+3j3+2j4+1j1+4j3+2j2+3j4+1j1+4j3775前面給出的是4£4矩陣,如果給出A(5;6)=5命令將得出什么結(jié)果?【求解】用課程介紹的方法可以直接輸入這兩個矩陣>>A=[1234;4321;2341;3241]A=12346第2章MATLAB語言程序設(shè)計基礎(chǔ)432123413241若給出A(5,6)=5命令,雖然這時的行和列數(shù)均大于B矩陣當(dāng)前的維數(shù),但仍然可以執(zhí)行該語句,得出>>A(5,6)=5A=123400432100234100324100000005復(fù)數(shù)矩陣也可以用直觀的語句輸入>>B=[1+4i2+3i3+2i4+1i;4+1i3+2i2+3i1+4i;2+3i3+2i4+1i1+4i;3+2i2+3i4+1i1+4i];B=1.0000+4.0000i2.0000+3.0000i3.0000+2.0000i4.0000+1.0000i4.0000+1.0000i3.0000+2.0000i2.0000+3.0000i1.0000+4.0000i2.0000+3.0000i3.0000+2.0000i4.0000+1.0000i1.0000+4.0000i3.0000+2.0000i2.0000+3.0000i4.0000+1.0000i1.0000+4.0000i4假設(shè)已知矩陣A,試給出相應(yīng)的MATLAB命令,將其全部偶數(shù)行提取出來,賦給B矩陣,用A=magic(8)命令生成A矩陣,用上述的命令檢驗一下結(jié)果是不是正確?!厩蠼狻磕Х骄仃嚳梢圆捎胢agic()生成,子矩陣也可以提取出來>>A=magic(8),B=A(2:2:end,:)A=64236160675795554121351501617474620214342244026273736303133323435292838392541232244451918484915145253111056858595462631B=955541213515016第2章MATLAB語言程序設(shè)計基礎(chǔ)7402627373630313341232244451918488585954626315用MATLAB語言實現(xiàn)下面的分段函數(shù)y=f(x)=8<:h;x>Dh=Dx;jxj6D?h;x<?D?!厩蠼狻績煞N方法,其一,巧用比較表達式解決>>y=h*(x>D)+h/D*x.*(abs(x)<=D)-h*(x<-D);另外一種方法,用循環(huán)語句和條件轉(zhuǎn)移語句>>fori=1:length(x)ifx(i)>D,y(i)=h;elseifabs(x(i))<=D,y(i)=h/D*x(i);else,y(i)=-h;endend其中,前者語句結(jié)構(gòu)簡單,但適用范圍更廣,允許使用矩陣型x,后者只能使用向量型的x,但不能處理矩陣問題。6用數(shù)值方法可以求出S=X63i=02i=1+2+4+8+¢¢¢+262+263,試不采用循環(huán)的形式求出和式的數(shù)值解。由于數(shù)值方法采用double形式進行計算的,難以保證有效位數(shù)字,所以結(jié)果不一定精確。試采用符號運算的方法求該和式的精確值。【求解】用符號運算的方式可以采用下面語句>>sum(sym(2).^[1:63])ans=18446744073709551614由于結(jié)果有19位數(shù)值,所以用double型不能精確表示結(jié)果,該數(shù)據(jù)類型最多表示16位有效數(shù)字。其實用符號運算方式可以任意保留有效數(shù)字,例如可以求200項的和或1000項的和可以由下面語句立即得出。>>sum(sym(2).^[1:200])ans=3213876088517980551083924184682325205044405987565585670602750>>sum(sym(2).^[1:1000])ans=2143017214372534641896850098120003621122809623411067214887500776740702102249872244986396757631391716255189345835106293650374290571384628088第2章MATLAB語言程序設(shè)計基礎(chǔ)719691551493971496078691355496484619708421492101247422837559083643060929499671638825347975351183310878921541258291423929553730843353208596633052487736744113361387507編寫一個矩陣相加函數(shù)matadd(),使其具體的調(diào)用格式為A=matadd(A1,A2,A3,¢¢¢),要求該函數(shù)能接受任意多個矩陣進行解法運算?!厩蠼狻靠梢跃帉懴旅娴暮瘮?shù),用varargin變量來表示可變輸入變量functionA=mat_add(varargin)A=0;fori=1:length(varargin),A=A+varargin{i};end如果想得到合適的錯誤顯示,則可以試用try,catch結(jié)構(gòu)。functionA=mat_add(varargin)tryA=0;fori=1:length(varargin),A=A+varargin{i};endcatch,error(lasterr);end8自己編寫一個MATLAB函數(shù),使它能自動生成一個m£m的Hankel矩陣,并使其調(diào)用格式為v=[h1;h2;hm;hm+1;¢¢¢;h2m?1];H=myhankel(v)【求解】解決這樣的問題可以有多種方法:①最直接的方法,Hi;j=hi+j?1,利用雙重循環(huán)functionH=myhankel(v)m=(length(v)+1)/2;%嚴(yán)格說來還應(yīng)該判定給定輸入向量長度奇偶性fori=1:m,forj=1:mH(i,j)=v(i+j-1);end,end②考慮某一行(或列),ai=[hi;hi+1;¢¢¢;hi+m?1],就可以用單重循環(huán)生成Hankel矩陣了functionH=myhankel(v)m=(length(v)+1)/2;%嚴(yán)格說來還應(yīng)該判定給定輸入向量長度奇偶性fori=1:m,H(i,:)=v(i:i+m-1);end③利用現(xiàn)有的hankel()函數(shù),則functionH=myhankel(v)m=(length(v)+1)/2;%嚴(yán)格說來還應(yīng)該判定給定輸入向量長度奇偶性H=hankel(v(1:m),v(m:end));第2章MATLAB語言程序設(shè)計基礎(chǔ)99已知Fibonacci數(shù)列由式ak=ak?1+ak?2;k=3;4;¢¢¢可以生成,其中初值為a1=a2=1,試編寫出生成某項Fibonacci數(shù)值的MATLAB函數(shù),要求①函數(shù)格式為y=fib(k),給出k即能求出第k項ak并賦給y向量;②編寫適當(dāng)語句,對輸入輸出變量進行檢驗,確保函數(shù)能正確調(diào)用;③利用遞歸調(diào)用的方式編寫此函數(shù)?!厩蠼狻考僭O(shè)fib(n)可以求出Fibonacci數(shù)列的第n項,所以對n>3則可以用k=fib(n?1)+fib(n?2)可以求出數(shù)列的n+1項,這可以使用遞歸調(diào)用的功能,而遞歸調(diào)用的出口為1。綜上,可以編寫出M-函數(shù)。functiony=fib(n)ifround(n)==n&n>=1ifn>=3y=fib(n-1)+fib(n-2);else,y=1;endelseerror('nmustbepositiveinteger.')end例如,n=10可以求出相應(yīng)的項為>>fib(10)ans=55現(xiàn)在需要比較一下遞歸實現(xiàn)的速度和循環(huán)實現(xiàn)的速度>>tic,fib(20),tocans=832040elapsed_time=62.0490>>tic,a=[11];fori=3:30,a(i)=a(i-1)+a(i-2);end,a(30),tocans=832040elapsed_time=0.0100應(yīng)該指出,遞歸的調(diào)用方式速度較慢,比循環(huán)語句慢很多,所以不是特別需要,解這樣問題沒有必要用遞歸調(diào)用的方式。10第2章MATLAB語言程序設(shè)計基礎(chǔ)10由矩陣?yán)碚摽芍?,如果一個矩陣M可以寫成M=A+BCBT,并且其中A,B,C為相應(yīng)階數(shù)的矩陣,則M矩陣的逆矩陣可以由下面的算法求出M?1=3A+BCBT′?1=A?1?A?1B3C?1+BTA?1B′?1BTA?1試根據(jù)上面的算法用MATLAB語句編寫一個函數(shù)對矩陣M進行求逆,并通過一個小例子來檢驗該程序,并和直接求逆方法進行精度上的比較。【求解】編寫這個函數(shù)functionMinv=part_inv(A,B,C)Minv=inv(A)-inv(A)*B*inv(inv(C)+B'*inv(A)*B)*B'*inv(A);假設(shè)矩陣為M=2664515036165077603236608748163248683775且已知該矩陣可以分解成A=266410000200003000043775;B=266412342340340040003775;C=266440000300002000013775對這個例子。可以>>M=[51503616;50776032;36608748;16324868];iM=inv(M);%數(shù)值逆,直接解法iM=0.0553-0.03890.00170.0041-0.03890.0555-0.0210-0.00210.0017-0.02100.0328-0.01370.0041-0.0021-0.01370.0244>>A=diag([1234]);B=hankel([1234]);C=diag([4321]);iM1=part_inv(A,B,C)%分塊矩陣的求解方法iM1=0.0553-0.03890.00170.0041-0.03890.0555-0.0210-0.00210.0017-0.02100.0328-0.01370.0041-0.0021-0.01370.0244乍看結(jié)果,似乎二者完全一致,實際上數(shù)值算法是有區(qū)別的。我們這里用解析方法得出矩陣的逆,然后用下面的語句比較兩個結(jié)果的精度第2章MATLAB語言程序設(shè)計基礎(chǔ)11>>M1=sym(M);iM0=inv(M1)iM0=[10713/193751,-7546/193751,332/193751,796/193751][-7546/193751,10759/193751,-4068/193751,-416/193751][332/193751,-4068/193751,19075/581253,-2652/193751][796/193751,-416/193751,-2652/193751,18919/775004]>>norm(double(iM0)-iM)%直接求解的誤差范數(shù)ans=2.7990e-017>>norm(double(iM0)-iM1)%間接求解的誤差范數(shù)ans=3.6583e-016可見,用間接方法得出的逆矩陣誤差更大,因為在這里新編寫的函數(shù)中inv()函數(shù)使用了多次,由此產(chǎn)生很大的傳遞誤差。由此可以得出結(jié)論:如果某問題存在直接解,則盡量別使用間接方法,以加大傳遞誤差。11下面給出了一個迭代模型(xk+1=1+yk?1:4x2kyk+1=0:3xk寫出求解該模型的M-函數(shù),如果取迭代初值為x0=0,y0=0,那么請進行30000次迭代求出一組x和y向量,然后在所有的xk和yk坐標(biāo)處點亮一個點(注意不要連線),最后繪制出所需的圖形。提示這樣繪制出的圖形又稱為Henon引力線圖,它將迭代出來的隨機點吸引到一起,最后得出貌似連貫的引力線圖。【求解】用循環(huán)形式解決此問題,可以得出如圖2-1所示的Henon引力線圖。>>x=0;y=0;fori=1:29999x(i+1)=1+y(i)-1.4*x(i)^2;y(i+1)=0.3*x(i);endplot(x,y,'.')上述的算法由于動態(tài)定義x和y,所以每循環(huán)一步需要重新定維,這樣做是很消耗時間的,所以為加快速度,可以考慮預(yù)先定義這兩個變量,如給出x=zeros(1,30000)。12用MATLAB語言的基本語句顯然可以立即繪制一個正三角形,試結(jié)合循環(huán)結(jié)構(gòu),編寫一個小程序,在同一個坐標(biāo)系下繪制出該正三角形繞其中心旋轉(zhuǎn)后得出的一系列三角形,還可以調(diào)整旋轉(zhuǎn)步距觀察效果。12第2章MATLAB語言程序設(shè)計基礎(chǔ)?1.5?1?0.500.511.5?0.4?0.3?0.2?0.100.10.20.30.4圖2-1Henon引力線圖【求解】假設(shè)正三角形逆時針旋轉(zhuǎn)μ度,則可以得出如圖2-2a所示的示意圖,三角形的三個頂點為(cosμ;sinμ),(cos(μ+120±);sin(μ+120±)),(cos(μ+240±);sin(μ+240±)),可以繪制出其曲線,如圖2-2b所示,試減小步距,如選擇¢μ=2;1;0:1,觀察效果。.............................................................μxy-6(a)示意圖?1?0.500.51?1?0.500.51(b)曲線繪制效果圖2-2曲線繪制>>t=[0,120,240,0]*pi/180;%變換成弧度xxx=[];yyy=[];fori=0:5:360tt=i*pi/180;xxx=[xxx;cos(tt+t)];yyy=[yyy;sin(tt+t)];end第2章MATLAB語言程序設(shè)計基礎(chǔ)13plot(xxx',yyy','r'),axis('square')13選擇合適的步距繪制出下面的圖形sinμ1t?,其中t2(?1;1)。【求解】用普通的繪圖形式,選擇等間距,得出如圖2-3a所示的曲線,其中x=0左右顯得粗糙。>>t=-1:0.03:1;y=sin(1./t);plot(t,y)選擇不等間距方法,可以得出如圖2-3b所示的曲線。>>t=[-1:0.03:-0.25,-0.248:0.001:0.248,0.25:.03:1];y=sin(1./t);plot(t,y)?1?0.500.51?1?0.500.51(a)等間距曲線繪制?1?0.500.51?1?0.500.51(b)不等間距曲線繪制圖2-3不同自變量選取下的sin(1=t)曲線14對合適的μ范圍選取分別繪制出下列極坐標(biāo)圖形①?=1:0013μ2,②?=cos(7μ=2),③?=sin(μ)=μ,④?=1?cos3(7μ)【求解】繪制極坐標(biāo)曲線的方法很簡單,用polar(μ,?)即可以繪制出極坐標(biāo)圖,如圖2-4所示。注意繪制圖形時的點運算:>>t=0:0.01:2*pi;subplot(221),polar(t,1.0013*t.^2),%(a)subplot(222),t1=0:0.01:4*pi;polar(t1,cos(7*t1/2))%(b)subplot(223),polar(t,sin(t)./t)%(c)subplot(224),polar(t,1-(cos(7*t)).^3)15用圖解的方式找到下面兩個方程構(gòu)成的聯(lián)立方程的近似解。x2+y2=3xy2;x3?x2=y2?y【求解】這兩個方程應(yīng)該用隱式方程繪制函數(shù)ezplot()來繪制,交點即方程的解,如圖2-5a所示。14第2章MATLAB語言程序設(shè)計基礎(chǔ)204030210602409027012030015033018000.5130210602409027012030015033018000.513021060240902701203001503301800123021060240902701203001503301800圖2-4極坐標(biāo)圖>>ezplot('x^2+y^2-3*x*y^2');holdonezplot('x^3-x^2=y^2-y')可用局部放大的方法求出更精確的值,如圖2-5b所示。從圖上可以精確讀出兩個交點,(0:4012;?0:8916),(1:5894;0:8185)。試將這兩個點分別代入原始方程進行驗證。?6?4?20246?6?4?20246xyx3?x2=y2?y=0(a)兩個方程的曲線,交點為解1.58941.58941.58941.58941.58941.58941.58940.81850.81850.81850.81850.8185xyx3?x2=y2?y=0(b)局部放大區(qū)域圖2-5二元聯(lián)立方程的圖解法第2章MATLAB語言程序設(shè)計基礎(chǔ)1516請分別繪制出xy和sin(xy)的三維圖和等高線?!厩蠼狻?a)給出下面命令即可,得出的圖形如圖2-6a、b所示。>>[x,y]=meshgrid(-1:.1:1);surf(x,y,x.*y),figure;contour(x,y,x.*y,30)(b)給出下面命令即可,得出的圖形如圖2-6c、d所示。>>[x,y]=meshgrid(-pi:.1:pi);surf(x,y,sin(x.*y)),figure;contour(x,y,sin(x.*y),30)?101?101?1?0.500.51(a)xy三維圖?1?0.500.51?1?0.500.51(b)xy等高線?505?505?1?0.500.51(c)sin(xy)三維圖?3?2?10123?3?2?10123(d)sin(xy)等高線圖2-6三維圖與等高線17在圖形繪制語句中,若函數(shù)值為不定式NaN,則相應(yīng)的部分不繪制出來,試?yán)迷撘?guī)律繪制z=sinxy的表面圖,并剪切下x2+y260:52的部分?!厩蠼狻拷o出下面命令可以得出矩形區(qū)域的函數(shù)值,再找出x2+y260:52區(qū)域的坐標(biāo),將其函數(shù)值設(shè)置成NaN,最終得出如圖2-7所示的曲面。16第2章MATLAB語言程序設(shè)計基礎(chǔ)>>[x,y]=meshgrid(-1:.1:1);z=sin(x.*y);ii=find(x.^2+y.^2<=0.5^2);z(ii)=NaN;surf(x,y,z)?1?0.500.51?1?0.500.51?1?0.500.51圖2-7得出的三維圖第3章微積分問題的計算機求解1試求出如下極限。①limx!1(3x+9x)1x,②limx!1(x+2)x+2(x+3)x+3(x+5)2x+5【求解】極限問題由下面的語句可以直接求出。>>symsx;f=(3^x+9^x)^(1/x);limit(f,x,inf)ans=9>>symsx;f=(x+2)^(x+2)*(x+3)^(x+3)/(x+5)^(2*x+5);limit(f,x,inf)ans=exp(-5)2試求下面的雙重極限。①limx!?1y!2x2y+xy3(x+y)3,②limx!0y!0xypxy+1?1,③limx!0y!01?cos?x2+y2¢?x2+y2¢ex2+y2?!厩蠼狻侩p重極限問題可以由下面語句直接求解。>>symsxyfa=(x^2*y+x*y^3)/(x+y)^3;limit(limit(fa,x,-1),y,2)ans=-6>>fb=x*y/(sqrt(x*y+1)-1);limit(limit(fb,x,0),y,0)ans=2>>fc=(1-cos(x^2+y^2))*exp(x^2+y^2)/(x^2+y^2);limit(limit(fc,x,0),y,0)ans=03求出下面函數(shù)的導(dǎo)數(shù)。①y(x)=qxsinxp1?ex,②y=1?pcosaxx(1?cospax)③atanyx=ln(x2+y2),④y(x)=?1nalnxn+axn;n>018第3章微積分問題的計算機求解【求解】由求導(dǎo)函數(shù)diff()可以直接得出如下結(jié)果,其中③為隱函數(shù),故需要用隱函數(shù)求導(dǎo)公式得出導(dǎo)數(shù)。>>symsx;f=sqrt(x*sin(x)*sqrt(1-exp(x)));simple(diff(f))ans=1/2/(x*sin(x)*(1-exp(x))^(1/2))^(1/2)*(sin(x)*(1-exp(x))^(1/2)+x*cos(x)*(1-exp(x))^(1/2)-1/2*x*sin(x)/(1-exp(x))^(1/2)*exp(x))>>symsaxy=(1-sqrt(cos(a*x)))/(x*(1-cos(sqrt(a*x))))simple(diff(y))ans=1/2/cos(a*x)^(1/2)*sin(a*x)*a/x/(1-cos((a*x)^(1/2)))-(1-cos(a*x)^(1/2))/x^2/(1-cos((a*x)^(1/2)))-1/2*(1-cos(a*x)^(1/2))/x/(1-cos((a*x)^(1/2)))^2*sin((a*x)^(1/2))/(a*x)^(1/2)*a>>f=atan(y/x)-log(x^2+y^2);f1=simple(-diff(f,x)/diff(f,y))f1=(y+2*x)/(x-2*y)>>symsnpositive;symsa;f=-log((x^n+a)/x^n)/(n*a);diff(f,x)ans=-(n/x-(x^n+a)/(x^n)*n/x)/(x^n+a)*x^n/n/a用LATEX表示上面的結(jié)果,則①1=2μsin(x)p1?ex+xcos(x)p1?ex?1=2xsin(x)exp1?ex?1qxsin(x)p1?ex②1=2sin(ax)apcos(ax)x(1?cos(pax))?1?pcos(ax)x2(1?cos(pax))?1=231?pcos(ax)′sin(pax)ax(1?cos(pax))2pax③y+2xx?2y④?μnx?(xn+a)nxnx?xn(xn+a)?1n?1a?4試求出y(t)=s(x?1)(x?2)(x?3)(x?4)函數(shù)的4階導(dǎo)數(shù)。【求解】高階導(dǎo)數(shù)可以由下面語句直接得出>>symsaxf=sqrt((x-1)*(x-2)/(x-3)/(x-4));simple(diff(f,x,4))ans=第3章微積分問題的計算機求解193*(16*x^11-392*x^10+4312*x^9-28140*x^8+121344*x^7-364560*x^6+783552*x^5-1214604*x^4+1342560*x^3-1015348*x^2+474596*x-103741)/((x-1)*(x-2)/(x-3)/(x-4))^(7/2)/(x-3)^8/(x-4)^83μ16x11?392x10+4312x9?28140x8+121344x7?364560x6+783552x5?1214604x4+1342560x3?1015348x2+474596x?103741?μ(x?1)(x?2)(x?3)(x?4)?7=2(x?3)8(x?4)85在高等數(shù)學(xué)中,求解分子和分母均同時為0或1時,分式極限時可使用L'H^opital法則,即對分子分母分別求導(dǎo)數(shù),再由比值得出,試用該法則limx!0ln(1+x)ln(1?x)?ln(1?x2)x4,并和直接求出的極限結(jié)果相比較?!厩蠼狻繌慕o出的分母看,若想使之在x=0處的值不為0,則應(yīng)該對其求4階導(dǎo)數(shù),同樣,還應(yīng)該對分子求4階導(dǎo)數(shù),將x=0代入結(jié)果,這樣就可以使用L'H^opital法則求出極限了。>>symsx;n=log(1+x)*log(1-x)-log(1-x^2);d=x^4;n4=diff(n,x,4);d4=diff(d,x,4);n4=subs(n4,x,0);L=n4/d4L=1/12現(xiàn)在直接求極限可以驗證上述結(jié)果是正確的。>>limit(n/d,x,0)ans=1/126已知參數(shù)方程?x=lncosty=cost?tsint,試求出dydx和d2ydx2ˉˉˉˉt=p=3?!厩蠼狻繀?shù)方程的導(dǎo)數(shù)可以由下面語句直接求出。>>symst;x=log(cos(t));y=cos(t)-t*sin(t);diff(y,t)/diff(x,t)ans=-(-2*sin(t)-t*cos(t))/sin(t)*cos(t)>>f=diff(y,t,2)/diff(x,t,2);subs(f,t,sym(pi)/3)ans=3/8-1/24*pi*3^(1/2)7假設(shè)u=cos?1rxy,試驗證@2u@x@y=@2u@y@x?!厩蠼狻孔C明二者相等亦可以由二者之差為零來證明,故由下面的語句直接證明。20第3章微積分問題的計算機求解>>symsxy;u=acos(x/y);diff(diff(u,x),y)-diff(diff(u,y),x)ans=08設(shè)(xu+yv=0yu+xv=1,試求解@2u@x@y。【求解】用下面的語句可以直接得出如下結(jié)果。>>symsxyuv[u,v]=solve('x*u+y*v=0','y*u+x*v=1','u,v');diff(diff(u,x),y)ans=2/(x^2-y^2)^2*x+8*y^2/(x^2-y^2)^3*x9假設(shè)f(x;y)=Zxy0e?t2dt,試求xy@2@x2?2@2@x@y+@2@y2?!厩蠼狻坑上旅娴拿羁梢缘贸鏊杞Y(jié)果。>>symsxytf=int(exp(-t^2),t,0,x*y);x/y*diff(f,x,2)-2*diff(diff(f,x),y)+diff(f,y,2)simple(ans)ans=-2*exp(-x^2*y^2)*(-x^2*y^2+1+x^3*y)10假設(shè)已知函數(shù)矩陣f(x;y;z)=·3x+eyzx3+y2sinz?,試求出其Jacobi矩陣?!厩蠼狻縅acobi矩陣可以由下面的語句直接得出。>>symsxyzF=[3*x+exp(y)*z;x^3+y^2*sin(z)];jacobian(F,[x,y,z])ans=[3,exp(y)*z,exp(y)][3*x^2,2*y*sin(z),y^2*cos(z)]11試求解下面的不定積分問題。①I(x)=?Z3x2+ax2(x2+a)2dx,②I(x)=Zpx(x+1)px+p1+xdx③I(x)=Zxeaxcosbxdx,④I(t)=Zeaxsinbxsincxdx【求解】①該不定積分可以由下面的命令直接求出第3章微積分問題的計算機求解21>>symsxaf=(3*x^2+a)/(x^2+(x^2+a)^2);int(f,x)ans=12/(4+16*a)/(2+4*a+2*(1+4*a)^(1/2))^(1/2)*atan(2*x/(2+4*a+2*(1+4*a)^(1/2))^(1/2))+48/(4+16*a)/(2+4*a+2*(1+4*a)^(1/2))^(1/2)*atan(2*x/(2+4*a+2*(1+4*a)^(1/2))^(1/2))*a+12/(4+16*a)/(2+4*a+2*(1+4*a)^(1/2))^(1/2)*atan(2*x/(2+4*a+2*(1+4*a)^(1/2))^(1/2))*(1+4*a)^(1/2)+16/(4+16*a)/(2+4*a+2*(1+4*a)^(1/2))^(1/2)*atan(2*x/(2+4*a+2*(1+4*a)^(1/2))^(1/2))*(1+4*a)^(1/2)*a+12/(4+16*a)/(2+4*a-2*(1+4*a)^(1/2))^(1/2)*atan(2*x/(2+4*a-2*(1+4*a)^(1/2))^(1/2))+48/(4+16*a)/(2+4*a-2*(1+4*a)^(1/2))^(1/2)*atan(2*x/(2+4*a-2*(1+4*a)^(1/2))^(1/2))*a-12/(4+16*a)/(2+4*a-2*(1+4*a)^(1/2))^(1/2)*atan(2*x/(2+4*a-2*(1+4*a)^(1/2))^(1/2))*(1+4*a)^(1/2)-16/(4+16*a)/(2+4*a-2*(1+4*a)^(1/2))^(1/2)*atan(2*x/(2+4*a-2*(1+4*a)^(1/2))^(1/2))*(1+4*a)^(1/2)*a②可以用下面的語句求出問題的解>>symsx;f=sqrt(x*(x+1))/(sqrt(x)+sqrt(x+1));int(f,x);latex(ans)并將其顯示如下2=15px(x+1)x(3x+5)px+1?2=15px(x+1)(x+1)(?2+3x)px③可以求出下面的結(jié)果>>symsabxf=x*exp(a*x)*cos(b*x);int(f,x);latex(ans)其數(shù)學(xué)顯示為?axa2+b2?a2?b2(a2+b2)2!eaxcos(bx)???bxa2+b2+2a(a2+b2)2!eaxsin(bx)④用下面的語句求解,得>>symsxabc;f=exp(a*x)*sin(b*x)*sin(c*x);latex(int(f,x))22第3章微積分問題的計算機求解亦即1=2aeaxcos((b?c)xa2+(b?c)2?1=2(?b+c)eaxsin((b?c)x)a2+(b?c)2?1=2aeaxcos((b+c)xa2+(b+c)2+1=2(?b?c)eaxsin((b+c)x)a2+(b+c)212試求出下面的定積分或無窮積分。①I=Z10cosxpxdx,②I=Z101+x21+x4dx【求解】①可以直接求解>>symsx;int(cos(x)/sqrt(x),x,0,inf)ans=1/2*2^(1/2)*pi^(1/2)②可以得出>>symsx;int((1+x^2)/(1+x^4),x,0,1)ans=1/4*2^(1/2)*pi13假設(shè)f(x)=e?5xsin(3x+p=3),試求出積分函數(shù)R(t)=Zt0f(x)f(t+x)dx。【求解】定義了x的函數(shù),則可以由subs()函數(shù)定義出t+x的函數(shù),這樣由下面的語句可以直接得出R函數(shù)。>>symsxt;f=exp(-5*x)*sin(3*x+sym(pi)/3);R=int(f*subs(f,x,t+x),x,0,t);simple(R)ans=1/1360*(15*exp(t)^10*3^(1/2)*cos(3*t)-25*cos(9*t)+25*exp(t)^10*3^(1/2)*sin(3*t)-68*cos(3*t)-15*3^(1/2)*cos(9*t)-25*3^(1/2)*sin(9*t)-15*exp(t)^10*sin(3*t)+15*sin(9*t)+93*exp(t)^10*cos(3*t))/exp(t)^15該結(jié)果可以寫成1136015(et)10p3cos(3t)?68cos(3t)?15(et)10sin(3t)?25p3sin(9t)+25(et)10p3sin(3t)+15sin(9t)?25cos(9t)?15p3cos(9t)+93(et)10cos(3t)(et)1514對a的不同取值試求出I=Z10cosax1+x2dx?!厩蠼狻坑上旅娴难h(huán)結(jié)構(gòu)可以得出不同a值下的無窮積分值,并可以繪制出它們之間關(guān)系的曲線,如圖3-1所示。第3章微積分問題的計算機求解23>>symsxa;f=cos(a*x)/(1+x^2);aa=[0:0.1:pi];y=[];forn=aab=int(subs(f,a,n),x,0,inf);y=[y,double(b)];endplot(aa,y)00.511.522.533.500.20.40.60.811.21.41.6圖3-1不同a值下的積分值曲線15試對下面函數(shù)進行Fourier冪級數(shù)展開。①f(x)=(p?jxj)sinx;?p6x<p②f(x)=ejxj;?p6x<p③f(x)=(2x=l;0<x<l=22(l?x)=l;l=2<x<l,且l=p?!厩蠼狻竣倏梢粤⒓从上旅娴恼Z句求出。>>symsx;f=(sym(pi)-abs(x))*sin(x);[A,B,F]=fseries(f,x,10,-pi,pi);FF=1/2*pi*sin(x)+16/9/pi*sin(2*x)+32/225/pi*sin(4*x)+48/1225/pi*sin(6*x)+64/3969/pi*sin(8*x)+80/9801/pi*sin(10*x)該結(jié)果在LATEX下可以顯示為12psinx+169sin2xp+32225sin4xp+481225sin6xp+643969sin8xp+809801sin10xp②可以由下面語句求解,并得出數(shù)學(xué)公式為>>symsx;f=exp(abs(x));[A,B,F]=fseries(f,x,10,-pi,pi);F得出的解析解為1=22ep?2p+(?ep?1)cos(x)p+(2=5ep?2=5)cos(2x)p+(?1=5ep?1=5)cos(3x)p24第3章微積分問題的計算機求解+(2=17ep?2=17)cos(4x)p+(?1=13ep?1=13)cos(5x)p+?237ep?237¢cos(6x)p+(?1=25ep?1=25)cos(7x)p+?265ep?265¢cos(8x)p+(?1=41ep?1=41)cos(9x)p+?2101ep?2101¢cos(10x)p進一步觀察結(jié)果可見,該式子可以手工化簡,例如提取系數(shù)(ep?(?1)n)=p?;?qū)Ω黜椣禂?shù)逐項求值(保留10位有效數(shù)字)>>vpa(F,10)ans=7.047601355-7.684221126*cos(x)+2.819040541*cos(2.*x)-1.536844225*cos(3.*x)+.8291295709*cos(4.*x)-.5910939328*cos(5.*x)+.3809514246*cos(6.*x)-.3073688450*cos(7.*x)+.2168492724*cos(8.*x)-.1874200274*cos(9.*x)+.1395564625*cos(10.*x)③似乎求解起來更困難,巧妙利用符號運算工具箱中的heaviside()函數(shù),則可以將原函數(shù)表示成f(x)=2¤heaviside3x?p2′?2pxjx?p=2jx?p=2這樣就可以用下面的語句求出函數(shù)的Fourier級數(shù)。>>symsx;pi1=sym(pi);f=2*heaviside(x-pi1/2)-2/pi1*x*abs(x-pi1/2)/(x-pi1/2);[a,b,F]=fseries(f,x,10,-pi,pi);FF=-1/4+4/pi^2*cos(x)+(4/pi+2)/pi*sin(x)-2/pi^2*cos(2*x)-1/pi*sin(2*x)+4/9/pi^2*cos(3*x)+(-4/9/pi+2/3)/pi*sin(3*x)-1/2/pi*sin(4*x)+4/25/pi^2*cos(5*x)+(4/25/pi+2/5)/pi*sin(5*x)-2/9/pi^2*cos(6*x)-1/3/pi*sin(6*x)+4/49/pi^2*cos(7*x)+(-4/49/pi+2/7)/pi*sin(7*x)-1/4/pi*sin(8*x)+4/81/pi^2*cos(9*x)+(4/81/pi+2/9)/pi*sin(9*x)-2/25/pi^2*cos(10*x)-1/5/pi*sin(10*x)?1=4+4cos(x)p2+?4p?1+2¢sin(x)p?2cos(2x)p2?sin(2x)p+4=9cos(3x)p2+??4=9p?1+2=3¢sin(3x)p?1=2sin(4x)p+425cos(5x)p2+?425p?1+2=5¢sin(5x)p?2=9cos(6x)p2?1=3sin(6x)p+449cos(7x)p2+??449p?1+2=7¢sin(7x)p?1=4sin(8x)p+481cos(9x)p2+?481p?1+2=9¢sin(9x)p?225cos(10x)p2?1=5sin(10x)p16試求出下面函數(shù)的Taylor冪級數(shù)展開。第3章微積分問題的計算機求解25①Zx0sinttdt②lnμ1+x1?x?③ln3x+p1+x2′④(1+4:2x2)0:2⑤e?5xsin(3x+p=3)分別關(guān)于x=0、x=a的冪級數(shù)展開⑥對f(x;y)=1?cos?x2+y2¢?x2+y2¢ex2+y2關(guān)于x=1;y=0進行二維Taylor冪級數(shù)展開?!厩蠼狻坑上旅娴恼Z句可以分別求出各個函數(shù)的冪級數(shù)展開,由latex(ans)函數(shù)可以得出下面的數(shù)學(xué)表示形式。>>symstx;f=int(sin(t)/t,t,0,x);taylor(f,x,15)>>symsx;f=log((1+x)/(1-x)),taylor(f,x,15)>>symsx;f=log(x+sqrt(1+x^2));taylor(f,x,15)>>symsx;f=(1+4.2*x^2)^0.2;taylor(f,x,13)①x?1=18x3+1600x5?135280x7+13265920x9?1439084800x11+180951270400x13②2x+2=3x3+2=5x5+2=7x7+2=9x9+2=11x11+2=13x13③x?1=6x3+340x5?5112x7+351152x9?632816x11+23113312x13④1+2125x2?882625x4+5556615625x6?4084101390625x8+162955629948828125x10?1368827291161220703125x12⑤該函數(shù)的前4項展開為>>symsxa;f=exp(-5*x)*sin(3*x+sym(pi)/3);taylor(f,x,4,a)e?5a33a+3′+33e?5a33a+3′?5e?5a33a+3′′(x?a)+38e?5a33a+3′?15e?5a33a+3′′(x?a)2+333e?5a33a+3′+5=3e?5a33a+3′′(x?a)3⑥該函數(shù)需要使用Maple的展開函數(shù)。>>symsxy;f=(1-cos(x^2+y^2))/((x^2+y^2)*exp(x^2+y^2));F=maple('mtaylor',f,'[x=1,y]',4)1?cos(1)e1+(2sin(1)?4+4cos(1))(x?1)e1+(?6cos(1)?7sin(1)+8)(x?1)2e1+(sin(1)?2+2cos(1))y2e1+??343+323sin(1)+16=3cos(1)¢(x?1)3e1+(?8cos(1)+10?8sin(1))y2(x?1)e1+?836?6cos(1)?343sin(1)¢(x?1)4e1+(24sin(1)+16cos(1)?27)y2(x?1)2e1+(?2cos(1)+5=2?2sin(1))y4e1+?13415cos(1)+19415sin(1)?24415¢(x?1)5e1+?1643?28cos(1)?1403sin(1)¢y2(x?1)3e126第3章微積分問題的計算機求解+(14sin(1)?16+10cos(1))y4(x?1)e117試求下面級數(shù)的前n項及無窮項的和。①11£6+16£11+¢¢¢+1(5n?4)(5n+1)+¢¢¢②μ12+13?+μ122+132?+¢¢¢+μ12n+13n?+¢¢¢【求解】下面的語句可以直接求解級數(shù)的和。>>symsnk;symsum(1/(5*k-4)/(5*k+1),k,1,n)ans=-1/5/(5*n+1)+1/5>>symsum(1/(5*k-4)/(5*k+1),k,1,inf)ans=1/5>>symsnk;symsum(1/2^k+1/3^k,k,1,n)ans=-2*(1/2)^(n+1)-3/2*(1/3)^(n+1)+3/2>>symsum(1/2^k+1/3^k,k,1,inf)ans=3/2當(dāng)然,無窮級數(shù)的和還可以通過極限的方式求出。18試求出下面的極限。①limn!1·122?1+142?1+162?1+¢¢¢+1(2n)2?1?②limn!1nμ1n2+p+1n2+2p+1n2+3p+¢¢¢+1n2+np?【求解】①可以用下面兩種方法求解。>>symskn;symsum(1/((2*k)^2-1),k,1,inf)ans=1/2>>limit(symsum(1/((2*k)^2-1),k,1,n),n,inf)ans=1/2②可以由下面的語句直接求解。>>symsknlimit(n*symsum(1/(n^2+k*pi),k,1,n),n,inf)ans=第3章微積分問題的計算機求解27119試對下面數(shù)值描述的函數(shù)求取各階數(shù)值微分,并用梯形法求取定積分。xi00.10.20.30.40.50.60.70.80.911.11.2yi02.20773.20583.44353.2412.81642.3111.81011.36020.981720.679070.44730.27684【求解】可以由下面的語句得出函數(shù)的各階導(dǎo)數(shù),得出的曲線如圖3-2所示。>>x=[0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1,1.1,1.2];y=[0,2.2077,3.2058,3.4435,3.241,2.8164,2.311,1.8101,...1.3602,0.9817,0.6791,0.4473,0.2768];[dy1,dx1]=diff_ctr(y,x(2)-x(1),1);[dy2,dx2]=diff_ctr(y,x(2)-x(1),2);[dy3,dx3]=diff_ctr(y,x(2)-x(1),3);[dy4,dx4]=diff_ctr(y,x(2)-x(1),4);plot(dx1+x(1),dy1,'-',dx2+x(1),dy2,'--',dx3+x(1),dy3,':',dx4+x(1),dy4,'-.')0.30.40.50.60.70.80.911.11.2?200?150?100?50050100n=1n=2圖3-2各階導(dǎo)數(shù)的數(shù)值解曲線20試求出以下的曲線積分。①Zl(x2+y2)ds,l為曲線x=a(cost+tsint);y=a(sint?tcost);(06t62p)。②Zl(yx3+ey)dx+(xy3+xey?2y)dy,其中l(wèi)為a2x2+b2y2=c2正向上半橢圓。③Zlydx?xdy+(x2+y2)dz,l為曲線x=et;y=e?t;z=at,06t61,a>0。④Zl(exsiny?my)dx+(excosy?m)dy,其中l(wèi)為由(a;0)點到(0;0)再經(jīng)x2+y2=ax上正向半圓周構(gòu)成的曲線。【求解】套用書中給出的第一類和第二類曲線積分公式,則可以直接得出曲線積分的結(jié)果。28第3章微積分問題的計算機求解>>symsat;x=a*(cos(t)+t*sin(t));y=a*(sin(t)-t*cos(t));f=x^2+y^2;I=int(f*sqrt(diff(x,t)^2+diff(y,t)^2),t,0,2*pi)I=2*a^3*pi^2+4*a^3*pi^4>>symsxyabct;x=c*cos(t)/a;y=c*sin(t)/b;P=y*x^3+exp(y);Q=x*y^3+x*exp(y)-2*y;ds=[diff(x,t);diff(y,t)];I=int([PQ]*ds,t,0,pi)I=2/15*c*(2*c^4-15*b^4)/a/b^4>>symst;symsapositive;x=exp(t);y=exp(-t);z=a*t;F=[y,-x,(x^2+y^2)];ds=[diff(x,t);diff(y,t);diff(z,t)];I=int(F*ds,t,0,1)I=2+1/2*a*exp(1)^2-1/2*a*exp(-1)^2>>symstm;symsapositive;x1=t;y1=0;F1=[exp(x1)*sin(y1)-m*y1,exp(x1)*cos(y1)-m];x2=a/2+a/2*cos(t);y2=a/2*sin(t);F2=[exp(x2)*sin(y2)-m*y2,exp(x2)*cos(y2)-m];I1=int(F1*[diff(x1,t);diff(y1,t)],t,0,a)I2=int(F2*[diff(x2,t);diff(y2,t)],t,0,pi);I=I1+I2I2=1/8*a^2*m*pi21試求出下面的曲面積分。①ZSμ2x+4y3+z?ds,S為平面x2+y3+z4=1與x=?1;y=?2;z=?3圍成的表面。②ZSx2y2zdxdy,其中S為半球面z=pR2?x2?y2的下側(cè)?!厩蠼狻康?章線性代數(shù)問題的計算機求解1Jordan矩陣是矩陣分析中一類很實用的矩陣,其一般形式為J=26664??10¢¢¢00??1¢¢¢0...............000¢¢¢??37775,例如J1=266664?510000?510000?510000?510000?5377775試?yán)胐iag()函數(shù)給出構(gòu)造J1的語句?!厩蠼狻坷胐iag()能夠構(gòu)造對角矩陣和次對角矩陣的性質(zhì),可以由下面語句建立起所需的矩陣。>>J1=diag([-5-5-5-5-5])+diag([1111],1)J1=-510000-510000-510000-510000-52冪零矩陣是一類特殊的矩陣,其基本形式為Hn=2666664010¢¢¢0001¢¢¢0...............000¢¢¢1000¢¢¢03777775亦即,矩陣的次主對角線元素為1,其余均為0,試驗證對指定階次的冪零矩陣,有Hin=0對所有的i>n成立?!厩蠼狻靠梢杂醚h(huán)的方式構(gòu)造出各階冪零矩陣,并對其求出i+1次方,判定得出矩陣的范數(shù),若發(fā)現(xiàn)范數(shù)大于0的階次,則顯示其階次,若為零矩陣則不顯示任何內(nèi)容。通過運行下面的語句,可見不顯示任何內(nèi)容,故i<100的冪零矩陣滿足上述性質(zhì)。>>fori=1:100A=diag(ones(1,i),1);ifnorm(A^(1+i))>0,disp(i);endend30第4章線性代數(shù)問題的計算機求解3試從矩陣的顯示格式區(qū)分符號矩陣和數(shù)值矩陣,明確它們的含義和應(yīng)用場合。若A矩陣為數(shù)值矩陣,B為符號矩陣,C=A*B運算得出的C矩陣是符號矩陣還是數(shù)值矩陣?【求解】得出的結(jié)果當(dāng)然是符號矩陣,見下例。>>A=ones(5);B=sym(A);A*Bans=[5,5,5,5,5][5,5,5,5,5][5,5,5,5,5][5,5,5,5,5][5,5,5,5,5]4請將下面給出的矩陣A和B輸入到MATLAB環(huán)境中,并將它們轉(zhuǎn)換成符號矩陣。A=2666666664576516523100146420644396366210760077724407748672173777777775;B=266666666435501233254625121134635152124101201?3?4?7378121?107?68153777777775【求解】矩陣的輸入與轉(zhuǎn)換是很直接的。>>A=[5,7,6,5,1,6,5;2,3,1,0,0,1,4;6,4,2,0,6,4,4;3,9,6,3,6,6,2;10,7,6,0,0,7,7;7,2,4,4,0,7,7;4,8,6,7,2,1,7];A=sym(A)A=[5,7,6,5,1,6,5][2,3,1,0,0,1,4][6,4,2,0,6,4,4][3,9,6,3,6,6,2][10,7,6,0,0,7,7][7,2,4,4,0,7,7][4,8,6,7,2,1,7]>>B=[3,5,5,0,1,2,3;3,2,5,4,6,2,5;1,2,1,1,3,4,6;3,5,1,5,2,1,2;4,1,0,1,2,0,1;-3,-4,-7,3,7,8,12;1,-10,7,-6,8,1,5];B=sym(B)B=[3,5,5,0,1,2,3][3,2,5,4,6,2,5][1,2,1,1,3,4,6][3,5,1,5,2,1,2][4,1,0,1,2,0,1]第4章線性代數(shù)問題的計算機求解31[-3,-4,-7,3,7,8,12][1,-10,7,-6,8,1,5]5試求出Vandermonde矩陣A=266664a4a3b4b3b2b1c4c3d4d3d2d1e4e3e2e1377775的行列式,并以最簡的形式顯示結(jié)果。【求解】利用書中編寫的面向符號矩陣的vander()函數(shù),可以構(gòu)造出Vandermonde矩陣并可以求出該矩陣的行列式。>>symsabcde;A=vander([abcde])A=[a^4,a^3,a^2,a,1][b^4,b^3,b^2,b,1][c^4,c^3,c^2,c,1][d^4,d^3,d^2,d,1][e^4,e^3,e^2,e,1]>>det(A),simple(ans)ans=(c-d)*(b-d)*(b-c)*(a-d)*(a-c)*(a-b)*(-d+e)*(e-c)*(e-b)*(e-a)6利用MATLAB語言提供的現(xiàn)成函數(shù)對習(xí)題4中給出的兩個矩陣進行分析,判定它們是否為奇異矩陣,得出矩陣的秩、行列式、跡和逆矩陣,檢驗得出的逆矩陣是否正確?!厩蠼狻恳訟矩陣為例,可以對其進行如下分析。>>A=[5,7,6,5,1,6,5;2,3,1,0,0,1,4;6,4,2,0,6,4,4;3,9,6,3,6,6,2;10,7,6,0,0,7,7;7,2,4,4,0,7,7;4,8,6,7,2,1,7];A=sym(A);rank(A)ans=7>>det(A)ans=-35432>>trace(A)ans=27>>B=inv(A);latex(B)32第4章線性代數(shù)問題的計算機求解A?1=266666666666666422974429?1157442927718858?170944291734429?12784429?17844296465885815378858415117716?13324429?4694429?17584429?14678858?2404717716?465117716?206413543260918858307988584827885864391771655158858?9778858418517716?14244429?7944429?8424429?4918858?616317716?887177164633543216138858?127885812718858156717716378117716256517716219354321898858?92188584298858?335317716?922517716495917716?66633543221378858?98858260188581785177163777777777777775>>A*Bans=[1,0,0,0,0,0,0][0,1,0,0,0,0,0][0,0,1,0,0,0,0][0,0,0,1,0,0,0][0,0,0,0,1,0,0][0,0,0,0,0,1,0][0,0,0,0,0,0,1]7試求出習(xí)題4中給出的A和B矩陣的特征多項式、特征值與特征向量,并驗證Hamilton-Caylay定理,解釋并驗證如何運算能消除誤差。【求解】仍以A矩陣為例。>>A=[5,7,6,5,1,6,5;2,3,1,0,0,1,4;6,4,2,0,6,4,4;3,9,6,3,6,6,2;10,7,6,0,0,7,7;7,2,4,4,0,7,7;4,8,6,7,2,1,7];A=sym(A);eig(A)ans=5.009396680079366526215873006955228.679593193974410579078264020229.27480714110743938760483528351799e-1+1.1755376247101009492093136044131*i-1.6336795424500642956747726147329+6.9740721596526560301948635104611*i-3.4765922173751363914655588544224-1.6336795424500642956747726147329-6.9740721596526560301948635104611*i.27480714110743938760483528351799e-1-1.1755376247101009492093136044131*i>>p=poly(A)p=x^7-27*x^6-18*x^5-1000*x^4+3018*x^3+24129*x^2+2731*x+35432>>p=sym2poly(p)p=第4章線性代數(shù)問題的計算機求解331-27-18-1000301824129273135432>>polyvalm(p,A)ans=[0,0,0,0,0,0,0][0,0,0,0,0,0,0][0,0,0,0,0,0,0][0,0,0,0,0,0,0][0,0,0,0,0,0,0][0,0,0,0,0,0,0][0,0,0,0,0,0,0]8試對習(xí)題4中給出的A和B矩陣進行奇異值分解、LU分解及正交分解矩陣?!厩蠼狻咳砸訟矩陣為例,這里只考慮數(shù)值解。>>A=[5,7,6,5,1,6,5;2,3,1,0,0,1,4;6,4,2,0,6,4,4;3,9,6,3,6,6,2;10,7,6,0,0,7,7;7,2,4,4,0,7,7;4,8,6,7,2,1,7];[s,v,d]=svd(A)s=-0.4239-0.10610.2030-0.4091-0.07460.05760.7691-0.14810.08940.08360.4027-0.20520.87030.0378-0.29740.0356-0.57760.48400.4

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論