《數(shù)學(xué)實(shí)驗(yàn) 第4版》課件 2.2 非線性方程的解_第1頁
《數(shù)學(xué)實(shí)驗(yàn) 第4版》課件 2.2 非線性方程的解_第2頁
《數(shù)學(xué)實(shí)驗(yàn) 第4版》課件 2.2 非線性方程的解_第3頁
《數(shù)學(xué)實(shí)驗(yàn) 第4版》課件 2.2 非線性方程的解_第4頁
《數(shù)學(xué)實(shí)驗(yàn) 第4版》課件 2.2 非線性方程的解_第5頁
已閱讀5頁,還剩33頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1第二章方程及方程組的解實(shí)驗(yàn)2.1線性方程組的解

實(shí)驗(yàn)2.2非線性方程的解2實(shí)驗(yàn)2.2非線性方程組的解數(shù)學(xué)實(shí)驗(yàn)一、二分法二、簡單迭代法三、牛頓迭代法四、應(yīng)用舉例3實(shí)驗(yàn)2.2非線性方程的解一、二分法1.數(shù)學(xué)原理4離區(qū)間,重復(fù)上述做法,實(shí)驗(yàn)2.2非線性方程的解52.MATLAB實(shí)現(xiàn)用二分法求方程根的近似值,一般分為兩步:第一步根的隔離用fplot函數(shù)作出y=f(x)的圖形,它與x軸的交點(diǎn)就是方程f(x)=0的根.確定根的存在區(qū)間[a,b](即根的隔離區(qū)間)使方程第二步根的逐次逼近若函數(shù)f(x)在根的隔離區(qū)間[a,b]上單調(diào)連續(xù),且則在(a,b)內(nèi)方程有唯一根.我們可以反復(fù)用將根的隔離區(qū)間一分為二,其中含有根的區(qū)間為新的隔離區(qū)間的方法,最終搜索到達(dá)到要求精度的根的近似值.實(shí)驗(yàn)2.2非線性方程的解6實(shí)驗(yàn)2.2非線性方程的解functiony=erfen(fun,a,b,esp)iffeval(fun,a).*feval(fun,b)<0n=1;c=(a+b)/2;

whileabs(b-a)>esp

if

feval(fun,a).*feval(fun,c)<0b=c;c=(a+b)/2;

elseiffeval(fun,c).*feval(fun,b)<0a=c;c=(a+b)/2;

elsey=c;esp=10000;

end打開M-edit窗口,編寫二分法程序:erfen·mn=n+1;endy=c;elseiffeval(fun,a)==0y=a;elseiffeval(fun,b)==0y=b;elsedisp('these,maynotbearootintheintercal');endn7實(shí)驗(yàn)2.2非線性方程的解解fplot('x^4-8.6*x^3-35.51*x^2+464.4*x-998.46',[0,10]),gridon↙例6

求方程的隔離區(qū)間,并用二分(1)求根的隔離區(qū)間,設(shè)法求方程在這個(gè)區(qū)間內(nèi)根的近似值,使誤差不在命令窗口輸入:8實(shí)驗(yàn)2.2非線性方程的解經(jīng)過15次搜索,得到方程的近似根為x=7.3485,誤差不超過functiony=f(x)y=x^4-8.6*x^3-35.51*x^2+464.4*x-998.46;erfen('f',7,8,1.0e-4)↙在命令窗口輸入:編寫函數(shù)文件f.mn=15ans=7.3485

由二分法的原理可知,當(dāng)根的隔離區(qū)間較大時(shí),收斂于根的速度很快;而當(dāng)根的隔離區(qū)間較小時(shí),靠近根的速度較緩慢,且難以滿足高精度的要求.因此常用這種方法為迭代法提供初值.9實(shí)驗(yàn)2.2非線性方程的解二、簡單迭代法簡單迭代法的基本思想是將方程改寫為等價(jià)形式當(dāng)方程的根難以求出時(shí),這種求根的近似值的方法稱為簡單迭代法.稱為迭代格式.1.簡單迭代法簡介10實(shí)驗(yàn)2.2非線性方程的解用迭代法求方程的根的首要問題是迭代序列是否收斂.為此我們先從幾何上觀察由簡單迭代格式得到的迭代序列的收斂性.由圖可見,根據(jù)初始值因此迭代序列是收斂的.11在下圖中,按上述同樣的方法產(chǎn)生的點(diǎn)列逐漸遠(yuǎn)離交點(diǎn)

,可見迭代序列是發(fā)散的.通過上面的作圖可見,迭代序列是否收斂與a的取值有關(guān),實(shí)驗(yàn)2.2非線性方程的解12實(shí)驗(yàn)2.2非線性方程的解2.簡單迭代法MATLAB實(shí)現(xiàn)先編寫簡單迭代程序iterate.m及關(guān)于方程的函數(shù)f.m文件存入工作窗口,再調(diào)用其中x0為初始值.編寫迭代法程序iterate.m:簡單迭代法命令iterate('f',x0),functiony=iterate(fun,x,esp)ifnargin<3esp=1e-4;endx1=feval(fun,x);n=1;while(abs(x1-x)>=esp)&(n<=1000)

