數(shù)學(xué)實(shí)驗(yàn)之2.方程求解(1)(2004.3)_第1頁
數(shù)學(xué)實(shí)驗(yàn)之2.方程求解(1)(2004.3)_第2頁
數(shù)學(xué)實(shí)驗(yàn)之2.方程求解(1)(2004.3)_第3頁
數(shù)學(xué)實(shí)驗(yàn)之2.方程求解(1)(2004.3)_第4頁
數(shù)學(xué)實(shí)驗(yàn)之2.方程求解(1)(2004.3)_第5頁
已閱讀5頁,還剩51頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

數(shù)學(xué)實(shí)驗(yàn)之二方程求解(1)MathematicalExperements實(shí)驗(yàn)?zāi)康腫1]復(fù)習(xí)求解方程的基本原理和方法;[2]掌握迭代算法;[3]熟悉MATLAB軟件編程環(huán)境;掌握MATLAB編程語句;[4]了解迭代過程的圖形表示,分形與混沌學(xué)科等;[5]通過范例展現(xiàn)求解實(shí)際問題的初步建模過程;返回主要內(nèi)容方程的常用求解方法迭代過程的圖解實(shí)驗(yàn)內(nèi)容引言及引例圖形放大簡(jiǎn)單迭代牛頓迭代返回求高次代數(shù)方程的根是一個(gè)基本的、古老的數(shù)學(xué)問題。高階方程能否求解?定義:一些由實(shí)際問題列出的方程中常常包含三角函數(shù)、指數(shù)函數(shù)等,它與n(≥2)代數(shù)方程一起統(tǒng)稱為非線性方程(組),記作引言例:exsin(x)+5x3=0一元二次方程高階多項(xiàng)式方程計(jì)算機(jī)技術(shù)和數(shù)學(xué)軟件的飛速發(fā)展,為一些古老數(shù)學(xué)問題的解決提供了極大的方便。如利用MATLAB的圖形功能就能幫助我們判斷方程有沒有根,確定根的近似位置,例如:-0.51.52.50.252.5引言對(duì)于一般的非線性方程,怎樣得到比較精確的近似解,正是該試驗(yàn)要研究或解決的問題。引言方程的常用求解方法1.圖形放大法2.簡(jiǎn)單迭代法3.牛頓迭代法返回

方程

f(x)=01)建立坐標(biāo)系,畫曲線f(x);2)觀察曲線f(x)與x軸相交的交點(diǎn);3)將其中一個(gè)交點(diǎn)進(jìn)行局部放大;4)該交點(diǎn)的橫坐標(biāo)值就是方程的根。1.圖形放大法例:

求方程

x5+2x2+4=0的一個(gè)根.畫方程曲線圖(tuxfd.m)x=-6:0.01:6;y=x.^5+2.*x.^2+4;y1=zeros(1,length(x));plot(x,y,x,y1)或ezplot(‘f(x)’,[a,b])由此判斷:方程的一個(gè)根在區(qū)間[-2,2]內(nèi),因此將區(qū)間[-6,6]縮小至[-2,2],再觀察!該方程有幾個(gè)根?欲尋找其中一個(gè)實(shí)根,并且達(dá)到一定的精度。1.圖形放大法逐次縮小區(qū)間,觀察一個(gè)根在-1.55~-1.5之間。MATLAB(tuxfd1.m)1.圖形放大法返回2.簡(jiǎn)單迭代算法引例:3xex=0

Z

1)該方程有多少個(gè)根?如何判斷?2)如何進(jìn)行迭代求解?方程變形:x=ex/301/31/30.46520.46520.5308方程3xex=0的迭代求解表:x=ex/32.簡(jiǎn)單迭代算法0.616y=xy=ex/3迭代過程如圖所示2.簡(jiǎn)單迭代算法方程:

f(x)=0經(jīng)過簡(jiǎn)單變形:x=j(x)或

j(x)=f

(x)+xx被稱為不動(dòng)點(diǎn)。迭代過程如下:xn+1=j(xn),n=0,1,…x0定義為迭代初值。迭代算法步驟1.表達(dá)式x=j(x)是否唯一?2.迭代產(chǎn)生的序列是否一定會(huì)收斂?3.迭代與初始值x0是否有關(guān)?Z

