




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第第 二章二章理學院應用數(shù)學系理學院應用數(shù)學系立體化教學資源系列立體化教學資源系列數(shù)值分析數(shù)值分析2.1 引言引言一、人口增長模型一、人口增長模型設人口數(shù)量隨著時間以固定的相對增長率變化設人口數(shù)量隨著時間以固定的相對增長率變化. .)()(tNdttdN令令N( (t ) )為為t 時刻的人口數(shù)量時刻的人口數(shù)量. . : :人口出生率人口出生率. .1 1) )人口數(shù)量的微分方程人口數(shù)量的微分方程模型模型: :2)2)指數(shù)模型指數(shù)模型:teNtN0)(N0 0: :初始時刻人口數(shù)量初始時刻人口數(shù)量. .vtNdttdN)()(如果允許移民移入且移入速率如果允許移民移入且移入速率v為固定常數(shù),則
2、為固定常數(shù),則3)3)有移民移入的指數(shù)模型有移民移入的指數(shù)模型: : )1()(0tteveNtN非線性方程非線性方程(組組)假設假設某地區(qū)開始有某地區(qū)開始有10000001000000人人, ,在第一年有在第一年有435000435000人移民進入該地區(qū)人移民進入該地區(qū), ,假設假設在第一年底該地區(qū)的人數(shù)在第一年底該地區(qū)的人數(shù)量是量是154000154000。得該地區(qū)人口得該地區(qū)人口的出生率。的出生率。 00.10.20.30.40.50.60.70.80.91100015002000250030003500出 生 率人口數(shù)量(千)P()=1000exp()+435(exp()-1)/P()
3、=1564) 1(43500010000001564000ee通過求解方程通過求解方程【注注】非線性方程非線性方程可以求出數(shù)值解可以求出數(shù)值解。 非線性方程非線性方程(組組)上述這些問題,都歸結為上述這些問題,都歸結為求非線性函數(shù)方程的零點求非線性函數(shù)方程的零點,即求即求x*,使使.sin2 . 0cos7 . 0,cos2 . 0sin7 . 0yxyyxx0)(*xf非線性方程非線性方程: :對于多項式,對于多項式,5 5次及次及5 5次以上的方程無求根次以上的方程無求根公式。超越方程求根也如此。公式。超越方程求根也如此。多項式方程及超越方程通常用數(shù)值方法求近似解。多項式方程及超越方程通常
4、用數(shù)值方法求近似解。非線性方程組非線性方程組:非線性現(xiàn)象廣泛存在于物質世界與社會生活中非線性現(xiàn)象廣泛存在于物質世界與社會生活中。二、數(shù)值求解方程(組)的必要性二、數(shù)值求解方程(組)的必要性非線性方程非線性方程(組組)若若f( (x)=0)=0為實系數(shù)的代數(shù)方程,為實系數(shù)的代數(shù)方程,則則復數(shù)根成對出現(xiàn),復數(shù)根成對出現(xiàn),設設f( (x)=0)=0為具有復系數(shù)的為具有復系數(shù)的n次代數(shù)方程,次代數(shù)方程, 則則f( (x)=0)=0于復數(shù)域上恰有于復數(shù)域上恰有 n 個根個根( (r重根計算重根計算r個個) )。也是也是f( (x)=0)=0的根。的根。即當即當 是是 f( (x)=0)=0 的復根,的復
5、根,則則 )0(ii0)()(bfaf(2 2)則則f( (x) )在在 a, ,b 內有根,內有根,稱稱 a, ,b 為有根區(qū)間。為有根區(qū)間。若若f( (x) )在在 a, ,b 上嚴格單調上嚴格單調, ,則則 a, ,b 內有且僅有一根內有且僅有一根x* *. .(1)根的分離根的分離 (2)近似根的精確化近似根的精確化 本章問題本章問題:【定理定理1 1】(代數(shù)基本定理代數(shù)基本定理)【定理定理2 2】如果如果(1 1)f ( x ) 在區(qū)間在區(qū)間 a,ba,b 上連續(xù)上連續(xù)三、方程求根的理論依據(jù)三、方程求根的理論依據(jù)非線性方程非線性方程(組組)01) 1(3463)(22xxxxf034
6、3)(23xxxxf例例1 1求方程求方程的有根區(qū)間的有根區(qū)間),( f(x)為單調增函數(shù)為單調增函數(shù). .內最內最多只有一個實根。多只有一個實根。例例2 2077.418 .381 .11)(23xxxxf 的有根區(qū)間。的有根區(qū)間。 求方程求方程 解解 根據(jù)有根區(qū)間定義根據(jù)有根區(qū)間定義, ,對對f(x)=0的根進行搜索計算,的根進行搜索計算,x0 1 2 3 4 5 60 1 2 3 4 5 6 f (x)的符號的符號- - + + - - +- - + + - - +解解 因為因為f(x)在在),(內連續(xù)內連續(xù), ,而且而且則則f(x)在在又因為又因為f(0)0, ,所以所以0,2是是所求
7、區(qū)間所求區(qū)間.。非線性方程非線性方程(組組)),(解解 因為因為f(x)在在 內連續(xù)內連續(xù), ,要判別方程有要判別方程有3 3個實個實根根, ,即即要判別要判別f(x)與與x軸有軸有3 3個交點個交點, ,只只須判別有須判別有3 3個個有根區(qū)間有根區(qū)間, ,且且每個區(qū)間內只有一個根每個區(qū)間內只有一個根.MATLAB畫圖確定有根區(qū)間畫圖確定有根區(qū)間。x=-1:0.01:4;y=exp(x)-3*x.2;-1-0.500.511.522.533.54-8-6-4-202468判別函數(shù)的有根區(qū)間判別函數(shù)的有根區(qū)間 plot(x,y,r,x,0*x), grid on由函數(shù)圖由函數(shù)圖2-22-2可判別
8、,可判別,3 3個有根個有根區(qū)間分別為:區(qū)間分別為:-1,0-1,0,0.5,10.5,1,3.5,4.3.5,4.非線性方程非線性方程(組組)例例3 判別方程判別方程 f(x)=ex-3x2=0 有有3 3個實根。個實根。2.2二分法二分法)(xf,ba設設函數(shù)函數(shù)在在上連續(xù)、嚴格單調上連續(xù)、嚴格單調, ,且且0)()(bfaf,ba*x, ,則則內有且僅有一根內有且僅有一根。反復對分,從而逐步縮小有根區(qū)間,直至反復對分,從而逐步縮小有根區(qū)間,直至滿足精度為止。滿足精度為止。二分法幾何示意圖二分法幾何示意圖 2/ )(0bax若若0)(0 xf則則0*xx 為所求根;為所求根;否則否則011
9、,xbaa0)()(0 xfaf(1)(1)若若, ,則則令令0)()(0bfxfbbxa101,(2)(2)若若, ,則則令令 形成新的有根區(qū)間形成新的有根區(qū)間,11ba 長度僅為長度僅為,ba 的一半的一半. 理論依據(jù)理論依據(jù): :基本思想基本思想: :二分法步驟二分法步驟: :非線性方程非線性方程(組組),2211bababa,kkbakkkabab2/ )( 0 0k12/ )(kab12/ )(2/ )(kkkkababxx這是因為這是因為052)(3xxxf)3 , 2(例例4 4 求求在區(qū)間在區(qū)間內的根,內的根, 005. 0解解 1 1) 確定有根區(qū)間:確定有根區(qū)間: 016)
10、3(, 01)2(, 3, 2ffba方程在(方程在(2,3)內有唯一根內有唯一根. . 2 2) 確定二分次數(shù):確定二分次數(shù): 005. 02/ )(1kab7k3 3) 二分計算二分計算: : 二分法終止條件二分法終止條件反復二分下去,得到一系列有根區(qū)間:反復二分下去,得到一系列有根區(qū)間:非線性方程非線性方程(組組)k0 (2,3)(2,3)2.52.55.6255.6251 12 23 34 45 56 6(2,2.5)(2,2.5)(2,2.25)(2,2.25)(2,2.125)(2,2.125)(2.0625,2.125)(2.0625,2.125)(2.09375,2.125)(
11、2.09375,2.125)(2.09375,2.109375)(2.09375,2.109375)2.252.252.1252.1252.06252.06252.093752.093752.1093752.1093752.10156252.10156251.8906251.8906250.3457030.345703-0.351318-0.351318-0.008942-0.0089420.1668360.1668360.07856220.07856227 7 (2.09375,2.1015625)(2.09375,2.1015625)2.0976562.097656 10. 27* xx算
12、法直觀、簡單算法直觀、簡單. 一定收斂一定收斂. 收斂速度較慢收斂速度較慢. 二分法優(yōu)點二分法優(yōu)點二分法缺點二分法缺點二分計算結果二分計算結果非線性方程非線性方程(組組)(,)kka b()kf xkx(2)1,(3)16ff % %求解非線性方程的二分法,其中,求解非線性方程的二分法,其中,function xstar,index,it=bisect(fun,a,b,ep)%fun%fun為需要求根的函數(shù);為需要求根的函數(shù);%a,b%a,b為初始區(qū)間的端點;為初始區(qū)間的端點;% %epep為精度,缺省值為為精度,缺省值為1e-51e-5,% %當(當(b-ab-a)/2/2epep時,算法終
13、止;時,算法終止;% %xstarxstar為當?shù)晒r,輸出方程的根,為當?shù)晒r,輸出方程的根,% %當?shù)r,輸出兩端點的函數(shù)值當?shù)r,輸出兩端點的函數(shù)值; ;%index%index為指標變量,為指標變量,%index=1%index=1時,表明迭代成功,時,表明迭代成功,%index=0%index=0時,表明初始區(qū)間不是有根區(qū)間;時,表明初始區(qū)間不是有根區(qū)間;%it%it為迭代次數(shù)為迭代次數(shù). .if nargin0二分法的二分法的MATLABMATLAB程序:程序:bisect.mbisect.m非線性方程非線性方程(組組) xstar=fa,fb;index=0;
14、it=0; returnendk=0;while abs(b-a)/2=ep x=(a+b)/2;fx=feval(fun,x); if fx*fa0 b=x;fb=fx; else a=x;fa=fx; end k=k+1;xstar=(a+b)/2;index=1;it=kend例例4 4 編寫編寫 求根函數(shù)求根函數(shù) function f=fun1(x)調用調用 函數(shù)函數(shù)bisect.mbisect.m xstar,index,it=bisect(fun1,2,3,0.005)xstar =2.0977index = 1 it =7f=x3-2*x-5;非線性方程非線性方程(組組)2.3
15、2.3 迭代法及其收斂性迭代法及其收斂性逐次逼近方法逐次逼近方法 0)(xf*x,ba(1)等價方程等價方程 :)(xx(2)迭代公式:迭代公式:), 2 , 1 , 0()(1kxxkk(3)取取bax,0,得序列得序列kx(4)當當 xxkklim時,稱為迭代收斂時,稱為迭代收斂 取取)(xxx)(x稱稱為函數(shù)為函數(shù)的不動點,的不動點, )(x為為迭代函數(shù)迭代函數(shù),求得方程不動點的方法,稱為求得方程不動點的方法,稱為不動點迭代法不動點迭代法 。2.3.1 2.3.1 不動點迭代不動點迭代一、迭代過程及迭代法基本思想一、迭代過程及迭代法基本思想步驟步驟非線性方程非線性方程(組組))(x)0(
16、02aax例例5 5 考察考察;2axxx1 1) 2 2) ;/ xax 3 3) )(21xaxx, 3a, 20 x取取1.7320508x數(shù)值計算結果數(shù)值計算結果 。二、迭代過程幾何解釋二、迭代過程幾何解釋三、構造迭代函數(shù)三、構造迭代函數(shù)非線性方程非線性方程(組組) (情形情形1 1) (情形情形2 2)(情形情形3 3)0 01 12 23 32.02.03.03.09.09.087.087.02.02.01.51.52.02.01.51.52.02.01.751.751.7321431.7321431.7320511.732051032x的迭代例子的迭代例子 kkxkxkx(1 1
17、)收斂性及誤差估計收斂性及誤差估計 (2)收斂速度收斂速度迭代公式迭代公式 ), 2 , 1 , 0(),(1kxxkkkkx.x).3 , 2 , 1(1kxxxxkk問題問題2.3.2 2.3.2 迭代法的收斂性迭代法的收斂性非線性方程非線性方程(組組)由于由于),(),)(11xxxxxxkkk只要只要1)(L則則 )3 , 2 , 1(1kxxxxkk保證迭代值全落在保證迭代值全落在,ba內內 ,)(baCx 滿足條件:滿足條件: (1)映內性映內性: ,bax;)(bxa(2 2)壓縮性壓縮性: Lx )( (壓縮因子壓縮因子L0)3()(2xcxx解:解:取取 cxxx21)(,
18、313211c使收速度快使收速度快 41321,0321cc迭代公式迭代公式 初值初值x0=2【注注】 盡量小盡量小, ,可使迭代計算加速收斂可使迭代計算加速收斂 。)(x非線性方程非線性方程(組組)21222312(23)1.75,411.75(1.753)1.7343750,411.7343750(1.73437503)1.73420923.4xxx211(3),0,1,4kkkxxxk*xxekkp階收斂階收斂 )0(/1 cceekpkk)(1kkxxx(收斂階)(收斂階))(1kkxx如果在如果在根根的鄰近連續(xù),并且的鄰近連續(xù),并且 0)()()(*)1(* xxxp0)(*)(xp
19、, 則該迭代過程在根鄰近是則該迭代過程在根鄰近是 p階收斂階收斂.證明證明 0)(* x則迭代過程則迭代過程具有具有局部收斂性局部收斂性. . 作泰勒展開作泰勒展開 pkpkxxpxx)(!)()()(*)(*【定義定義1 1】線性收斂線性收斂 p=1 超線性收斂超線性收斂 p1 平方收斂平方收斂 p=2【注注】(1 1)0L1,0L1,線性收斂線性收斂 (2 2)L=0,L=0,超線性收斂超線性收斂 (3 3)P P 越大,迭代過程收斂越快越大,迭代過程收斂越快. .【定理定理5 5】非線性方程非線性方程(組組)pkpkxxpxx)(!)(*)(*1!)(*)(1pxeepkpkk P 階收
20、斂階收斂. . 方程方程 x2-3=0 取取)3(211kkkxxx, 0)(* x03/2)(* x P=2取取 )3(41)(2xxx021)(*xx線性收斂線性收斂 不動點迭代法的不動點迭代法的MATLABMATLAB程序程序:iterate.miterate.mfunction function xstar,index,itxstar,index,it = =iterate(phi,x,ep,it_maxiterate(phi,x,ep,it_max) )% %求解非線性方程的一般迭代法,其中求解非線性方程的一般迭代法,其中% %phi(xphi(x) )為迭代函數(shù),為迭代函數(shù),x x
21、為初始點;為初始點;例例非線性方程非線性方程(組組)% %epep為精度,缺省值為為精度,缺省值為1e-5,1e-5,% %當當x(k)-x(k-1)x(k)-x(k-1) =it_maxit_max, ,失失??;敗;%it%it為迭代次數(shù)為迭代次數(shù). .if nargin4 it_max=100;endif nargin3 ep=1e-5;endindex=0;k=1;while k=it_max x1=x;x=feval(phi,x); if abs(x-x1)=ep index=1;break; end k=k+1;endxstar=x;it=k; 非線性方程非線性方程(組組)編寫編寫例
22、例7 7迭代函數(shù),函數(shù)名為迭代函數(shù),函數(shù)名為phi.mphi.mfunction f=function f=phi(xphi(x) )f=exp(-x);f=exp(-x);求方程的根:求方程的根: xstar,index,itxstar,index,it=iterate(phi,0.5,1e-5)=iterate(phi,0.5,1e-5)或或 xstar,index,itxstar,index,it=iterate(phi,0.5,1e-5)=iterate(phi,0.5,1e-5)得到得到 xstarxstar =0.5671 =0.5671,index =1index =1,it =
23、18it =18收斂較慢收斂較慢 xk 收斂快的收斂快的kx)(xx *xxkk 方程方程2.4 2.4 迭代收斂的加速方法迭代收斂的加速方法2.4.1 2.4.1 埃特金加速埃特金加速非線性方程非線性方程(組組))(01xx)()()(001xxxxxxLx )(取取則有則有 )(01xxLxx)(12xx)(12xxLxx則則xxxxxxxx1021012201001221202)(2xxxxxxxxxxxxx, 1 , 0,2)()()(12211121kxxxxxxxxxxxkkkkkkkkkkk【注注】 的收斂速度的收斂速度 的收斂速度快的收斂速度快. . kxkx),(kkxy)(
24、kkyzkkkkkkkxyzxyxx2)(21(K=0,1,2,.)第一次校正第一次校正第二次校正第二次校正埃特金加速算法埃特金加速算法2.4.2 2.4.2 斯蒂芬森迭代法斯蒂芬森迭代法非線性方程非線性方程(組組)例例9 9 解方程解方程01)(3xxxf 解解 131kkxx發(fā)散發(fā)散 利用斯蒂芬森迭代利用斯蒂芬森迭代 取取1)(3 xx kXkykzk01.52.3750012.396611.416291.840925.2388821.355651.491402.3172831.328951.347101.4443541.324801.325181.3271451.32472【注注】斯蒂芬
25、森迭代法斯蒂芬森迭代法2 2階收斂階收斂 非線性方程非線性方程(組組)例例1010 01)(xxexf5 . 0 x 解解 x*=0.56714392 (1), 1 , 0(1kexkxkx0=0.5,=0.5,x18=0.5671407=0.5671407(2)斯蒂芬森迭代斯蒂芬森迭代 x18=0.5671407kxkykzk0 00.50.50.606530660.606530660.545239210.545239211 10.567623880.567623880.566870790.566870790.567297860.567297862 20.567143310.56714331
26、【注注】原迭代法不收斂,用斯蒂芬森迭代法收斂原迭代法不收斂,用斯蒂芬森迭代法收斂. . 已收斂的迭代法,可達到已收斂的迭代法,可達到2 2階收斂階收斂 P 階收斂階收斂 可達到可達到 p+1 階階非線性方程非線性方程(組組)斯蒂芬森迭代法的斯蒂芬森迭代法的MATLABMATLAB程序程序:steffensen.msteffensen.mfunctionxstar,index,itfunctionxstar,index,it=steffensen(phi,x,ep,it_maxsteffensen(phi,x,ep,it_max) )% %steffensensteffensen加速方法,其中加
27、速方法,其中% %phi(xphi(x) )為迭代函數(shù),為迭代函數(shù),x x為初始點;為初始點;% %epep為精度,缺省值為為精度,缺省值為1e-5,1e-5,% %當當x(k)-x(k-1)x(k)-x(k-1) =it_maxit_max, ,失?。皇?;%it%it為迭代次數(shù)為迭代次數(shù)if if narginnargin4 4 it_maxit_max=100;=100;endend非線性方程非線性方程(組組)if if narginnargin3 3 epep=1e-5;end=1e-5;endindex=0;k=1;index=0;k=1;while k=while k=it_max
28、it_max x1=x1=x;yx;y= =feval(phi,x),zfeval(phi,x),z= =fefeval(phi,yval(phi,y),), x=x-(y-x)2/(z-2 x=x-(y-x)2/(z-2* *y+xy+x) ) if abs(x-x1)= if abs(x-x1)=epep index=1;break; index=1;break; end end k=k+1; k=k+1;endendxstarxstar= =x;itx;it=k;=k;非線性方程非線性方程(組組)迭代函數(shù)迭代函數(shù) function f=function f=phi(xphi(x) )f=
29、exp(-x);f=exp(-x);求方程的根求方程的根 xstar,index,itxstar,index,it=Steffensen(phi,0.5,1e-5)=Steffensen(phi,0.5,1e-5) 得得 xstarxstar=0.5671, index=1,it=3=0.5671, index=1,it=3對比:利用不動點迭代計算了對比:利用不動點迭代計算了1818次,次, SteffensenSteffensen方法方法 迭代迭代3 3次次 非線性方程逐步線性化非線性方程逐步線性化. .形式簡單、收斂速度快形式簡單、收斂速度快 2.5 2.5 牛頓迭代法牛頓迭代法2.5.1
30、 2.5.1 牛頓迭代法牛頓迭代法切線法切線法特點特點非線性方程非線性方程(組組)方程方程 f(x)=0 0的跟的跟 x* 0)()()(kkkxxxfxfxf牛頓迭代公式牛頓迭代公式)()(1kkkkxfxfxx)()(1kkkkxfxfxx)(/ )()(xfxfxx若若f(x)在單根在單根x*附近存在連續(xù)的附近存在連續(xù)的二階導數(shù)二階導數(shù),牛頓迭代法的原理牛頓迭代法的原理線性化方法線性化方法牛頓法的收斂性牛頓法的收斂性且且初始值初始值x0充分接近充分接近x*,非線性方程非線性方程(組組)則則牛頓迭代過程收斂,牛頓迭代過程收斂,21)(2/ )( xxxfxfxxkk收斂階收斂階p=22)(
31、/)()()(xfxfxfx 322)(/)()(2)(/ )()()()()(xfxfxfxfxfxfxfxfx 由于由于x*是是 f(x)=0 0的單根,的單根,f(x*)=0,0,0)(xf0)(/ )()(, 0)( xfxfxx迭代過程在點迭代過程在點x*鄰近鄰近2 2階收斂階收斂. .【定理定理7 7】【注注】牛頓迭代法牛頓迭代法 優(yōu)點:快速收斂性,算法簡單、容易實現(xiàn)優(yōu)點:快速收斂性,算法簡單、容易實現(xiàn). . 缺點:缺點:1)1)局部收斂局部收斂, ,初值初值x0 x0在在x x* *附近附近. . 2) 2)計算量大或計算量大或0)( xf非線性方程非線性方程(組組)用牛頓法解方
32、程用牛頓法解方程 01xxe解解 牛頓迭代公式牛頓迭代公式 kxkkkxexxxk11取取初值初值x0=0.50.5,迭代計算,迭代計算,得到得到5671432. 0,5671432. 0,5671555. 0,5710204. 04321xxxx牛頓法的牛頓法的MATLABMATLAB程序程序:Newton.mNewton.mfunction function xstar,index,itxstar,index,it =Newton(fun2,x,ep,it_max)=Newton(fun2,x,ep,it_max)% %求解非線性方程的牛頓迭代法,其中求解非線性方程的牛頓迭代法,其中%fu
33、n2(x)%fun2(x)為需要求根的函數(shù),為需要求根的函數(shù),%fun2%fun2的第一個分量是函數(shù)值,的第一個分量是函數(shù)值,%fun2%fun2的第二個分量是導數(shù)值的第二個分量是導數(shù)值在在0.50.5附近的根附近的根例例1111510【注注】牛頓法的收斂速度快牛頓法的收斂速度快 非線性方程非線性方程(組組)%x%x為初始點;為初始點;% %epep為精度,缺省值為為精度,缺省值為1e-5,1e-5,% %當當x(k)-x(k-1)x(k)-x(k-1) =it_maxit_max, ,失敗;失?。?it%it為迭代次數(shù)為迭代次數(shù). .if if narginnargin4 4 it_maxi
34、t_max=100;=100;endendif if narginnargin3 3 epep=1e-=1e-5;end5;endindex=0;k=1;index=0;k=1;while k=while k=it_maxit_max x1=x1=x;fx;f=feval(fun2,x);=feval(fun2,x); if abs(f(2) if abs(f(2)epep break; break; endend x=x-f(1)/f(2); x=x-f(1)/f(2); if abs(x-x1)= if abs(x-x1)=epep index=1;break; index=1;break
35、; end end k=k+1; k=k+1;endendxstarxstar= =x;itx;it=k;=k;非線性方程非線性方程(組組)例例1111迭代函數(shù)的函數(shù)名為迭代函數(shù)的函數(shù)名為fun2.mfun2.mfunction f=fun2(x)function f=fun2(x)f=x-exp(-x),1+x;f=x-exp(-x),1+x;調用牛頓法函數(shù)調用牛頓法函數(shù)Newton.mNewton.m求方程的根求方程的根 xstar,index,itxstar,index,it=Newton(fun2,0.5,1e-5=Newton(fun2,0.5,1e-5得到得到xstarxstar=
36、0.5671=0.5671,index=1index=1,it=4it=4局部收斂局部收斂, ,初值初值x0在在x x* *附近附近. .平行弦法迭代公式平行弦法迭代公式)(1kkkxCfxx0C, 1 , 0k,【注注】牛頓迭代牛頓迭代4 4次,不動點迭代次,不動點迭代1818次次. .2.5.2 2.5.2 簡化牛頓法與牛頓下山法簡化牛頓法與牛頓下山法缺點缺點一、一、簡化牛頓法簡化牛頓法非線性方程非線性方程(組組)解解)()(xCfxx1)(1)(xfCx2)(0 xfC,取,取)(10 xfCyox*x2 x1 x0 x 休正初值休正初值例例1212 牛頓法解牛頓法解 x3-x- -1=
37、0 0在在 x=1.51.5附近的一個根附近的一個根. .牛頓法公式牛頓法公式131231kkkkkxxxxx1 1)取初值取初值; ; x0=1.5局部收斂局部收斂幾何意義幾何意義二、牛頓下山法二、牛頓下山法非線性方程非線性方程(組組)計算得計算得 x1=1.34783 , x2=1.32520 , x3=1.32472迭代迭代3 3次有次有6 6位有效數(shù)字位有效數(shù)字. .2)2)取取 x0= =0.6,0.6,則得則得 x1= =17.9 17.9 偏離了根偏離了根 x*=1.324721.32472xk:)()(1kkxfxf,)()(1kkkkxfxfxx, 1 , 0k=1,1/2,
38、1/4,直滿足下降條件直滿足下降條件例例1212 利用牛頓下法山解利用牛頓下法山解 x3-x-1=0 X0=0.6 =0.6 求得求得 x1=17.9 =17.9 不滿足下降條件不滿足下降條件, ,逐次取半逐次取半下山序列下山序列牛頓下山法迭代公式牛頓下山法迭代公式下山因子下山因子的選擇的選擇非線性方程非線性方程(組組),3211,140625. 11x,656643. 0)(1xf384. 1)(0 xf顯然顯然)()(01xfxf由由x1計算計算x2,x3,時時=1=1,均能使下降條件成立,均能使下降條件成立X2 = 1.36181 , f (x2) = 0.1866 ;X3 = 1.32
39、628 , f (x3) = 0.00667 ;X4 = 1.32472 , f (x4) = 0.0000086, 0)( xf缺點:缺點:)(kxf 計算量大計算量大牛頓迭代公式牛頓迭代公式)(/ )(1kkkkxfxfxx用經過兩點的割線來代替切線用經過兩點的割線來代替切線 11)()()(kkkkkxxxfxfxf2.5.3 2.5.3 割線法割線法割線法原理割線法原理非線性方程非線性方程(組組))()()()(111kkkkkkkxxxfxfxfxx幾何意義幾何意義 割線方程割線方程 )() 1()()(1kkkkkkxxxxxfxfxfyy=0的交點記為的交點記為xk+1 割線法的
40、迭代過程局部收斂,收斂速度割線法的迭代過程局部收斂,收斂速度 618. 1*618. 0*1)(/ )(xxxfxfxxkk 割線法迭代公式割線法迭代公式收斂性收斂性非線性方程非線性方程(組組)例例1313 用割線法求方程用割線法求方程05 . 0sinxx在在1.51.5附近的一個根附近的一個根 解解 割線法迭代公式割線法迭代公式 )()sin(sin)(5 . 0sin1111kkkkkkkkkkxxxxxxxxxx取初始值取初始值 x0 = 0.5 , x1 = 1.6 ,4919426. 12 . 0)9854497. 09995736. 0(2 . 09995736. 01 . 16
41、 . 1)4 . 16 . 1 ()4 . 1sin6 . 1(sin)4 . 16 . 1 (5 . 06 . 1sin6 . 16 . 12x49730. 1,49702. 143xx【注注】割線法具有超線性收斂速度,收斂階割線法具有超線性收斂速度,收斂階 p=p=1.6181.618 非線性方程非線性方程(組組)例例1414 用割線法求方程用割線法求方程01xxe在在0.50.5附近的根附近的根 解解 x 0= 0.5 , x1 = 0.6,用割線法迭代計算用割線法迭代計算,得到得到56714. 0,56709. 0,56532. 0432xxx),()()(*xgxxxfm, 2m,
42、0)(*xg則則x*為為m m重根,此時重根,此時 , 0)()()(*)1(*xfxfxfm0)(*)(xfm牛頓法線性收斂牛頓法線性收斂:,)()()(xfxfxx, 011)(*mx. 1)(* x且【注注】比較例比較例1111牛頓法割線法的收斂速度也是相當快牛頓法割線法的收斂速度也是相當快2.5.4 2.5.4 求重根的修正牛頓法求重根的修正牛頓法非線性方程非線性方程(組組)選取選取 ,)()()(xfxfmxx0)(* x且迭代公式迭代公式 ,)()(1kkkkxfxfmxx, 1 , 0k,令)(/ )()(xfxfx若若 x* 是是m m重根,則重根,則)()()()()()(*
43、xgxxxmgxgxxx的單根是故0)(*xx二階收斂迭代二階收斂迭代)()()()()(21kkkkkkkxfxfxfxfxfxx 一、求重根的修正牛頓法一、求重根的修正牛頓法1 1一、求重根的修正牛頓法一、求重根的修正牛頓法2 2【注注】 p p=2; =2; 根的重數(shù)根的重數(shù)m m已知已知. .非線性方程非線性方程(組組)例例1515 ,04424 xx是二重根2*x解解 kkkkxxxx4221kkkkxxxx22212)2(221kkkkkxxxxx取初值取初值 x0=1.5,=1.5,計算結果如下計算結果如下kxk方法方法1 1)方法方法2 2)方法方法3 3)1x11.45833
44、33331.4583333331.4166666671.4166666671.4117647061.4117647062x21.4366071431.4366071431.4142156861.4142156861.4142114381.4142114383x31.4254976191.4254976191.4142135621.4142135621.4142135621.4142135621 1) 牛頓法牛頓法2 2) 用修正法用修正法1 13 3) 用修正法用修正法2 2非線性方程非線性方程(組組), 0),(, 0),(, 0),(21212211nnnnxxxfxxxfxxxfTnnT
45、nxfxfxfxFRxxxx)(,),(),()(,),(2121令 0)(xFF(x)等價方程組等價方程組 ), 2 , 1)(,(21nixxxxnii)(xx不動點迭代公式不動點迭代公式: ), 1 , 0()()()1(kxxkk【注注】計算三步,方法計算三步,方法2)2)方法方法3 3)均達到)均達到1010位有效數(shù)位有效數(shù)字,牛頓法只有線性收斂,達到同樣精度要迭代字,牛頓法只有線性收斂,達到同樣精度要迭代3030次。次。2.6 2.6 非線性方程組的數(shù)值解法非線性方程組的數(shù)值解法2.6.1 2.6.1 簡單迭代法簡單迭代法非線性方程非線性方程(組組)*)(limxxkk若則則x*為
46、為 .)(的不動點xx例例1616 .)5 . 0 , 5 . 0(),(21附近的解求下面方程組在TTxx. 0sin2 . 0cos7 . 0),(, 0cos2 . 0sin7 . 0),(212212211211xxxxxfxxxxxf解解 等價方程組等價方程組),(xx21212121,sin2 . 0cos7 . 0cos2 . 0sin7 . 0)()()(xxxxxxxxgxgx迭代公式為迭代公式為 ., 1 , 0,sin2 . 0cos7 . 0,cos2 . 0sin7 . 0)(2)(1)1(2)(2)(1)1(1kxxxxxxkkkkkk【注注】類似單個方程的情形,有
47、非線性方程組的映類似單個方程的情形,有非線性方程組的映 內壓縮定理和局部收斂定理內壓縮定理和局部收斂定理 。非線性方程非線性方程(組組),取TTxx)5 . 0 , 5 . 0(),()0(2)0(1迭代計算,得迭代計算,得 k0 01 12 217170.50.50.5111140.5111140.5161250.5161250.5265080.5265080.50.50.5184230.5184230.5114380.5114380.5079260.507926)(1kx)(2kx簡單迭代法的簡單迭代法的MATLAB程序程序:iterates.mfunction xstar,index,i
48、t=iterates(G,x,ep,it_max)%求解非線性方程組的簡單迭代法,其中求解非線性方程組的簡單迭代法,其中%G(x)為需要求解的函數(shù);為需要求解的函數(shù);%x為初始向量(列向量);為初始向量(列向量);%ep為精度,缺省值為為精度,缺省值為1e-5,非線性方程非線性方程(組組)%當當x(k)-x(k-1)=it_max,失??;失??;%it為迭代次數(shù)為迭代次數(shù).if nargin4 it_max=100;endif nargin3 ep=1e-5;endindex=0;k=1;while k=it_max x1=x;x=feval(G,x) if norm(x-x1)=ep inde
49、x=1;break; end k=k+1;endxstar=x;it=k;非線性方程非線性方程(組組))(kx將將F(x)在在 點作多元函數(shù)點作多元函數(shù)Taylor展開,展開,并取其線性部分并取其線性部分編寫例編寫例1616迭代函數(shù),函數(shù)名為迭代函數(shù),函數(shù)名為G.mG.mfunction f=G(x)f=0.7*sin(x(1)+0.2*cos(x(2);0.7*cos(x(1)-0.2*sin(x(2);調用簡單迭代法函數(shù)調用簡單迭代法函數(shù)iterates.miterates.m求方程組的解求方程組的解:xstar,index,it=iterates(G,0.5 0.5)得解得解 xstar
50、=0.5265,0.5079,index=1,it=172.6.2 2.6.2 牛頓迭代法牛頓迭代法一、牛頓迭代法一、牛頓迭代法用線性函數(shù)近似非線性函數(shù),逐步用線性方程組用線性函數(shù)近似非線性函數(shù),逐步用線性方程組的解近似非線性方程組的解的解近似非線性方程組的解。.原理原理非線性方程非線性方程(組組))()()()()()(kkkxxxFxFxF令上式右端為零,得到令上式右端為零,得到 )()()()()(kkkxFxxxF, 2 , 1 , 0),()()(1)()1(kxFxJxxkkk其中,雅克比矩陣其中,雅克比矩陣 nnnnnnxxfxxfxxfxxfxxfxxfxxfxxfxxfxFx
51、J)()()()()()()()()()()(212221212111記記)()(kkxxx )()()()()(kkkxFxxJ0)det(J)(kx當當 時,解出時,解出 ,則有,則有 )1( kx)(kx)(kx= =+ + 牛頓迭代公式牛頓迭代公式牛頓迭代過程牛頓迭代過程非線性方程非線性方程(組組)重復上面計算,牛頓迭代過程重復上面計算,牛頓迭代過程 ., 2 , 1 , 0,),()()()()1()()()(kxxxxFxxJkkkkkk設設函數(shù)函數(shù)F(x)在解向量在解向量 x*附近具有二階連續(xù)偏導數(shù),附近具有二階連續(xù)偏導數(shù),JacobiJacobi在在 為非奇異矩陣,為非奇異矩陣
52、,則則對對x*矩陣附近的初矩陣附近的初始向量始向量 , ,牛頓迭代過程收斂(牛頓迭代過程收斂(且是平方收斂的且是平方收斂的)。)。)(xJ)0(x例例1717 用牛頓法求下面方程組在用牛頓法求下面方程組在 附近的解。附近的解。 TTxx)5 . 0 , 5 . 0(),(21. 0sin2 . 0cos7 . 0),(, 0cos2 . 0sin7 . 0),(212212211211xxxxxfxxxxxf解解 第一次迭代第一次迭代2121cos2 . 01sin7 . 0sin2 . 0cos7 . 01)(xxxxxJ牛頓法的收斂性:牛頓法的收斂性:非線性方程非線性方程(組組)取初值取初
53、值 得得 Tx)5 . 0 , 5 . 0()0(018423. 001114. 01755. 133560. 0095885. 038569. 0)0(x,)100145. 8 ,0268234. 0(3)0(Tx,)50801. 0 ,52682. 0()1(Tx.)1008. 2 ,103 . 1 ()(44)1(TxF第二次迭代第二次迭代解解 44)1(1008. 2103 . 117474. 135195. 0097288. 039491. 0 xTx)104689. 8,100832. 3(54)1(,)50793. 0 ,52651. 0()1()1()2(TxxxTxF)104
54、 , 0()(6)2(【注注】在解附近牛頓迭代過程二階收斂在解附近牛頓迭代過程二階收斂二、二、牛頓迭代法的變形牛頓迭代法的變形 令令 )()()0()(xFxFk簡化牛頓法簡化牛頓法 ., 2 , 1 , 0),()()(1)0()()1(kxFxFxxkkk非線性方程非線性方程(組組)【注注】1 1)簡化牛頓法,簡化牛頓法,只是線性收斂。只是線性收斂。 2 2)將)將m步簡化牛頓法組成一步牛頓迭代步簡化牛頓法組成一步牛頓迭代, ,得得修正牛頓法修正牛頓法 ., 2 , 1 , 0, 2 , 1,),()(,),() 1() 1,(1)() 1,(),()()0 ,(kmixxxFxFxxxx
55、mkkikkikikkk【注注】修正迭代法具修正迭代法具m+1有階收斂速度。有階收斂速度。1)1)下山法:下山法:擴大收斂范圍擴大收斂范圍 2 2)割線法:)割線法:避免求導數(shù)計算避免求導數(shù)計算 3)3)阻尼牛頓法:阻尼牛頓法: , 2 , 1 , 0)()()(1)()()1(kxFIxFxxkkkkk例例1818 分別用牛頓法、簡化牛頓法及修正牛頓法分別用牛頓法、簡化牛頓法及修正牛頓法解解方程組方程組 ,.)2,2()0(Tx. 01)5 . 0()2(, 012221221xxxx非線性方程非線性方程(組組)解解 124212)(211xxxxF1)1)用牛頓法用牛頓法5 5次次; 2)
56、; 2)若用簡化牛頓法若用簡化牛頓法; 3); 3)修正牛頓法修正牛頓法. .2.6.3 2.6.3 最速下降法最速下降法構造各方程的平方和函數(shù)構造各方程的平方和函數(shù), , , )(),(1221niinxfxxx求解求解 0)(xF多元函數(shù)多元函數(shù) 的極小值問題的極小值問題 。),(21nxxx最速下降法最速下降法即梯度法即梯度法 原理原理 (1)(1)選方向選方向負梯度方向負梯度方向 (2)(2)選步長選步長求求t0使使).(min)()0(0)0(tFxtx最速下降法迭代公式最速下降法迭代公式: ., 2 , 1 , 0),(),(min)()()()1()()()()(kxtxxxtx
57、xtxkkkkkktikkk迭代計算,直至迭代計算,直至 的值降到很小。的值降到很小。非線性方程非線性方程(組組)【注注】最速下降法能收斂,收斂速度不如牛頓迭代法最速下降法能收斂,收斂速度不如牛頓迭代法聯(lián)合使用,可取長補短聯(lián)合使用,可取長補短。2.7 2.7 求解非線性方程(組)的求解非線性方程(組)的MATLABMATLAB函數(shù)函數(shù)一、一、solvesolve函數(shù)函數(shù) 求解析解或數(shù)值解,命令格式為求解析解或數(shù)值解,命令格式為: solve(eqn1,eqn2,.,eqnN)1 1、求解方程(組)的解析表達式、求解方程(組)的解析表達式例例 解三角方程解三角方程 x 為未知變量。為未知變量。,)sin(rxpx = solve(p*si
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 天津大學《數(shù)據(jù)庫系統(tǒng)設計實踐》2023-2024學年第二學期期末試卷
- 菏澤學院《醫(yī)學影像設備安裝與維修學》2023-2024學年第二學期期末試卷
- 肇慶醫(yī)學高等專科學?!犊删幊炭刂破骷夹g》2023-2024學年第二學期期末試卷
- 信陽航空職業(yè)學院《建筑設計基礎二》2023-2024學年第二學期期末試卷
- 哈爾濱傳媒職業(yè)學院《畢業(yè)論文寫作》2023-2024學年第二學期期末試卷
- 湖州學院《微信小程序開發(fā)與實踐》2023-2024學年第二學期期末試卷
- 重慶移通學院《Pthon數(shù)據(jù)分析與挖掘基礎》2023-2024學年第二學期期末試卷
- 廣州航海學院《體育(上)》2023-2024學年第二學期期末試卷
- 四川應用技術職業(yè)學院《工程制圖與CAD》2023-2024學年第二學期期末試卷
- 溫州科技職業(yè)學院《智能汽車傳感技術》2023-2024學年第二學期期末試卷
- 第12課 實現(xiàn)人生價值-【中職專用】2024年中職思想政治《哲學與人生》金牌課件(高教版2023·基礎模塊)
- HG∕T 3792-2014 交聯(lián)型氟樹脂涂料
- 中國大豆加工發(fā)展現(xiàn)狀簡析
- 2024年海南省高考物理試卷(含答案)
- GJB5765-2006 軍用機場場道工程質量評定標準
- JJG 705-2014液相色譜儀行業(yè)標準
- 公司合作計劃書
- 2016-2023年南京信息職業(yè)技術學院高職單招(英語/數(shù)學/語文)筆試歷年參考題庫含答案解析
- 跨領域聯(lián)合診療(MDT)管理法規(guī)
- 光伏電站運維安全風險管控清單
- 保安員考核評分標準與細則
評論
0/150
提交評論