求解常微分方程组初值问题的
龙格库塔法分析及其
C
代码
1
、概
述
由高等数学的知识可知,一些特殊类型的常微分方程(组)能够求出给定初
始值的解析解,
而在科学与工程问题中遇到的常微分方程
(组)
往往是极其复杂
的,
要想求得其给定初始值的解析解就变得极其困难,
甚至是得不到解析解。
尽
管如此,
在研究实际问题时,
往往只需要获得若干点上的近似值就行了,
这就说
明研究常微分方程(组)的数值解法是很有必要的。求解常微分方程(组)的数
值解法有多种,比如欧拉法、龙格库塔法、线性多步法等等,其中龙格库塔法是
这几种方法中比较常用的,因为其计算精度较高且具有自启动的特点。
对于用龙格库塔法求解单个常微分方程和求解常微分方程组的思路基本相似
(注意一点一个微分方程组是常微分方程组即表明微分方程中的各阶导数都是
对同一个变量求导,
例如可以把各个量对时间求导得到一个常微分方程组,
如果
一个微分方程组中的有对不同变量的导数那么这个方程组就成了偏微分方程
组)
,都是根据泰勒展开得到其迭代计算形式,其基本思想都是按照一定原则求
取当前点附近一些点的斜率,
通过这些斜率的线性组合作为当前点处的斜率,
进
行递推求解。
2
、数学模型
2.1
常微分方程初值问题的数学模型