解:

第一步構(gòu)造迭代函數(shù):

x=j(x) 例:用迭代方法求解方程x3

-x2-x-1=0。2.簡(jiǎn)單迭代算法第二步迭代

設(shè)定初值x0=1,

xn+1=j(xn),n=0,1,…用MATLAB編程(died2.m)x(1)=1;y(1)=1;z(1)=1;%(初始點(diǎn))fork=1:20x(k+1)=x(k)^3-x(k)^2-1;%j1(x)y(k+1)=(y(k)^2+y(k)+1)^(1/3);%j2(y)z(k+1)=1+1/z(k)+1/z(k)^2;%j3(z)endx,y,z2.簡(jiǎn)單迭代算法序號(hào)j3(x)序號(hào)j2(x)j3(x)1j2(x)1.44223.000081.81751.813621.65371.444491.83851.855431.75322.1716101.83891.829441.79951.6725111.83911.845451.82091.9554121.83921.835561.83081.7730131.83921.841671.83541.8822j1(x)的迭代是失敗的(迭代不收斂

)。精確解:x=1.8393計(jì)算結(jié)果2.簡(jiǎn)單迭代算法

迭代函數(shù)j2(x)和j3(x)的選取是成功的。精確解為

x=1.8393。并且選取函數(shù)j2(x)、j3(x)其收斂速度不一致,前者的速度快些!結(jié)論1、當(dāng)遇到迭代不收斂時(shí)有什么解決辦法?2、如何提高收斂速度?

對(duì)于給定的方程

f(x)=0,有多種方式將它改寫成等價(jià)的形式

x=j(x)。但重要的是如何改寫使得序列收斂?返回

x=j(x)迭代不收斂,則不直接使用(x)迭代,而用由j(x)與x的加權(quán)平均,h(x)=l

j(x)+(1-l)x

進(jìn)行迭代,其中l(wèi)為參數(shù)。顯然

x=h

(x)x=j(x)加速迭代收斂法xn+1

=h

(xn)xn+1

=j(xn)關(guān)鍵是如何確定函數(shù)h(x)中的參數(shù)l?理論證明:在滿足|h’(x)|<1的條件下,

h’(a)=0,解出用xn替換a,得從而迭代過程:即

l

j’(a)+(1-l)=0加速迭代收斂法例如:當(dāng)j1(x)=x3-x2-1時(shí),進(jìn)行改進(jìn)得:實(shí)驗(yàn)發(fā)現(xiàn),它比j2(x),j3(x)的收斂速度要快!加速迭代收斂法返回牛頓法是一種具體構(gòu)造迭代公式的方法。3.牛頓迭代法返回牛頓法在求解方程的根的問題中有極其廣泛的應(yīng)用,算法的特點(diǎn)是收斂速度快,跟其他方法進(jìn)行比較,計(jì)算量相對(duì)較少。牛頓法又叫切線法。3.牛頓迭代法返回1切線法對(duì)于方程f(x)=0,將f(x)在xk作泰勒展開,去掉2階及2階以上的項(xiàng),簡(jiǎn)化后得:

f(x)=f(xk)+f’(xk)(x-xk)設(shè)f’(xk)≠0,用xk+1代替右端的x,且f(x)=0,得到迭代公式:x0x1x2xy=f(x)y0牛頓迭代法的幾何解釋:具有2階收斂。為了避免切線法計(jì)算導(dǎo)數(shù)的麻煩,用差商代替導(dǎo)數(shù)。3.牛頓迭代法返回2割線法迭代公式:收斂速度比切線法稍慢。牛頓法可以編制通用程序。newton1.m3.牛頓迭代法返回functiony=newton1(x0,n,tol)x(1)=x0;b=1;i=1;while(abs(b)>tol*x(i))&(i<=n)x(i+1)=x(i)–fun1(x(i))/dfun1(x(i));b=x(i+1)–x(i);i=i+1;if(i>n)error(‘nisfull’);endendy=x(i);其中輸入初值x0,允許最大迭代次數(shù)n及相對(duì)誤差限tol,輸出根的近似值y。程序中需要調(diào)用函數(shù)M文件fun1.m和dfun1.m。思考:方程組的牛頓迭代法。算例求方程的根.建立兩個(gè)M函數(shù)文件:functiony=fun2(x)L=25.4;r=2;v=10;y=L*r^2*((pi/2)-asin(x/r))-L*x*sqrt(r^2-x^2)-v;

