數(shù)學(xué)實(shí)驗(yàn)第三次講稿ppt課件_第1頁
數(shù)學(xué)實(shí)驗(yàn)第三次講稿ppt課件_第2頁
數(shù)學(xué)實(shí)驗(yàn)第三次講稿ppt課件_第3頁
數(shù)學(xué)實(shí)驗(yàn)第三次講稿ppt課件_第4頁
數(shù)學(xué)實(shí)驗(yàn)第三次講稿ppt課件_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 1) 掌握方程求解的三種解法:解析 法、數(shù)值解法以及圖形表示解的方法; 2) 學(xué)會運(yùn)用MATLAB軟件求解析解、數(shù)值解 和圖形解; 3 經(jīng)過范例學(xué)習(xí)怎樣建立方程模型和 分析問題的思想。實(shí)驗(yàn)?zāi)康囊唬⒎匠?例子【問題背景】一段時間, 美國原子能委員會是 按以下方式處置濃縮放射性廢物的. 他們將廢物裝入 密封性能很好的圓桶中, 然后扔到水深300英尺的海 里. 這種做法能否會呵斥放射性污染, 很自然地引起 了生態(tài)學(xué)家及社會各界的關(guān)注. 原子能委員會一再保 證, 圓桶非常鞏固, 決不會破漏, 這種做法是絕對安 全的. 然而一些工程師們卻對此表示疑心, 他們以為 圓桶在海底相撞時有能夠發(fā)生破裂.

2、由此雙方展開了 一場筆墨官司. 終究誰的意見正確呢? 只能讓現(xiàn)實(shí) 說話了!數(shù)學(xué)建模的普通步驟模型預(yù)備模型預(yù)備模型假設(shè)模型假設(shè)模型構(gòu)成模型構(gòu)成模型檢驗(yàn)?zāi)P蜋z驗(yàn)?zāi)P头治瞿P头治瞿P颓蠼饽P颓蠼饽P瓦\(yùn)用模型運(yùn)用二,方程求解 1,解析方法 2,圖形放大法 3,迭代方法 4,區(qū)間方法1,方程求解之解析方法 主要針對一些比較簡單的方程以及方程組,比如多項(xiàng)式方程等。同窗們以前對方程的求解也是針對這樣一些方程進(jìn)展的。該方法的優(yōu)點(diǎn)是可以利用紙筆得到簡單有效并且準(zhǔn)確的解;缺陷是可以求解的方程數(shù)量太少。Matlab和Maple提供了求方程解析解的函數(shù),可以說對數(shù)學(xué)演算提供了不少方便。2,方程求解之圖形放大法 圖形最

3、大的有點(diǎn)就是直觀,試想假設(shè)我們有了函數(shù)準(zhǔn)確的圖形,那么曲線和x軸的交點(diǎn)就是我們要求的方程的解。因此我們可以利用圖形工具得到方程的解。當(dāng)然,計算機(jī)上的圖形不能夠等同于函數(shù)的真實(shí)圖形,由于計算機(jī)上的圖形是曲線上部分點(diǎn)的軌跡而不是全部,因此經(jīng)過圖形不能夠得到方程的準(zhǔn)確解,甚至它只是一個比較粗略的解,當(dāng)然,經(jīng)過對圖形的放大可以得到更準(zhǔn)確一些的解。同時,這種方法也不順應(yīng)大量的數(shù)據(jù)處置。 方程 f(x)=0 1建立坐標(biāo)系,畫曲線f(x); 2察看曲線f(x)與x軸相交的交點(diǎn); 3將其中一個交點(diǎn)進(jìn)展部分放大; 4該交點(diǎn)的橫坐標(biāo)值就是方程的根。 2圖形放大法例: 求方程 x5 +2x2 + 4 = 0 的一個

4、根.畫方程曲線圖畫方程曲線圖tuxfd.mx=-3:0.01:3;y=x.5+2*x.2+4;y1=0*x;plot(x,y,x,y1)-6-4-20246-8000-6000-4000-200002000400060008000由此判別:方程的一個根在區(qū)間由此判別:方程的一個根在區(qū)間-2-2,22內(nèi),因此將區(qū)間內(nèi),因此將區(qū)間-3-3,33減少至減少至-2-2,22,再察看!,再察看! 該方程有幾個根?欲尋覓其中一個實(shí)根,并且到達(dá)一定的精度。2圖形放大法 逐次減少區(qū)間,察看一個根在-1.55-1.5之間。-202-50050-2-1.5-1-20-10010-2-1.5-20-10010-1.