x=x1;

x1=feval(fun,x);

n=n+1;endx1n其中espw為精度.13,分別用下面兩種迭代格式:例7

已知方程求方程根的近似值,使誤差不超過解在迭代法程序iterate.m中,令esp=1.0e-4.(1)編寫函數(shù)g.m文件functiony=g(x)y=(0.8+x^2)^(1/3);在命令窗口輸入:iterate('g',1.5)↙實(shí)驗(yàn)2.2非線性方程的解x1=1.4052n=1014functiony=g1(x)y=(x^3-0.8)^0.5;(2)編寫函數(shù)g1.m文件在命令窗口輸入:迭代格式(2)發(fā)散.iterate(1.5)↙實(shí)驗(yàn)2.2非線性方程的解經(jīng)過10次迭代,得到方程的近似根為x=1.4052,誤差不超過x1=

Infn=2015在迭代格式(1)中,設(shè),則在迭代格式(2)中,設(shè),則迭代格式(2)是發(fā)散的.迭代格式是收斂的.實(shí)驗(yàn)2.2非線性方程的解16定理則在該鄰域內(nèi)的任意初始值收斂于α.(證明略)但如何改寫才能使迭代序列收斂?收斂的速度更快?這是用迭代法求方程的根的另一個(gè)問題.注意到迭代函也是他們的加權(quán)平均的不動(dòng)點(diǎn).根據(jù)上面的實(shí)驗(yàn),使得迭代序列收斂并加快收斂速度,實(shí)驗(yàn)2.2非線性方程的解17得于是得修正迭代函數(shù)修正迭代格式實(shí)驗(yàn)2.2非線性方程的解18在例7中,g2.mfunctiony=g2(x)y=x-[3*(0.8+x^2)-3*x*(0.8+x^2)^(2/3)]/[2*x-3*(0.8+x^2)^(2/3)]iterate('g2',1.5)↙輸入:迭代格式(1)修正后,經(jīng)過2次迭代,得到方程的近似根

x=1.4052,誤差不超過10-4,收斂速度明顯加快.利用修正迭代格式求根的近似值如下:實(shí)驗(yàn)2.2非線性方程的解x1=1.4052n=219編寫函數(shù)文件g3.m:functiony=g3(x)y=x-[2*(x^3-0.8)-2*x*(x^3-0.8)^(1/2)]/[3*x^2-2*(x^3-0.8)^(1/2)]iterate('g3',1.5)↙輸入:迭代格式(2)修正后,經(jīng)過2次迭代,就可以達(dá)到所求的近似根.實(shí)驗(yàn)2.2非線性方程的解x1=1.4052n=220實(shí)驗(yàn)2.2非線性方程的解三、牛頓迭代法牛頓迭代法是將非線性方程f(x)=0的求解逐步化為線性方程來求解,是線性化與迭代法的結(jié)合.從幾何上看,就是用曲線上一點(diǎn)的切線與x軸的交點(diǎn)來近似代替根.1.非線性方程單根的求法如圖21重復(fù)這一過程得迭代格式這種求方程近似根的方法稱為牛頓迭代法.迭代函數(shù)為實(shí)驗(yàn)2.2非線性方程的解222.非線性方程重根的求法若存在正整數(shù)m使得可以證明,在充要條件是實(shí)驗(yàn)2.2非線性方程的解由此可見,則即233.牛頓迭代法的MATLAB實(shí)現(xiàn)編寫牛頓迭代法程序newton.m:functiony=newton('f',df,x0)x1=x0-feval(f,x0)/feval(df,x0);esp=1e-4;n=1;while(abs(x1-x0)>=esp)

x0=x1;x1=x0-feval(f,x0)/feval(df,x0);

n=n+1;endx1n實(shí)驗(yàn)2.2非線性方程的解24例8

用牛頓迭代法求方程在[0,1]內(nèi)實(shí)根的近似值,使誤差不超過解在牛頓迭代法程序中,取編寫函數(shù)文件f.m:functiony=f(x)y=exp(x)+10*x-2;編寫f(x)的導(dǎo)函數(shù)文件df.m:functiony=f(x)y=exp(x)+10;實(shí)驗(yàn)2.2非線性方程的解25分別取初值x0=1,0,在命令窗口輸入:newton('f','df',1)↙newton('f','df',0)↙當(dāng)初值x0=1時(shí),迭代4次后得到滿足要求的的近似解

x=0.0905;

當(dāng)初值x0=0時(shí),僅迭代3次后得到所求的解.由此可見,選擇適當(dāng)?shù)某踔悼梢蕴岣叩蛄械氖諗克俣?實(shí)驗(yàn)2.2非線性方程的解x1=0.0905n=4x1=0.0905n=326例9

