常微分方程 c语言,使用c语言解常微分方程 c ode.pdf

SYSU-IFCEN 2013-2014 实验报告 Projet professionnel

解常微分方程

姓名:Vincent

年级:2010,学号:1033****,组号:5 (小组),4 (大组)

1. 数值方法:

我们的实验目标是解常微分方程,其中包括几类问题。一阶常微分初值问题,高阶

常微分初值问题,常微分方程组初值问题,二阶常微分方程边值问题,二阶线性常

微分方程边值问题

对待上面的几类问题,我们分别使用不同的方法

 初值问题

使用 龙格-库塔 来处理

 边值问题

用打靶法来处理

 线性边值问题

有限差分法

初值问题

我们分别使用

 二阶 龙格-库塔 方法

 4 阶 龙格-库塔 方法

来处理一阶常微分方程。

理论如下:

对于这样一个方程

y '(t)  f (t, y )

当 h 很小时,我们用泰勒展开,

k  hf (t , y )

1 k k

k  hf (t  a h, y  b k )

2 k 1 k 11 1

i1

k  hf (t  a h, y  hb k )

i k i k ij j

j 1

当我们选择正确的参数 a[i][j],b[i][j]之后,就可以近似认为这就是泰勒展开。

对于二阶,我们有:

y (t  h)  y (t)  h Af 0  Bf 1

其中

f 0  f (t, y )

f 1  f (t  Ph, y  Qhf 0 )

经过前人的计算机经验,我们有,

Vincent. Wang [1] Équipe de Neutrons Dosimétrie

SYSU-IFCEN 2013-2014 实验报告 Projet professionnel

选择 A=1/2,B=1/2,则 P=1,Q=1 ,于是又如下形式,这也使休恩方法的表达式。

所以我们称其为 龙格(库塔)休恩方法

h

y (t  h)  y (t)  f (t, y )  f (t  h, y  hf (t, y ))

2

对于 4 阶龙格方法,我们有类似的想法,

我们使用前人经验的出的系数,有如下公式

 h

y  y  (k  2k  2k  k ),

 n1 n 6 1 2 3 4

k  f (t , y ),

 1 n n

 h h

k  f (t  , y  k ),

2 n n 1

 2 2

 h h

k  f (t  , y  k ),

 3 n 2 n 2 2

k  f (t  h, y  hk ).

 4 n n 3

对于高阶微分方程及微分方程组

我们用

 4 阶龙格-库塔方法来解

对于一个如下的微分方程组

 '

y  f (t, y , , y ),

 1 1 1 n



 '

y  f (t, y , , y ).

 n n 1 n

y (t )  y ,

 1 0 1,0



y (t )  y

 n

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值