5、6-1.5-1.4-2-1012圖形放大法3,方程求解之迭代法 迭代法的實(shí)際以及方法的出現(xiàn),對方程求解有著里程碑式的意義。其根本思想如下: 需求求解的方程: f (x) = 0 1 經(jīng)過某種變形得:x = j (x) 2 從而求解方程1轉(zhuǎn)化成為求解2得不動點(diǎn)。滿足條件x*=j(x*)的點(diǎn)x*稱為不動點(diǎn) 為得到方程的不動點(diǎn),可以構(gòu)造迭代過程如下: xn+1 =j (xn),n =0,1, x0 定義為迭代初值。解:解: 第一步第一步 構(gòu)造迭代函數(shù):構(gòu)造迭代函數(shù): x=j (x) x=j (x)x(x1x11x)x(1xxx)x(1xxx32232123例:用迭代方法求解方程例:用迭代方法求解方程

6、 x3 -x2 -x-1 = 0。第二步第二步 迭代迭代設(shè)定初值設(shè)定初值 x0=1 x0=1, xn+1 =j (xn) xn+1 =j (xn),n =0n =0,1 1, 用用 MATLAB MATLAB 編程編程died2.mdied2.m文件文件) )x=1;y=1;z=1;(初始點(diǎn)for k=1:20 x=x3-x2-1; % j1 (x) y=(y2+y+1)(1/3); % j2 (y) z=1+1/z+1/z2; % j3 (z)endX,y,z序號3(x)序號2(x)3(x)12(x)1.44223.000081.81751.821.65371.444491.83851.85

7、5431.75322.1716101.83891.829441.79951.6725111.83911.845451.82091.9554121.83921.835561.83081.7730131.83921.841671.83541.88221(x)的迭代是失敗的迭代不收斂 。準(zhǔn)確解:x=1.8393計算結(jié)果計算結(jié)果 迭代函數(shù)j2(x)和j3(x)的選取是勝利的。準(zhǔn)確解為 x=1.8393。 并且選取函數(shù)j2(x)、j3(x)其收斂速度不一致,前者的速度快些!結(jié)論1、當(dāng)遇到迭代不收斂時有什么處理方法?2、如何提高收斂速度? 對于給定的方程 f(x) = 0, 有多種方式將它改寫成等價的方式

8、 x = j(x)。但重要的是如何改寫使得序列收斂?返 回 當(dāng)今最流行的迭代法是牛頓法以及由此改良的一些方法,比如擬牛頓法等。其根本的思想就是構(gòu)造迭代格式是利用函數(shù)的導(dǎo)數(shù),這類方法有收斂速度快,穩(wěn)定性好等特點(diǎn)。對低維和高維情況都適宜,也是當(dāng)今一些軟件均采用的方法。當(dāng)然,由于需求函數(shù)的導(dǎo)數(shù)信息,所以自然對不可微的問題遭到制約。該方法的迭代格式為: xk+1=xk-f(xk)/f(xk)例:利用牛頓法求方程x3 -x2 -x-1 = 0的根.方法:第一步,給出函數(shù)的導(dǎo)函數(shù)3x2-2x-1; 第二步,給出函數(shù)的迭代格式: xk+1=xk-f(xk)/f(xk); 設(shè)置一定的精度要求,到達(dá)即終止.定義

9、函數(shù)m文件: function ff=mynewton(x) ff=(x3 x2 -x-1 )/(3*x2-2*x-1);定義命令m文件: x0=1; x1=x0-mynewton (x0); while abs(x1-x0)0.0001 x0=x1; x1=x0-mynewton (x0); end三,解方程函數(shù)格式及例子 Matlab對方程的求解提供了以下的一些函數(shù): 1多項(xiàng)式求根; 2 線性方程組求解; 3普通的非線性方程組求解:-1.3-1.2-1.1-1-1.5-1-0.500.51x0輸出: -1.2131 - 0 . 9 0 1 7 + 0.5753i - 0 . 9 0 1 7

10、 - 0.5753i - 0 . 2 6 9 4 + 0.9406i - 0 . 2 6 9 4 - 0.9406i 0 . 4 1 6 8 + 0.8419i 0 . 4 1 6 8 - 0.8419i 0 . 8 6 0 8 + 0.3344i 0 . 8 6 0 8 - 0.3344i例:求解多項(xiàng)式方程 x9+x8+1=0輸入: p=1,1,0,0,0,0,0,0,0,1; roots(p)roots()語句的用法-10-50510-2-1.5-1-0.500.511.52x 108x04、線性方程組:AX = b 其中A是mn階矩陣,b是m維向量。 x=A b or x=inv(A)*

11、b特點(diǎn):只能求出一個特解。 solution to the following linear system of equations: You can formulate and solve the problem as A = 3 11 -2; 1 1 -2; 1 -1 1; b = 7; 4; 19; x = Ab x = 13.2188 -2.3438 3.43753146,987654321Ab例: AX = b, 解: 輸入:A=1 2 3; 4 5 6; 7 8 9; b=6; 14; -3; x1=Ab, x2=inv(A)*b輸出:警告: 系統(tǒng)的秩缺乏. 解不獨(dú)一.1、題中ra

12、nk(A)=rank(A|b)=23, 該方程組有無窮解。2、輸出結(jié)果能否一致?3、如何求方程組的全部解?思考Ab 和inv()語句的用法返 回函數(shù)fzero格式: fzero(函數(shù)名,初值或區(qū)間)Example 1. Calculate by finding the zero of the sine function near 3. x = fzero(sin,3)x = 3.1416Example 2. To find the zero of cosine between 1 and 2 x = fzero(cos,1 2)x = 1.57081、方程(組), f1(x) = 0,fn(x

13、) = 0, x = (x1,xn)2、方程(組), f1(x) = 0,fn(x) = 0, x = (x1,xn)fun.m function f = fun(x) f(1)= f1(x) ; f(n)= fn(x) 初值1可以省略。2options=1,表示輸出中間結(jié)果。solve(f1(x),f2(x),fn(x) ) X = fsolve (fun, X0, options) MATLAB軟件直接求解法輸出: 1/2/a*(-b+(b2-4*a*c)(1/2) 1/2/a*(-b-(b2-4*a*c)(1/2)單變量方程單變量方程0)(xfsolve()語句的用法例1: 求解方程 a

14、x2+bx+c = 0輸入: x= solve(a*x2+b*x+c)或 solve(a*x2+b*x+c=0)1符號解例2: 解方程: x3-2x2=x-1解: s=solve(x3-2*x2=x-1) double(s)2數(shù)字解該方程能否有實(shí)根?vpa(s,10) solve()語句的用法 例3 求解方程: tan(x)-sin(x)=0 3無窮解輸入: solve(tan(x)-sin(x)=0)輸出:0 (不能給出全部解 (tx1.m)solve()語句的用法輸入: x,y=solve(x2*y2,x-(y/2)-b)輸出:x = 0 , y = -2*b 0, -2*b 符號解 b,

15、 0 b, 0 v=x,y 多變量方程組多變量方程組0)(,0)(1xfxfm例4byxyx2022byxyx2122或 b=2solve()語句的用法05012307lnsin32zyxzxzyxy例6:求解方程組解 輸入:x,y,z=solve(sin(x)+y2+log(z)-7=0, 3*x+2y-z3+1=0,x+y+z-5=0,x,y,z)x =0.59905375664056731520568183824539y =2.3959314023778168490940003756591z =2.0050148409816158357003177860955輸出:fsolve()語句的

16、用法解:1建立方程組的M-函數(shù)文件(nxxf.m) function eq=nxxf(x) eq(1)=sin(x(1)+x(2)2+log(x(3)-7; eq(2)=3*x(1)+2x(2)-x(3)3+1; eq(3)=x(1)+x(2)+x(3)-5;運(yùn)轉(zhuǎn)程序(test4.m) y=fsolve(nxxf,1,1,1)3運(yùn)轉(zhuǎn)結(jié)果:Optimization Terminated Successfully y= 0.5990 2.3959 2.0050fsolve()語句的用法fsolve()函數(shù)的第三個輸入是函數(shù)的第三個輸入是options,它是一個構(gòu)外型數(shù)據(jù)它是一個構(gòu)外型數(shù)據(jù),可以可以

17、經(jīng)過函數(shù)經(jīng)過函數(shù)optimset ()進(jìn)展設(shè)定進(jìn)展設(shè)定.當(dāng)不進(jìn)展設(shè)定時采用缺省設(shè)置當(dāng)不進(jìn)展設(shè)定時采用缺省設(shè)置. fsolve函數(shù)還可以有后面的參數(shù)設(shè)定函數(shù)還可以有后面的參數(shù)設(shè)定,這一功能在有的時候非常這一功能在有的時候非常有用有用.fsolve()語句的用法例如,求解函數(shù)sin(ax)-x=0的最小正解.分析: 知的知識我們知道,該方程沒有解析方式的解,也就是說很難得到這個解和a之間的詳細(xì)關(guān)系.數(shù)值的方法可以對a先取確定的值,這樣變成一個一元方程,容易進(jìn)展求解,當(dāng)我們變化a時,就得到很多這樣的解,經(jīng)過這樣的方法,我們可以得到解和a之間的一些大致關(guān)系.詳細(xì)方法如下詳細(xì)方法如下:建立函數(shù)建立函數(shù)m

18、文件文件:function ff=funpara(x,a)ff=sin(a*x)-x;fsolve()語句的用法建立相應(yīng)的命令m文件:B=zeros(100,1); for a=1:100 x0=pi/(2*a)+0.01;B(a)=fsolve(funpara,x0,a);endplot(B)例:某物體的邊緣呈圓形,經(jīng)過丈量邊沿上是一個點(diǎn)的坐標(biāo),數(shù)據(jù)為見程序。運(yùn)用fsolve計算物體邊緣的曲線方程。解:假定物體邊緣的曲線方程為x-a2+(y-b)2=r2為了得到a,b和r的值。將上述十一組數(shù)據(jù)代人方程,得到xi-a2+(yi-b)2=r2i=1,11。次數(shù)方程個數(shù)是11個,未知量個數(shù)是3個。

19、運(yùn)用fsolve求解,其函數(shù)m文件為:function y=funcircle(x)A=6.7630 5.1313 2.4713 -0.3435 -2.3887 -2.9927 -1.9572 0.3778 3.2455 5.7042 6.9465;B=23.2879 25.6492 26.7268 26.1668 24.1531 21.3470 18.6699 17.0010 16.8883 18.3688 20.9564;for i=1:11 y(i)=(A(i)-x(1)2+(B(i)-x(2)2-x(3)2;end區(qū)間方法 對于一個閉區(qū)間上的延續(xù)函數(shù),我們有一個0點(diǎn)存在定理,利用這個定

20、理,可以對不可微的函數(shù)求得函數(shù)的0點(diǎn)。 根本思想是經(jīng)過判別函數(shù)在端點(diǎn)處的函數(shù)值異號可以確定函數(shù)在開區(qū)間上至少有一個0點(diǎn),然后經(jīng)過減少區(qū)間得到解的近似。 優(yōu)點(diǎn)是不需求函數(shù)的導(dǎo)數(shù)信息,而且只需有0點(diǎn)就一定可以得到;缺陷是相對牛頓法等速度較慢。NoImageNoImageNoImage 問題的關(guān)鍵在于圓桶究竟能接受多大速度問題的關(guān)鍵在于圓桶究竟能接受多大速度的碰撞的碰撞? 圓桶和海底碰撞時的速度有多大圓桶和海底碰撞時的速度有多大? 工程師們進(jìn)展了大量破壞性的實(shí)驗(yàn)工程師們進(jìn)展了大量破壞性的實(shí)驗(yàn), 發(fā)現(xiàn)發(fā)現(xiàn)圓桶在直線速度為圓桶在直線速度為40 ft/s 的沖撞下會發(fā)生破裂的沖撞下會發(fā)生破裂, 剩下的問題

21、就是計算圓桶沉入剩下的問題就是計算圓桶沉入300 ft 深的海底深的海底時時, 其末速度終究有多大其末速度終究有多大? 問題分析問題分析引例的分析和求解 1. 運(yùn)用運(yùn)用55加侖的圓桶加侖的圓桶; ( 1加侖加侖 = 3.7854升升 ) 2. 裝滿放射性廢物時的圓桶分量為裝滿放射性廢物時的圓桶分量為 W = 527.436磅磅 (1 磅磅 = 0.4526公斤公斤 ) 3. 在海水中圓桶遭到的浮力在海水中圓桶遭到的浮力 B = 470.327磅磅 4. 圓桶下沉?xí)r遭到海水的阻力圓桶下沉?xí)r遭到海水的阻力 D = C v C 為常數(shù)為常數(shù), 經(jīng)測算得經(jīng)測算得: C = 0.08. 5. 建立坐標(biāo)系

22、建立坐標(biāo)系, 取垂直向下為坐標(biāo)方向取垂直向下為坐標(biāo)方向 y , 海平面為坐標(biāo)原點(diǎn)海平面為坐標(biāo)原點(diǎn).y0 問題假設(shè)問題假設(shè)引例根據(jù)牛頓第二定律根據(jù)牛頓第二定律, , 圓桶下沉?xí)r應(yīng)滿足微分方程圓桶下沉?xí)r應(yīng)滿足微分方程: :)(/(86.713)(lim)1 ()(0)0(:dd,dd22時當(dāng)速度:容易計算出圓桶的極限其解:初值條件其中阻力)浮力(重力tsftCBWtveCBWtvvBCvWdtdvmvtyCvDgWmDBWtymtWCg327.470B 建立模型建立模型引例 為了求出圓桶與海底的碰撞速度為了求出圓桶與海底的碰撞速度v(t), 需求求出需求求出圓桶下沉到海底圓桶下沉到海底300英尺時的時間英尺時的時間 t, 再計算再計算v(t),要,要做到這一點(diǎn)是非常困難的做到這一點(diǎn)是非常困難的. 假設(shè)將速度假設(shè)將速度v 看成是海水看成是海水深度深度y 的函數(shù)的函數(shù), 即即vyvtyyvtvtytyvtvdddddddddd)()(22由復(fù)合函數(shù)的求導(dǎo)法知由復(fù)合函數(shù)的求導(dǎo)法知 建立模型建立模型引例WgyBWCvBWCBWCvyvWgyvCvBWvCvBWyvmvln0)0(,0)0(dddd2積分,得:初值條件:或微

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論