求方程附近的根,使誤差不超過解由例6知,方程在x=4附近有一重根.在牛頓迭代法中,編寫函數(shù)文件f1.m:functiony=f1(x)y=x^4-8.6*x^3-35.51*x^2+464.4*x-998.46;實(shí)驗(yàn)2.2非線性方程的解編寫f1(x)的導(dǎo)函數(shù)文件df1.m:functiony=df1(x)y=4*x^3-25.8*x^2-71.02*x+464.4;在命令窗口輸入:newton('f1','df1',4.0)↙x1=4.2999n=

12經(jīng)過12次迭代,得到滿足要求的解

x=4.2999.27用公式編寫函數(shù)文件f2.m:functiony=f2(x)y=(x^4-8.6*x^3-35.51*x^2+464.4*x-998.46)/(4*x^3-25.8*x^2-71.02*x+464.4);實(shí)驗(yàn)2.2非線性方程的解編寫f2(x)的導(dǎo)函數(shù)文件df2.m:functiony=df2(x)y=1-(x^4-8.6*x^3-35.51*x^2+464.4*x-998.46)*(12*x^2-51.6*x-71.02)/(4*x^3-25.8*x^2-71.02*x+464.4)^2;在命令窗口輸入:newton('f2','df2',4.0)↙經(jīng)過3次迭代,得到滿足要求的解

x=4.3000.x1=4.3000n=328從圖中可以看出,在[3,5]內(nèi)f1(x)=0有一個(gè)重根.如果選取的初值x0不恰當(dāng),點(diǎn)的切線斜率的絕對值就會(huì)較大,此時(shí)用切線與x軸的交點(diǎn)x1作為根的近似值,與用x0作為根的近似值產(chǎn)生的誤差相差無幾,因此用f1(x)構(gòu)造的牛頓迭代序列收斂性較差(迭代50次才達(dá)到要求的精度?。。?而用f2(x)構(gòu)造的迭代序列收斂速度非??欤▋H需要迭代3次就可以達(dá)到要求的進(jìn)度.實(shí)驗(yàn)2.2非線性方程的解

數(shù)值求解非線性方程的方法雖然比較機(jī)械,有時(shí)需要進(jìn)行大量的重復(fù)計(jì)算,但其詮釋了無限逼近的過程,精確與近似的相對統(tǒng)一.29實(shí)驗(yàn)2.2非線性方程的解四、應(yīng)用舉例一輛汽車售價(jià)A0元,可分m個(gè)月付款,每月需交b元,計(jì)算這種分期付款的年利率.利用這種方式購車,我們需要每月把b元存入汽車銷售商的賬戶,也就相當(dāng)于汽車銷售商周期的收入資金.設(shè)利率按每月收款計(jì)算為r,為使m個(gè)月后存入銀行A0元,則第一個(gè)月應(yīng)該交第二個(gè)月應(yīng)該交于是有30由公式(1)可以計(jì)算出月利率,月利率乘以12便可以得到年利率.若買一輛汽車15000元,可分60個(gè)月付款,每月需交3114元;也可以向銀行貸款,貸款的期限為5年,年利率為6.66%,應(yīng)該選擇哪一種方式購車.例10解在公式(1)中,于是得顯然r=0是上述方程的根,但這里我們要求的是最小正根.實(shí)驗(yàn)2.2非線性方程的解編寫函數(shù)文件f.m31編寫函數(shù)文件f.mfunction

y=f(r)y=150000*r*(1+r)^60-3114*(1+r)^60+3114;確定根的隔離區(qū)間fplot('f',[0.001,0.5]),gridon↙由圖知根的隔離區(qū)間[0.001,0.5].實(shí)驗(yàn)2.2非線性方程的解32調(diào)用二分法的程序,在命令窗口輸入:erfen('f',0.001,0.5,1.0e-4)↙于是得月利率年利率為所以分期付款買車要付的利率高達(dá)9%,與5年貸款的利率比較,最好選擇貸款買車.實(shí)驗(yàn)2.2非線性方程的解n=

14ans=0.007533例11

某人要貸款30000元購房,現(xiàn)有兩種貸款方式:(1)貸款在20年內(nèi)分240次按月本息等額償還,每月還款2510元;(2)在每月還款額基本不變的條件下,提前兩年還清貸款,但要求首期先預(yù)付半年的還款,且改每月還款2510元為每半月還款1255元。應(yīng)選擇哪種方式貸款?解(1)按月等額償還.設(shè)借款的月利率為r,由公式實(shí)驗(yàn)2.2非線性方程的解于是有整理得34記編寫函數(shù)文件f.mfunction

y=f(r)y=30000*r*(1+r)^240-251*(1+r)^240+251;實(shí)驗(yàn)2.2非線性方程的解計(jì)算函數(shù)f(r)的值:feval('f',0.05)↙feval('f',0.001)↙ans=

1.5205e+08ans=-29.912435編寫導(dǎo)函數(shù)文件df.mfunctiony=df(r)y=30000*(1+r)^240+30000*240*r*(1+r)^239-251*240*(1+r)^239;在牛頓迭代法程序中,取初值在命令窗口輸入:newton('f','df',0.05)↙r1=0.0067n=

163

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論