買書捐殘盟

2010年4月27日 星期二

Runge Kutta Method order 2

微分方程式y'=yy(0)=1

Ans:

使用Runge Kutta Method order 2:

Runge-Kutta Method通式:

y'f(x,y)

xi=x0+ih,i=0,1,2…

yk+1yk(1/2)(k1+k2)

其中

k1=hf(xk,yk)

k2=hf(xkh,ykk1)

假設h=0.5(漸進步距)

所以:

y'f(x,y)y

y(0)1,換句話說y01

x1=x0+i×h=0+1×0.5=0.5

k1h×f(x0,y0)0.5×f(0,1)=0.5×1=0.5

k2h×f(x0h,y0k1)0.5×f(00.5,10.5)=0.5×f(0.5,1.5)=0.5×1.5=0.75

其中f(x,y)=y,帶入x=0,y=1f(x,y)中,得f(0,1)=1

--> y1y0(1/2)×(k1+k2)=1+(1/2)×(0.5+0.75)=1.625

x2=x0+i×h=0+2×0.5=1.0

k1h×f(x1,y1)0.5×f(0.5,1.625)=0.5×1.625=0.8125

k2h×f(x1h,y1k1)

0.5×f(0.50.5,1.6250.8125)

0.5×f(1,2.4375)=0.5×2.4375=1.2188

-->y2y1(1/2)×(k1+k2)=1.625+(1/2)×(0.8125+1.2188)=2.6406

對正式解而言,前述y’=yy(0)=1的通解是y=ex

1. y(0)=1

2. y(0.5)=1.6487,經由Runge-Kutta方法計算的y1=1.625,

誤差率=(1.6487-1.625)/1.625=1.46%

3.y(1)=2.71828,經由Runge-Kutta方法計算的y2=2.6406,

誤差率=(2.71828-2.6406)/2.6406=2.94%

沒有留言:

張貼留言