《計算方法9192》由會員分享,可在線閱讀,更多相關(guān)《計算方法9192(17頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,*,*,第九章 常微分方程數(shù)值解,數(shù)值計算方法,1,2024/11/21,2024/11/21,2,9.1,歐拉方法,第九章 常微分方程數(shù)值解,9.2,梯形方法,9.3,誤差估計與穩(wěn)定性,2,9.4,龍格庫塔方法,9.5,線性多步法,9.6,一階常微分方程組的數(shù)值,包含自變量、未知函數(shù)及未知函數(shù)的導(dǎo)數(shù)或微分的方程稱為微分方程。在微分方程中,自變量的個數(shù)只有一個,稱為常微分方程。自變量的個數(shù)為兩個或兩個以上的微分方程叫偏微分方程。微分方程中出現(xiàn)的未知函數(shù)最高階導(dǎo)數(shù)的階數(shù)稱為微分方程的階數(shù)。如果未知函數(shù),y,及其各
2、階導(dǎo)數(shù),都是一次的,則稱它是線性的,否則稱為非線性的。,2024/11/21,3,對常微分方程初值問題的數(shù)值解法,就是要算出精確解,y(x),在區(qū)間,a,b,上的一系列離散節(jié)點,處的函數(shù)值 的近似值,。相鄰兩個節(jié)點的間距 稱為步長,步長可以相等,也可以不等。本章總是假定,h,為常數(shù),稱為定步長,這時節(jié)點可表示為,數(shù)值解法需要把連續(xù)性的問題加以離散化,從而求出離散節(jié)點的數(shù)值解。,2024/11/21,4,初值問題,對常微分方程數(shù)值解法的基本出發(fā)點就是離散化。其數(shù)值解法有兩個基本特點,它們都采用“步進式”,即求解過程順著節(jié)點排列的次序一步一步地向前推進,描述這類算法,要求給出用已知信息 計算 的遞
3、推公式。建立這類遞推公式的基本方法是在這些節(jié)點上用數(shù)值積分、數(shù)值微分、泰勒展開等離散化方法,對初值問題,中的導(dǎo)數(shù) 進行不同的離散化處理。,2024/11/21,5,對于初值問題,的數(shù)值解法,首先要解決的問題就是如何對微分方程進行離散化,建立求數(shù)值解的遞推公式。遞推公式通常有兩類,一類是計算,y,i,+1,時只用到,x,i,+1,x,i,和,y,i,,即前一步的值,因此有了初值以后就可以逐步往下計算,此類方法稱為,單步法,;其代表是龍格,-,庫塔法。另一類是計算,y,i,+1,時,除用到,x,i,+1,x,i,和,y,i,以外,還要用到 ,即前面,k,步的值,此類方法稱為,多步法,;其代表是阿當(dāng)
4、姆斯法。,2024/11/21,6,9.1.1 Euler,公式,歐拉(,Euler,)方法是解初值問題的最簡單的數(shù)值方法。初值問題,的解,y=y(x),代表通過點 的一條稱之為微分方程的積分曲線。積分曲線上每一點 的切線的斜率 等于函數(shù) 在這點的值。,9.1,歐拉方法,2024/11/21,7,Euler,法的求解過程是,:,從初始點,P,0,(,即點,(,x,0,y,0,),出發(fā),作積分曲線,y=y(x),在,P,0,點上切線,(,其斜率為,),與,x=x,1,直線相交于,P,1,點,(,即點,(,x,1,y,1,),得到,y,1,作為,y(x,1,),的近似值,如上圖所示。過點,(,x,
5、0,y,0,),以,f,(,x,0,y,0,),為斜率的切線方程為,切線與直線,x,=,x,1,的交點,得,這樣就獲得了,P,1,(,x,1,y,1,),點的坐標(biāo)。,x,0,x,1,x,2,P,0,P,1,P,2,2024/11/21,8,同樣,過點,P,1,(,x,1,y,1,),作積分曲線,y=y(x),的切線交直線,x=x,2,于,P,2,點,切線方程為,切線與直線,x,=,x,2,的交點,得,由此獲得了,P,2,(,x,2,y,2,),的坐標(biāo)。重復(fù)以上過程,就可獲得一系列的點,:,P,1,P,1,P,n,。這樣,從,x,0,逐個算出,x,1,x,1,x,n,對應(yīng)的數(shù)值解,y,1,y,1
6、,y,n,。從圖形上看就獲得了一條近似于曲線,y=y(x),的折線,因此,,歐拉法也稱為折線法,。,2024/11/21,9,通常取,(,常數(shù),),則,Euler,法的計算格式,i,=0,1,n,還可用數(shù)值微分、數(shù)值積分法和泰勒展開法推導(dǎo),Euler,格式。以數(shù)值積分為例進行推導(dǎo)。,將方程 的兩端在區(qū)間 上積分得,,選擇不同的計算方法計算上式的積分項,就會得到不同的計算公式。,2024/11/21,10,用左矩形方法計算積分項,代入,并用,y,i,近似代替式中,y(x,i,),即可得到向前歐拉(,Euler,)公式,由于數(shù)值積分的矩形方法精度很低,所以歐拉(,Euler,)公式當(dāng)然很粗糙。,E
7、uler,公式計算,y,n+1,是用已知的或已算出,x,n,y,n,表示,稱為顯式方法。又因計算公式中不涉及,y,n-1,y,n-2,因此也稱為單步法。,2024/11/21,11,12,例,1.,解,:,由,Euler,公式,2024/11/21,13,得,依此類推,有,0 1.0000,0.1000 1.1000,0.2000 1.1918,0.3000 1.2774,0.4000 1.3582,0.5000 1.4351,0.6000 1.5090,0.7000 1.5803,0.8000 1.6498,0.9000 1.7178,1.0000 1.7848,2024/11/21,13,
8、9.2,梯形法,2024/11/21,14,如果不用矩形法計算積分項,用梯形公式求積分項,得到,上式的右端含有未知的,y,i+1,它是一個關(guān)于,y,i+1,的函數(shù)方程,這類數(shù)值方法稱為隱式方法,隱式法需要用迭代法求解。,梯形公式,在實際計算時,可將歐拉法與梯形法則相結(jié)合,計算公式為,稱為改進歐拉法。,改進歐拉法的第一步,稱為歐拉預(yù)估,-,校正公式,其中第一式稱為預(yù)估公式,第二式稱為校正公式。,2024/11/21,15,例,2,在區(qū)間,0,1.5,上,,,取,h,=0.1,,,求解,。,本題的精確解為,可用來檢驗近似解的精確程度。計算結(jié)果如下表,x,n,歐拉法,y,n,迭代一次,改進歐拉法,y
9、,n,準(zhǔn)確解,0,1,1,1,0.1,1.1,1.095909,1.095445,0.2,1.191818,1.184096,1.183216,0.3,1.277438,1.260201,1.264911,0.4,1.358213,1.343360,1.341641,0.5,1.435133,1.416102,1.414214,0.6,1.508966,1.482956,1.483240,0.7,1.580338,1.552515,1.549193,0.8,1.649783,1.616476,1.612452,0.9,1.717779,1.678168,1.673320,1.0,1.784770,1.737869,1.732051,1.1,1.85118,1.795822,1.788854,1.2,1.917464,1.852242,1.843909,1.3,1.984046,1.907323,1.897367,1.4,2.051404,1.961253,1.949359,1.5,2.120052,2.014207,2.000000,2024/11/21,17,