非線性方程數值解法-計算物理學_第1頁
非線性方程數值解法-計算物理學_第2頁
非線性方程數值解法-計算物理學_第3頁
非線性方程數值解法-計算物理學_第4頁
非線性方程數值解法-計算物理學_第5頁
已閱讀5頁,還剩4頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、.第四講:(2)非線性方程數值解法在實際物理問題中,例如如何知道熱平衡時的溫度,力平衡時的力的大小等平衡量,需要求解平衡方程。對于不能解析求解的代數方程就需要數值求解。本講只討論單變量的代數方程 (4.2-1)為了求解滿足方程的變量,即方程的根,有時需要用圖示的方法大體了解解的位置。下面介紹幾種求方程(4.2.1)根的方法。4.2.1 二分法(Bisection Method)方程根附近的性質是要改變符號,一般來說,如果在區間是連續的實函數,并且和有相反的符號,即 (4.2-2)那么在區間內至少有一個實根。一般采用增量搜尋的方法來確定函數變號的間隔,例如;然后將這個間隔分成更小的許多子間隔來確

2、定函數變號的位置(即根)。怎樣再細分間隔,通常采用的一種方法是對分區間套的方法,即二分法。二分法求根步驟: 通過滿足條件,確定有根區間 估算根:,如果, 則 為解 做下面的計算,確定根在那個子區間(a) 如果,則根在區間,設,返回到(b)否則,則根在區間,設,返回到二分法求根示意圖=例題4.2-1用二分法計算方程的在區間(1,2)的根。解:計算程序見BISECTION.f90結果為:istep=20, x=1.69460011, dx=0.0.00000096=4.2-2 弦截法弦截法的基本思想同二分法相同,所不同的是二分法取中點做為試探根,而弦截法用連接點和的弦與軸的交點做為試探根。由圖可見

3、, 由此可得試探根為 (4.2-3)然后將,重復計算(3)式,當相繼兩次計算的之差滿足一定精度時,則得到解。弦截法求根示意圖=例題4.2-2用弦截法計算方程的在區間(1,2)的根。解:計算程序見SECANT.f90結果為:istep=5, x=1.69460106, dx=-0.00000012=4.2-3 不動點迭代法設給定一個非線性方程,在用迭代方法求其實根時,先將它轉換成等價方程: (4.2-4)然后構造迭代格式: (4.2-5)對于給定的初始值,若由此生成的迭代序列有極限,記為,則顯然是方程(4.2-4)的解,從而也是方程的解。 稱為迭代函數;由于收斂點滿足,故將稱為函數的不動點;迭代

4、格式(4.2-4)稱為不動點迭代法(或基本迭代法)。在迭代格式(4.2-5)中,僅由前一個迭代值決定,也稱該迭代格式為單步法。可以有多種構造迭代函數的方法。迭代函數的不同選擇對應不同的迭代法,它們的收斂性有很大的差異。=例題4.2-3 用迭代法求方程的一個實根解:可以有兩種方法構造迭代函數 和 它們對應的不動點迭代法分別為: , ,由于,即函數在區間1,2上改變符號,且連續,所以區間1,2是有根區間。取其中點為初值,進行迭代,程序為結果為:取迭代公式收斂,不動點,而取迭代公式發散。=判斷收斂還是發散的一種方法是做兩個曲線的圖示方法。例如,迭代公式是:,將方程分成兩部分:作圖從(a)和(b)圖可

5、以看出:從初始點出發(縱向交曲線,橫向交的直線),可見迭代點向兩曲線交點靠近,即估計值接近解,迭代是收斂的;圖(c)和(d)結果正相反,迭代是發散的。這里不加證明給出判別方法,當,即曲線的斜率的絕對值小于的斜率時迭代是收斂的。4.2-4 非線性方程的牛頓(Newton)迭代Newton迭代法的實質是在方程解的附近,將非線性方程線性化的一種近似方法。設非線性函數是連續可微,是方程的實根,是迭代方法中的某個迭代值。將在根的近似點附近展開成Taylor級數:取其線性部分作為非線性方程的近似方程,即: (4.2-6)若,則記線性方程(4.2-6)的解為,將 (4.2-7) 作為根的新近似值的迭代格式。

6、這種方法稱為Newton迭代法。Newton迭代法的幾何意義是:在迭代過程中,用函數過點的切線 作為的近似,并以此切線與x軸的交點作為新的迭代點,見上圖。因此牛頓迭代法也稱為切線法。=例題4.2-4用Newton迭代法求函數在1,2的根解:求解的程序是NEWTON.f90結果為:=作業:HW4.2-1用Newton迭代法求方程在附近的一個實根。解:參考計算程序denwt0.c,子程序dnewt.c,結果:x = 1.4655712e+000在 Newton迭代法的計算過程中,每一步都要計算導數值,往往計算量很大;另一方面,如果函數不可導,就無法使用Newton迭代法。為了克服這些困難,同時利用

7、Newton 法收斂快的特點,可以用兩點處的差商代替,得到的迭代格式 (4.2-8)稱為割線法(或離散Newton法,就是前面講的弦截法)。它的幾何意義是通過曲線上點和作割線,用該割線與軸的交點作為新的迭代點,見上圖。用割線法計算時,要計算并保留;所以割線法不屬于不動點迭代法,而是一種兩步迭代法。這種方法的缺點是:需要兩點開始迭代過程。4.2-5 非線性方程組的解 求解非線性方程組: (4.2-9)通常采用兩種方法:一種是迭代方法,另一種是求函數極小值的方法。(1) 牛頓迭代法不妨以兩個方程組為例:設是試探解,在的鄰域做泰勒展開,保留線性項 (4.2-10)得到關系: (4.2-11)其中:

8、,如果,求解方程(4.2-11)得解,則得迭代公式,或 (4.2-12)計算步驟如下: 給定初始近似根和允許誤差:,并假定已得到第k次近似 計算: 計算:若則計算結束,作為滿足精度要求的近似解;否則,執行 求解代數方程組,得到 計算: 及若則計算結束,作為滿足精度要求的近似解;否則,將在計算中有時用差分代替微分計算系數矩陣。=例題4.2-5:用牛頓迭代法求下列非線性方程組的一組實根:解:精確解是:,選初始迭代值,計算程序:NETN0.for,子程序:NETN.for,AGAUS.for=作業:HW4.2-2 求下列非線性方程組的一組實根:解:參考程序:dnetn0.c,dnetn.c,agau

9、s.cx = 7.8519693e-001, y = 4.9661139e-001,z = 3.6992283e-001(2) 最速下降法也稱梯度下降法,是求函數極小值最常用的方法之一。為了簡單,我們以兩個方程組為例:構造一個指標函數,通過求F的零極小值點來得到方程的解。通常從某一點出發,沿著F下降的方向逐步接近F的零極小值。通常梯度的反方向是最陡下降方向。函數在點的梯度方向就是該點等值線過切點的法線方向,梯度為設是方程組得一個近似解,計算在該點的梯度值從出發,沿負梯度方向前進一適當步長得新點如何選擇,才能使新點是在方向上的相對極小值。將在附近作展開,略去的2階以上項得到:推廣到n個聯立方程組 (4.2-13)定義指標函數: (4.2-14)下降法的迭代公式為: (4.2-15)于是得下降法的計算步驟: 選取試探解:,假設已經計算到第k步,得 計算指標函數: 若,則認為,為所求的解,否則計算偏導數,其中:,為控制收斂常數,一般選取,為控制精度常數一般選取 再計算新的迭代值:(4.2-15

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論