13. 微分方程建模
定义
微分方程建模是数学建模的重要方法,大体可以按以下几步:
- 根据实际要求确定要研究的量 (自变量、未知函数、必要参数),确定坐标系;
- 找出这些量所满足的基本规律;
- 运用规律列出方程和定解条件。
微分方程的数值解
考虑一阶常微分方程
所谓数值解法,就是求
为求数值解,首先要将微分方程离散化,方法有:
- 用差商近似导数:
若用向前差商
- 数值积分方法:
右边的积分用矩形或梯形公式计算。
- 泰勒多项式近似:
将
代入近似值得
龙格-库塔法
龙格库塔法的主要思想,就是在
根据微分中值定理有
欧拉法简单取
则提高了精度。
于是,在区间
不妨在区间内仍取 2 个点,有
于是有
可见为使误差
若取 4 个点,就构成常用的四阶龙格-库塔法 RK4
微分方程建模实例
Malthus 模型
设
则
Logistic 模型
由于资源是有限的,随着人口数量增长,资源对人口增长的限制将越来越显著。人口较少时可以将增长率
设
设容纳最大人口为
于是有
Python 代码
微分方程求解
求微分方程
1 | #! /usr/bin/env python |
输出如下:
得到解析解的公式,以及数值解
Logistic 模型
对下列人口数据:
年份 | 人口 |
---|---|
1790 | 3.9 |
1800 | 5.3 |
1810 | 7.2 |
1820 | 9.6 |
1830 | 12.9 |
1840 | 17.1 |
1850 | 23.2 |
1860 | 31.4 |
1870 | 38.6 |
使用 Logistic 模型拟合,求出
代码如下:
1 | #! /usr/bin/env python |
输出如下:
1 | r = 0.031999710099329476 |
得到