matlab 定义一个有自变量的方程_Matlab中微分方程的模型

之前一篇已经粗略的介绍了微分方程的解析解,数值解以及简单的模型。下面这篇文章要对微分方程的求数值解进一步讨论,并且提供一些常用的微分方程的模型。(这里参考的是B站清风老师的课程)

数学建模清风第一次直播:传染病模型和微分方程拟合​www.bilibili.com
  • 微分方程的数值解
  • 人口预测模型
    • 马尔萨斯模型
    • logistic模型
  • 自然界模型
    • 捕食者-猎物模型
    • 种群相互竞争模型
    • 种群相互依存模型

微分方程的数值解

求微分方程的数值解的函数如下:

[

注意

  • 这里的x和y是变量名,可以自取
  • 若求解的是一个含有n个未知函数的方程,则初值是一个n维的向量
  • 使用matlab求解微分方程时,高阶微分方程必须转换为一阶微分方程组

bbe28c9a9d88713499ec5c442b097514.png
solver的类型

刚性表示未知函数值在某些时间段内会出现剧烈变化,而非刚性表示未知函数值随自变量的变化比较缓慢。

例1:求二阶微分方程

的数值解,其中
初值为

先将方程转化为标准形式

方程函数的m文件为:

function

主函数为

[

人口预测模型

马尔萨斯模型

模型假设

  • 表示
    时刻的人口数,且
    连续可微
  • 人口增长率
    是常数
  • 人齁数量的变化是封闭的,即人口数量的增加和减少只取决于人口中个体的生育和死亡,且每一个个体都具有相同的生育能力和死亡率

建立模型

我们所得的模型为

logistics模型

模型假设

  • 的线性函数,
  • 自然资源与环境条件所能容纳的最大人口数为
    即当
    增长率为

建立模型

我们所得到模型为

该模型中

的规律
  • ,即无论人口初值如何,人口总数都是以
    为极限
  • 时,
    单调增加,当
    为下凸函数,当
    为上凸函数
  • 取得最大值

自然界模型

捕食者-猎物模型

模型假设

  • 食饵和捕食者在时刻
    的数量分别记为
  • 食饵的状态
    • 食饵独立生存则将以增长率
      按指数规律增长,即有
    • 捕食者的存在使得食饵增长率降低,降低的程度正比于捕食者数量,即有
      • 其中:
        反映捕食者掠取食饵的能力
  • 捕食者的状态
    • 捕食者离开食饵无法生存,假设独立存在时的死亡率为
      ,即
    • 而食饵为捕食者提供食物的作用相当于使其死亡率降低。这个作用与食饵数量成正比,即有
      • 其中:
        反映食饵为捕食者的供养能力
  • 表示捕获能力或强度系数为
    ,相当于食饵的自然增长率由
    降为
    ,捕食者的死亡率由
    增长为

建立模型

我们所得到的模型为

种群相互竞争模型

模型假设

  • 考虑单个种群在自然资源有限的环境下生存时,我们用logistic模型来描述演变的过程,即
  • 假设
    分别是甲乙两个种群的数量,
    分别是两个种群的固有增长率,
    分别是甲乙两个种群的最大容量,
    表示甲乙两个种群的初始数量
  • 对于种群甲
    • 考虑到乙的竞争作用,那么乙消耗同一资源会对甲的增长造成影响,所以我们的模型改进为
      • 这里的系数
        表示:单位数量的乙种群消耗的供养甲的食物量单位数量的甲消耗的食物量的
      • 如果
        则表示甲对资源的占有能力更强
  • 对于种群乙
    • 和种群甲类似有
      • 这里的系数
        表示:单位数量的乙种群消耗的供养甲的食物量单位数量的甲消耗的食物量的
  • 注意这里
    一般是相互独立的,只有在甲乙两个种群的食物选择以及对食物的偏好完全相同时,我们有

建立模型

我们所得到的模型为

种群相互依存模型

甲乙两个种群中存在着以下三种情况:

  1. 甲可以独立生存,乙不能独立生存
  2. 甲乙均可独立生存
  3. 甲乙均不能独立生存

734ec973c0e3341835227761fc4b929c.png

情况一:甲可以独立生存,乙不能独立生存

我们可以得到的模型为

情况二:甲乙均可独立生存

我们可以得到的模型是

情况三:甲乙均不能独立生存

我们可以得到我模型为

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值