functiony=dfun2(x)L=25.4;r=2;v=10;y=L*(2-r)/sqrt(r^2-x^2)-L*sqrt(r^2-x^2);算例在工作空間中使用如下命令:x0=0.5;tol=0.01;n=10000;y=newton1(x0,n,tol)計(jì)算結(jié)果:y=1.7166-0.0050i思考:牛頓迭代法與基本迭代加速之間的關(guān)系。二次函數(shù)考慮a的取值范圍[0,4]。為能了解迭代數(shù)列{xk}收斂或發(fā)散的原因,通過幾何圖形觀察使用迭代格式

:x0=c

xk+1=f(xk)。進(jìn)行迭代的過程。函數(shù)的迭代是數(shù)學(xué)研究中的一個(gè)非常重要的思想工具。哪怕是對(duì)一個(gè)相當(dāng)簡(jiǎn)單的函數(shù)進(jìn)行迭代,都可以產(chǎn)生異常復(fù)雜的行為,并由此衍生了一些嶄新的學(xué)科分支,如分形與混沌。例如迭代過程的圖解注意:不同的參數(shù)a,產(chǎn)生的序列{xn}可能收斂或可能發(fā)散。觀察a取什么值時(shí)收斂(或發(fā)散)?三種圖形顯示方式:1)線性連接圖用點(diǎn)(n,xn)描述迭代點(diǎn),并用直線連接這些點(diǎn)所形成的折線圖(橫坐標(biāo)表示n,縱坐標(biāo)表示xn)。我們可以用圖形的方式來反映迭代的過程。如:迭代過程的圖解震蕩發(fā)散情形收斂情形線性連接圖a=0.5;x1=[];x1(1)=0.5;fori=2:20x1(i)=a*x1(i-1)*(1-x1(i-1));endn=1:20;subplot(2,2,1),plot(n,x1),title('a=0.5,x0=0.5')subplot(2,2,2),plot(n,x2),title('a=1.5,x0=0.5')subplot(2,2,3),plot(n,x3),title('a=2.5,x0=0.5')subplot(2,2,4),plot(n,x4),title('a=3.5,x0=0.5')MATLAB程序died4.m在直角坐標(biāo)系中,首先畫出直線y=x和曲線y=f(x),其中f(x)為迭代曲線。①

從直線y=x上點(diǎn)An(xn,xn)到曲線y=f(x)上點(diǎn)Bn(xn,xn+1);(垂直)②從Bn(xn,xn+1)到An(xn+1,xn+1);(水平)③重復(fù)。a=2.9,x0=0.2

AnBnAny=xy=f(x)蛛網(wǎng)圖發(fā)散情形收斂情形蛛網(wǎng)圖x1=[];a=2.9;x=-0.2:0.01:1.2;y=a.*x.*(1-x);plot(x,y),holdon%畫二次函數(shù)曲線ezplot(‘x’,[-0.2,1.2])%畫直線x1(1)=0.2;%初始點(diǎn)fori=2:50x1(i)=a*x1(i-1)*(1-x1(i-1));plot([x1(i-1),x1(i-1)],[x1(i-1),x1(i)]);plot([x1(i-1),x1(i)],[x1(i),x1(i)]);End%畫折線x1;died8.mMATLAB程序該圖形特點(diǎn):觀察當(dāng)參數(shù)a連續(xù)變化時(shí),函數(shù)f(x)=ax(1-x)的收斂與發(fā)散情況。a=2.9a=3.4混沌圖在連接圖和蛛網(wǎng)圖中,可以觀察對(duì)不同參數(shù)值,函數(shù)迭代序列的斂散性情況。但參數(shù)僅取幾個(gè)離散值,導(dǎo)致序列收斂與發(fā)散的參數(shù)a的分界值究竟在什么位置?能否對(duì)參數(shù)連續(xù)取值觀察序列收斂性的變化?axn∶∶∶·a1a2混沌圖的構(gòu)圖原理

具體做法是:將區(qū)間(0,4]以某個(gè)步長(zhǎng)△a離散化。對(duì)每個(gè)離散的a值做迭代,忽略前50個(gè)迭代值x1,x2,…,x50,而把點(diǎn)(a,x51),(a,x52),…,(a,x100)顯示在坐標(biāo)平面上,最后形成的圖形稱為Feigenbaum圖。該圖主要目的是:對(duì)不同的參數(shù)a系統(tǒng)地觀察迭代的行為?;煦鐖D的構(gòu)圖原理編寫一個(gè)對(duì)含參變量函數(shù)

f(x,a)進(jìn)行迭代可調(diào)用程序。functionroot=iter(x0,a)x=[];x(1)=x0;fori=2:100x(i)=a*x(i-1)*(1-x(i-1));endroot=x;%產(chǎn)生100個(gè)迭代序列組成的數(shù)組MATLAB程序iter.mclf;x=2;holdon;fora=2:0.01:4root=iter(x,a);plot(a.*ones(size(root(51:100))),root(51:100),'.')endxlabel('parametera');ylabel('迭代序列(51-100)');

died9.mMATLAB程序從極限分支點(diǎn)之后,F(xiàn)eigenbaum圖顯得很雜亂,似乎沒有任何規(guī)律。實(shí)際上,對(duì)任何初始值做迭代都會(huì)得到同樣的結(jié)果。這就是所謂的混沌現(xiàn)象。我們以a=4為例來說明迭代序列對(duì)初值的敏感性。觀察:無論兩個(gè)初值如何接近,在迭代過程中,與之產(chǎn)生的對(duì)應(yīng)序列{xn}、{yn}將漸漸分開,稱迭代對(duì)初值是敏感的。這是任何混沌系統(tǒng)都具有的特性之一。這種特性使得混沌系統(tǒng)會(huì)產(chǎn)生似乎是隨機(jī)的沒有規(guī)律的現(xiàn)象?;煦鐖D的特點(diǎn)迭代格式:xn+1=4xn(1-xn),n=0,1,…1、取初始點(diǎn)x0=0.2,記產(chǎn)生的序列為xn;2、取初始點(diǎn)x0=0.201,記產(chǎn)生的序列為yn;3、作線性連接圖。即plot(n,xn-yn);敏感性分析另外,混沌不是隨機(jī)的,由圖形可以發(fā)現(xiàn),它們具有自相似現(xiàn)象。呈周期變化的形態(tài)。敏感性分析通過實(shí)驗(yàn)我們發(fā)現(xiàn)函數(shù)f(x)=ax(1-x)對(duì)參數(shù)a是敏感的。當(dāng)參數(shù)取值a=2.9時(shí),迭代是收斂的,且收斂于0.655;而對(duì)a=3.4時(shí),迭代是發(fā)散的,且在兩個(gè)值之間有規(guī)律地來回取值,因此稱為2-周期的,當(dāng)a=3.55左右,其迭代是4-周期的;然后是8-周期,16-周期,…等等。這就是所謂的分歧現(xiàn)象。隨著參數(shù)a取值的增加,分歧頻率加快。費(fèi)根鮑通過計(jì)算機(jī)進(jìn)行數(shù)值計(jì)算驚奇地發(fā)現(xiàn):分歧頻率是成比例增大,其比例常數(shù)是4.6692016…。小結(jié)返回迭代——分形(1)(2)(3)(4)迭代——分形雪花曲線生成元Koch.m迭代——分形樹木花草生成元迭代——分形Minkowski曲線生成元迭代——分形Sierpinski三角形生成元Serpinski.m【問題背景】

一段時(shí)間,美國原子能委員會(huì)是按以下方式處理濃縮放射性廢物的.他們將廢物裝入密封性能很好的圓桶中,然后扔到水深300英尺的海里.這種做法是否會(huì)造成放射性污染,很自然地引起了生態(tài)學(xué)家及社會(huì)各界的關(guān)注.原子能委員會(huì)一再保證,圓桶非常堅(jiān)固,決不會(huì)破漏,這種做法是絕對(duì)安全的.然而一些工程師們卻對(duì)此表示懷疑,他們認(rèn)為圓桶在海底相撞時(shí)有可能發(fā)生破裂.由此雙方展開了一場(chǎng)筆墨官司.究竟誰的意見正確呢?只能讓事實(shí)說話了!范例:放射性

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論