问题重述:
捕食者-被捕食者模型非线性微分方程的一个例子是捕食者-被捕食者模型。设x(t)和y(t)分别表示兔子和狐狸在时刻t的数量,捕食者-被捕食者模型表明,x(t)和y(t)满足:
一个典型的计算机模拟可作用系数:
A=2, B=0.02, C=0.0002, D=0.8
且满足:
x(0)=3000只兔子,y(0)=120只狐狸。
在区间[0,5]内:
(1) 用Euler法、Heun法和经典4阶Runge-kutta法取多种步长求解。
把x=x(t) 和y=y(t)画在同一张图上并给以解释。
(2) 为考察变量x和y之间的关系,将计算结果画在以x、y为坐标的图上,对所得结果加以解释。
原理介绍:
Euler Method
对于
dx=f(t,x,y)dt和dy=g(t,x,y)dt
将
代入上式得到:
将区间分为M个子区间,宽度h=(b-a)/M,网格点为
于是得到Euler Method:
Heun Method
在区间[ , ]上对微分方程积分:
再利用trapezoidal rule可以得到: