常微分方程初值問題的數值解法_第1頁
常微分方程初值問題的數值解法_第2頁
常微分方程初值問題的數值解法_第3頁
常微分方程初值問題的數值解法_第4頁
常微分方程初值問題的數值解法_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

常微分方程初值問題的數值解法

第6章常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第1頁!引言在實際問題中,常需要求解微分方程(如發(fā)電機轉子運動方程)。只有簡單的和典型的微分方程可以求出解析解,而在實際問題中的微分方程往往無法求出解析解。常微分方程:-----------(1)-----------(2)一階常微分方程常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第2頁!-----------(3)(1),(2)式稱為初值問題,(3)式稱為邊值問題-----------(4)另外,在實際應用中還經常需要求解常微分方程組:

本課程主要研究問題一階常微分方程(1)的數值解法,我們首先介紹初值問題(1)的解存在的條件常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第3頁!定理只要f(x,y)連續(xù),且關于y

滿足Lipschitz

條件,即存在與x,y無關的常數L

使對任意定義在[a,b]上的y1(x)和y2(x)都成立,則初值問題(1)存在唯一解。(通常采用等距節(jié)點)對于問題(1)要求它的數值解常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第4頁!1、泰勒展開的求解思路:將按泰勒級數展開用的近似值代入上式右端,記所得結果為,則得到數值解序列的計算公式:常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第5頁!3、數值積分的求解思路:如果將微分方程在各小區(qū)間上對其兩邊進行積分,即如用矩形數值積分公式可得:常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第6頁!§6.1歐拉方法一、

歐拉格式:x0x1向前差商近似導數記為歐拉公式幾何意義

用一條通過初始點的折線近似表示解曲線

,亦稱為歐拉折線法,或稱為矩形法。一般形式1、顯式歐拉公式常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第7頁!在假設yk=y(xk),即第

k

步計算是精確的前提下,考慮的截斷誤差Rk=y(xk+1)

yk+1稱為局部截斷誤差。定義若某算法的局部截斷誤差為O(hp+1),則稱該算法有p

階精度。定義

歐拉法的局部截斷誤差:歐拉法具有1階精度。局部截斷誤差和階數常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第8頁!二、兩步歐拉格式(中點公式)中心差商近似導數x0x2x1假設,則可以導出即兩步歐拉格式具有2階精度。該方法需要2個初值y0和y1來啟動遞推過程,這樣的算法稱為雙步法。常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第9頁!梯形格式算法計算步驟:先用(1)式計算出處。再用(2)式反復進行迭代,得到計算公式-----------(1)-----------(2)類似地得到用控制迭代次數,為允許誤差。把滿足誤差要求的作為的近似值。常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第10頁!四、改進歐拉法(預報-校正法)Step1:

先用顯式歐拉公式作預報,算出),(1iiiiyxfhyy+=+Step2:再將代入隱式梯形公式的右邊作校正,得到1+iy)],(),([2111+++++=iiiiiiyxfyxfhyy它可表示為嵌套形式表示為平均化形式此法稱為預報-校正法,是顯式算法。注:可以證明該算法具有2階精度,同時可以看到它是個單步遞推格式(只迭代一次)

,比隱式梯形公式的迭代求解過程簡單。腳標用i常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第11頁!常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第12頁!§6.2龍格-庫塔法一、

泰勒級數法

龍格—庫塔(Runge-Kutta)法(簡稱為R-K方法)是一類高精度的一步法,這類方法與泰勒級數法有著密切的關系。

設有初值問題由泰勒展開式

從理論上講,只要解y(x)有任意階導數,泰勒展開方法就可以構造任意階求yk+1公式。但由于計算這些導數是非常復雜的,所以這種方法實際上不能用來解初值問題。

常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第13頁!常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第14頁!三、

二階龍格-庫塔法目標:建立高精度的單步遞推格式。單步遞推法的基本思想是從(xi,yi)點出發(fā),以某一斜率沿直線達到(xi+1

,yi+1

)點。歐拉法及其各種變形所能達到的最高精度為2階。

考察改進的歐拉法,可以將其改寫為:斜率一定取K1K2的平均值嗎?步長一定是一個h

嗎?腳標用i常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第15頁!Step3:將yi+1與y(xi+1)在xi點的泰勒展開作比較要求,則必須有:這里有個未知數,個方程。32存在無窮多個解。所有滿足上式的格式統稱為2階龍格-庫塔格式。注意到,就是改進的歐拉法。Q:

為獲得更高的精度,應該如何進一步推廣?常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第16頁!四階經典龍格-庫塔法公式四、

四階龍格-庫塔法用四個f函數值的線性組合得到四階龍格-庫塔法。經典龍格-庫塔法公式具有四階精度,因此可取大步長。常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第17頁!§3收斂性與穩(wěn)定性/*ConvergencyandStability*/

收斂性/*Convergency*/定義若某算法對于任意固定的x=xi=x0+ih,當h0

(同時i)時有yi

y(xi

),則稱該算法是收斂的。例:就初值問題考察歐拉顯式格式的收斂性。解:該問題的精確解為歐拉公式為對任意固定的x=xi=ih

,有常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第18頁!定義若某算法在計算過程中任一步產生的誤差在以后的計算中都逐步衰減,則稱該算法是絕對穩(wěn)定的/*absolutelystable*/。一般分析時為簡單起見,只考慮試驗方程/*testequation*/常數,可以是復數當步長取為h

時,將某算法應用于上式,并假設只在初值產生誤差,則若此誤差以后逐步衰減,就稱該算法相對于絕對穩(wěn)定,的全體構成絕對穩(wěn)定區(qū)域。我們稱算法A比算法B穩(wěn)定,就是指A的絕對穩(wěn)定區(qū)域比B的大。hlh=h常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第19頁!常微分方程數值解公式的推導

求初值問題數值解的方法是步進法,即從已知的初值y0出發(fā),通過一定的計算求y1

,然后由y1或y0和y1求出y2

,依次計算到yn

,即在計算出yk后計算yk+1

,這時有單步法:計算yk+1時,只利用yk多步法:計算yk+1時,用到yk,yk-1,yk-2,…常微分方程數值解公式的主要推導方法泰勒展開利用差商利用數值積分法常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第20頁!2、化導數為差商的求解方法思路:若在點處的導數用差商來近似代替,如向前差商則微分方程初值問題化為將近似號改為等號,精確解

改為近似解,得常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第21頁!以上三種方法推導出同一個數值求解公式:這個數值公式稱為歐拉(Euler)公式。常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第22頁!常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第23頁!2、隱式歐拉格式向后差商近似導數x0x1))(,()(1101xyxfhyxy+)1,...,0(),(111-=+=+++nkyxfhyykiik由于未知數yk+1

同時出現在等式的兩邊,不能直接得到,故稱為隱式歐拉公式,而前者稱為顯式歐拉公式。一般先用顯式計算一個初值,再迭代求解。

隱式歐拉法的局部截斷誤差:即隱式歐拉公式具有1階精度。常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第24頁!三、

梯形公式—顯、隱式兩種算法的平均注:有局部截斷誤差,即梯形公式具有2

階精度,比歐拉方法有了進步。但注意到該公式是隱式公式,計算時不得不用到迭代法,不易求解。

對歐拉法進行改進,用梯形公式計算右側積分,即計算公式常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第25頁!方法顯式歐拉法隱式歐拉法梯形公式中點公式簡單精度低穩(wěn)定性最好精度低,計算量大精度提高計算量大精度提高,顯式多一個初值,可能影響精度不同方法比較常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第26頁!舉例:常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第27頁!xEuler法y改進的Euler法y精確解01.0000001.0000001.0000000.11.0000001.0959091.0954450.21.1918181.1840971.1832160.31.2774381.2662011.2649110.41.3582131.3433601.3416410.51.4351331.4164021.4142140.61.5089661.4859561.4832400.71.5803381.5525141.5491930.81.6497831.6164751.6124520.91.7177791.6781661.6733201.01.7847701.7378671.732051常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第28頁!設有初值問題二、龍格-庫塔法的基本思路等價于:(積分中值定理)

R-K方法基本思想:用在幾個不同點的加權平均值(線性組合)來代替準確的的值,構造近似公式。再把近似公式與解的泰勒展開式進行比較,使前面的若干項相同,從而使近似公式達到一定的階數。這樣龍格-庫塔法保留了泰勒級數展開法的高階局部截斷誤差,又避免了高階導數的計算。我們先分析歐拉法與預估—校正法。常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第29頁!推廣這種單步法稱為Runge-Kutta方法,簡記為R-K公式.Ki為某些點上的斜率,或f(x,y)在某些點上的值。常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第30頁!首先希望能確定系數1、2、p,使得到的算法格式有2階精度,即在的前提假設下,使得

Step1:將K2在(xi,yi)

點作Taylor展開將改進歐拉法推廣為:),(),(][12122111phKyphxfKyxfKKKhyyiiiiii++==++=+llStep2:將K2代入yi+1表達式,得到常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第31頁!其中i

(i=1,…,m),i

(i=2,…,m)

和ij

(i=2,…,m;j=1,…,i1

)

均為待定系數,確定這些系數的步驟與前面相似。其解不唯一。)...,(......),(),(),(]...[1122112321313312122122111--++++++=+++=++==++++=mmmmmmimiiiiiimmiihKhKhKyhxfKhKhKyhxfKhKyhxfKyxfKKKKhyybbbabbaballl最常用為四階經典龍格-庫塔法常微分方程初值問題的數值解法共35頁,您現在瀏覽的是第32頁!注:

龍格-庫塔法的主要運算在于計算Ki

的值,即計算f

的值。Butcher于1965年給出了計算量與可達到的最高精度階數的關系:753可達到的最高精度642每步須算Ki的個數高于四階時每步計算量增加較多,但精度提高不快,因此使用的比較少。由于龍格-庫塔法的導出基于泰

溫馨提示

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

評論

0/150

提交評論