2010数模讲座--微分方程模型

更新时间:2023-04-10 06:07:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

微分方程模型(动态模型) 微分方程模型(动态模型)在研究某些实际问题时, 在研究某些实际问题时,经常无法直接得到各变量 之间的联系, 之间的联系,问题的特性往往会给出关于变化率的一些 关系。利用这些关系, 关系。利用这些关系,我们可以建立相应的微分方程模 在自然界以及工程技术领域中, 型。在自然界以及工程技术领域中,微分方程模型是大 量存在的。它甚至可以渗透到人口问题以及商业预测等 量存在的。 领域中去,其影响是广泛的。 领域中去,其影响是广泛的。 ? 随时间(空间)变化的数量关系 随时间(空间) ? 微分方程: 含有未知函数的导数(或微分)的方程 微分方程: 含有未知函数的导数(或微分) ? 例: 人口模型 、种群竞争模型1
动态模型的作用: 动态模型的作用:? 描述对象特征随时间 空间 的演变过程 描述对象特征随时间(空间 空间)的演变过程 ? 分析对象特征的变化规律 ? 预报对象特征的未来性态 ? 研究控制对象特征的手段
微分方程建模的方法: 微分方程建模的方法:? 根据函数及其变化率之间的关系确定函数 根据函数及其变化率 变化率之间的关系确定函数 ? 根据建模目的和问题分析作出简化假设 内在规律或用类比法建立微分方程 ? 按照内在规律或用类比法建立微分方程 按照内在规律或用类比法2
一般的( 一般的(常)微分方程或微分方程组可以写成: 微分方程或微分方程组可以写成:dx = f (t , x) dt
x∈Rn
定义1 定义1
称微分方程或微分方程组dx = f ( x) dt
为自治系统或动力系统。 自治系统或动力系统。
若方程或方程组f(x)=0有解 0,称点 0为微分方程或 有解x 称点x 若方程或方程组 有解 微分方程组的平衡点 奇点。 平衡点或 微分方程组的平衡点或奇点。
初值问题: 初值问题:
? dx ? = f ( x) ? dt ? x (t0 ) = x0 ?
3
定义2 定义2
dx 相空间是指以 自治系统 = f ( x ) 的相空间是指以 dtn
(x1,…,xn)为坐标的空间R 。 特别, =2时 称相空间为相平面 相平面。 特别,当n=2时,称相空间为相平面。 的点集{(x 空间 Rn 的点集 1,…,xn) |xi = xi(t)满足自治系 满足自治系 称为系统的轨线 统,i=1,…,n}称为系统的轨线,所有轨线在相空 称为系统的轨线, 间的分布图称为相图 间的分布图称为相图。4
初值问题: 初值问题:
? dx ? = f ( x) ? dt ? x (t0 ) = x0 ?
解有初等函数表达式 ? 定 量 定性 ·········5
数值解: 数值解: 计算机求解 稳定性
一、人 口 模 型1. 问题的提出 2. 假设和定义 3. 模型的建立 4. 分析和求解 5. 结论和讨论
6
1. 问题的提出人口问题是当今世界上最令人关注的问题之

一, 人口问题是当今世界上最令人关注的问题之一,一些发 展中国家的人口出生率过高,越来越威胁着人类的正常生活, 展中国家的人口出生率过高,越来越威胁着人类的正常生活, 有些发达国家的自然增长率趋于零,甚至变为负数, 有些发达国家的自然增长率趋于零,甚至变为负数,造成劳 动力紧缺,也是不容忽视的问题。另外, 动力紧缺,也是不容忽视的问题。另外,在科学技术和生产 力飞速发展的推动下,世界人口以空前的规模增长, 力飞速发展的推动下,世界人口以空前的规模增长,统计数 据显示: 据显示:
年 1625 1830 1930 人口(亿)5 10 20
1960 30
1974 40
1987 1999 50 60
7
我国是世界第一人口大国, 我国是世界第一人口大国,地球上每九个人中就有二 个中国人, 个中国人,在20世纪的一段时间内我国人口的增长速度过 世纪的一段时间内我国人口的增长速度过 如下表: 快,如下表: 年 1908 1933 4.7 1953 6.0 1964 7.2 1982 10.3 1990 11.3 2000 12.95
人口( 人口(亿)3.0
认识人口数量的变化规律,建立人口模型, 认识人口数量的变化规律,建立人口模型,作出较 准确的预报,是有效控制人口增长的前提。 准确的预报,是有效控制人口增长的前提。
下面介绍两个最基本的人口模型: 下面介绍两个最基本的人口模型: Malthus模型、Logistic模型 模型、 模型 模型8
2. 模型 (Malthus模型 模型1 模型) 模型18世纪末,英国人Malthus在研究了百余年 世纪末,英国人 世纪末 在研究了百余年 的人口统计资料后认为, 的人口统计资料后认为,在人口自然增长的过程 净相对增长率( 中,净相对增长率(出生率减去死亡率为净增长 是常数。 率)是常数。
9
提示: 在t → t+?t时间内 N(t+?t)-N(t) 净增长率=出生率-死亡率= ?t 净增长率 净相对增长率= N(t) (N(t)表示t时刻的人口数) N(t+?)-N(t) = ?tN(t)10
2.1 模型假设:2) 1) 设时刻t的人口为N ( t ) 净相对增长率为r 把N ( t ) 当作连续的变量
3)
2.2 建立模型按照Malthus的理论,在t到t+?t时间内人口的增 长量为: N(t+?t)-N(t)=rN(t)?t 令?t → 0,则得到微分方程 dN = rN dt (1)11
若记初始时刻(t=0)的人口为N 0 , 则有 ? dN = rN ? ? dt ? N t =0 = N 0 ? (2)
2.3 模型求解解得 N(t)=N 0 e rt (3)
2.4 模型分析如果r>0 (3)式表明人口将以指数规律无限增 长,特别地,当t → ∞ 时,N(t) → + ∞,这似乎不太可能.12
解法如下: dN = rdt ? ln N = rt + c 由 N rt + c rt N = e ? N = Ce 又∵ Nt =0
( A)
= N00
即 : N 0 = Ce ? C = N 0 N = N0ert
13
r=0.2743/10年,xm=4.188 数据拟合:
r=0.2022/10年, xm=6.0450 14
指数增长模型的应用及局限性: 指数增长模型的应用及局限性:

? 与19世纪以前欧洲一些地区人口统计数据吻合 世纪以前欧洲一些地区人口统计数据吻合 ? 适用于 世纪后迁往加拿大的欧洲移民后代 适用于19世纪后迁往加拿大的欧洲移民后代 ? 可用于短期人口增长预测 ? 不符合 世纪后多数地区人口增长规律 不符合19世纪后多数地区人口增长规律 ? 不能预测较长期的人口增长过程 19世纪后人口数据 19世纪后人口数据 人口增长率r不是常数(逐渐下降) 人口增长率 不是常数(逐渐下降) 不是常数15
2.5 模型修改分析表明, 分析表明,以上这些现象的主要原因是随着人 口的增长,自然资源, 口的增长,自然资源,环境条件等因素对人口增 长的限制作用越来越显著。人口较少时, 长的限制作用越来越显著。人口较少时,人口的 自然增长率基本上是常数, 自然增长率基本上是常数,而当人口增加到一定 数量以后, 数量以后,这个增长率就要随着人口的增加而减 因此,我们将对指数模型关于净相对增长率 少。因此,我们将对指数模型关于净相对增长率 是常数的基本假设进行修改。 是常数的基本假设进行修改。
16
3. 模型2(Logistic模型)荷兰生物学家Verhulst引入常数N m 表示自然资 源和环境条件所能容许的最大人口,并假定净相对 ? N(t)? 增长率等于r ?1? ,即净相对增长率随着N (t )增 Nm ? ? 长而减少.当N(t)→ N m时, 净相对增长率趋于零.
3.1 模型假设与模型1相同,增加的条件为N 表示自然资源 m 和环境条件所能容许的最大人口.
17
? N(t) ? 并假定净相对增长率等于r ? 1?, Nm ? ? (即净相对增长率随着 N (t )增加而减少).
3.2 模型的建立这样,Malthus模型中的方程(1)变为 ? dN N ? = r ?1 ? (4) ?N dt Nm ? ? 仍给出与Malthus模型相同的初始条件 Nt=0
= N0
(5)18
这是一个非齐线性常微分方程 dN rN 2 ? rN = ? dt Nm 容易求得它对应的齐线性常微分方程 dN ? rN = 0的通解为 dt N(t)=ert 根据常数变易法易求得其解.19
3.3 模型的求解(4)在初始条件为(5)下的解为 N(t)= Nm ? Nm ? ? rt 1+ ? ? 1? e ? N0 ? (6)
3.4 模型分析容易看出, 当t → +∞时,N(t)→ N m20
这个模型称为阻滞增长模型( 模型) 这个模型称为阻滞增长模型(Logistic模型): 阻滞增长模型 模型
dx = rx dtdx/dt
dx x = r ( x) x = rx(1 ? ) dt xmx xm xm/2Logistic曲线 曲线
0
xm/2
xm x
0
t
x (t ) =
xm xm 1+ ( ? 1) e ? rt x0
x(t)~S形曲线 形曲线, 形曲线 x增加先快后慢 增加先快后慢21
阻滞增长模型( 模型) 阻滞增长模型(Logistic模型) 模型参数估计 用指数增长模型或阻滞增长模型作人口 预报, 预报,必须先估计模型参数 r 或 r, xm ? 利用统计数据用最小二乘法作拟合 利用统计数据

用最小二乘法作拟合 最小二乘法 例:美国人口数据(单位~百万) 百万) 美国人口数据(单位 百万1860 31.4 1870 38.6 1880 50.2 …… 1960 …… 179.3 1970 204.0 1980 226.5 1990 251.4
r=0.2557, xm=392.122
x (t ) =
xm xm 1+ ( ? 1) e ? rt x0
r=0.2557, xm=392.1
23
阻滞增长模型( 模型) 阻滞增长模型(Logistic模型) 模型
模型检验
用模型计算2000年美国人口,与实际数据比较 年美国人口, 用模型计算 年美国人口
x(2000) = x(1990) + ?x = x(1990) + rx(1990)[1? x(1990) / xm ]
x(2000) = 274.5
实际为281.4 (百万 百万) 实际为 百万
模型应用——预报美国 预报美国2010年的人口 模型应用 预报美国 年的人口 加入2000年人口数据后重新估计模型参数 年人口数据后重新估计模型参数 加入 r=0.2490, xm=434.0
?
x(2010)=306.0
3.06188亿(2009年,世界国家和地区第 名,次于中国、印度) 亿 年 世界国家和地区第3名 次于中国、印度) 人口密度31人 平方公里 世界国家和地区第177名)。 平方公里( 人口密度 人/平方公里(世界国家和地区第 名
24
习题: 1.说明Longistic模型中的常数r即为指 数模型中的人口净相对增长率. 2.如果人口增长速度与Nm -N(t)成正比, 则结果如何?
25
二、传染病模型问题: 问题: ? 描述传染病的传播过程? 分析受感染人数的变化规律 ? 预报传染病高潮到来的时刻 ? 预防传染病蔓延的手段 ? 按照传播过程的一般规律, 按照传播过程的一般规律, 用机理分析方法建立模型26
模型1 模型1假设: 假设: 建模: 建模:
已感染人数 (infective) i(t) ? 每个病人每天有效接触 (足以使人致病 人数为λ 足以使人致病)人数为 足以使人致病
i (t + ?t ) ? i (t ) = λi (t )?tdi = λi dt i ( 0 ) = i0
i ( t ) = i0 e
λt
t →∞ ?i →∞ ?必须区分已感染者(病 必须区分已感染者 病 和未感染者(健康人 人)和未感染者 健康人 和未感染者 健康人)27
若有效接触的是病人, 若有效接触的是病人, 则不能使病人数增加
和未感染者( 和未感染者 模型2 区分已感染者 模型2 区分已感染者(infective)和未感染者 susceptible) 假设: 假设: 1)总人数N不变,病人和健康 )总人数 不变 不变, 人的 比例分别为 i ( t ), s ( t ) 2)每个病人每天有效接触人数 ) 为λ, 且使接触的健康人致病 建模: 建模: SI 模型
λ~日接触率
N [i (t + ?t ) ? i (t )] = [λs (t )]Ni (t )?tdi = λ si dt
s (t ) + i (t ) = 1
? di = λ i (1 ? i ) ? ? dt ? i ( 0 ) = i0 ?28
模型2 模型i 1 1/2 i0 0 tm
? di = λ i (1 ? i ) ? ? dt ? i ( 0 ) = i0 ? i (t ) =
Logistic 模型
1 ?1 ? ? λt 1 + ? ? 1?e ?i ? ? 0 ??1
t
t=tm, di/dt 最大 tm~传染病高潮到来时刻 传染病高潮到来时


?1 ? t m = λ ln ? ? 1 ? ?i ? ? 0 ?
t → ∞ ? i →1 ?病人可以治愈! 病人可以治愈!29
λ (日接触率 ↓ → tm↑ 日接触率)↓ 日接触率卫生水平
模型3 模型
传染病无免疫性 传染病无免疫性——病人治愈成 无免疫性 病人治愈成 SIS 模型 为健康人, 为健康人,健康人可再次被感染
增加假设: ) 增加假设: 3)病人每天治愈的比例为μ
μ ~日治愈率 日
建模: 建模:N [i (t + ? t ) ? i (t )] = λ Ns (t )i (t ) ? t ? μ Ni (t ) ? t
? di = λ i (1 ? i ) ? μ i ? ? dt ? i ( 0 ) = i0 ?
λ ~ 日接触率1/μ ~感染期 感染期
σ =λ/μ
σ ~ 一个感染期内每个病人的 一个感染期内每个病人的有效接触人数,称为接触数。 有效接触人数,称为接触数。 接触数30
模型3 模型di/dt
di = λ i (1 ? i ) ? μ i dt iσ >1i01-1/σ σ
di 1 = ?λi[i ? (1 ? )] σ =λ/ μ dt σσ >1i
σ ≤1di/dt < 0
i0
0
1-1/σ σ
1 i
i00
1 ? , σ > 1 ?1 ? i(∞ ) = ? σ ?0, σ ≤ 1 ?
t
0
t
接触数σ =1 ~ 阈值
σ >1
σ ≤ 1 ? i (t ) ↓
感染期内有效接触感染的 感染期内有效接触感染的 i0小 健康者人数不超过病人数 模型2(SI模型 如何看作模型 模型)如何看作模型 模型)的特例 模型 模型 如何看作模型3(SIS模型 的特例 31 模型
? i(t )按S形曲线增长
模型4 模型
有免疫性——病人治愈后即移 传染病有免疫性 病人治愈后即移 传染病有免疫性 出感染系统, 移出者(Removed) 出感染系统,称移出者 SIR模型 模型
不变, 假设: )总人数N不变 病人、 假设: 1)总人数 不变,病人、健康人和移 出者的比例分别为 i ( t ), s ( t ), r ( t ) 2)病人的日接触率λ , 日治愈率μ, ) 接触数 σ = λ / μ 建模: 建模:
s (t ) + i (t ) + r (t ) = 1需建立 i ( t ), s ( t ), r ( t ) 的两个方程
对移出者
dr N = μNi dt
32
模型4 模型
SIR模型 模型
N [i (t + ?t ) ? i (t )] = λNs (t )i (t ) ?t ? μ Ni (t ) ?t
N [ r ( t + ? t ) ? r ( t )] = μNi ( t ) ? t? di ? dt = λ si ? μ i ? 无法求出 i ( t ), s ( t ) ? ds = ? λ si ? 的解析解 ? dt ? i ( 0 ) = i0 , s ( 0 ) = s 0 在相平面 s ~ i 上 ? ? 研究解的性质 i0 + s0 ≈ 1 (通常r (0) = r0很小) 33
模型 模型4 模型 SIR模型
? di ? dt = λsi ? μi ? ? ds ? = ? λsi ? dt ?i (0) = i0 , s (0) = s 0 ? ?
消去dt 消去 σ =λ/μ
1 ? di ? ds = σ s ? 1 ? ? i s= s = i0 ?0
相轨线
相轨线 i ( s ) 的定义域 在D内作相轨线 i ( s ) 内作相轨线 的图形, 的图形,进行分析
s i ( s ) = ( s 0 + i0 ) ? s + ln σ s0i1
1
D = {( s , i ) s ≥ 0 , i ≥ 0 , s + i ≤ 1}
D 0 134
s
模型4 模型
相轨线 i ( s ) 及其分析i1 D
SIR模型 模型s i(s) = (s0 + i0 ) ? s + ln σ s0P4

? di 1 ? di ? dt = λsi ? μi ? ds = σ s ? 1 ? ? ? ds ? = ? λsi ? i s= s = i0 dt ? ? ?i (0) = i0 , s (0) = s 0 ? ?0
1
s(t)单调减→相轨线的方向 单调减→ 单调减1
P2 imP1? P3
s = 1 / σ , i = im t → ∞ , i → 0s∞ s ∞ 满足 s 0 + i0 ? s ∞ + ln =0 σ s0
0
s∞
S0
1 / σ s0
1s
P1: s0>1/σ → i(t)先升后降至 先升后降至0 先升后降至 P2: s0<1/σ → i(t)单调降至 单调降至0 单调降至
传染病蔓延 传染病不蔓延
1/σ ~ 阈值35
模型4 模型
预防传染病蔓延的手段
SIR模型 模型
传染病不蔓延的条件——s0<1/σ 传染病不蔓延的条件 ? 提高阈值 1/σ 降低 σ(=λ/μ)
λ ↓, μ ↑
λ (日接触率 ↓ ? 卫生水平↑ 日接触率)↓ 卫生水平↑ 日接触率 μ(日治愈率 ↑ ? 医疗水平↑ 医疗水平↑ 日治愈率)↑? 降低 s0s0 + i0 + r0 = 1
提高 r0
群体免疫
σ 的估计1
s∞ s 0 + i0 ? s ∞ + ln =0 σ s0
忽略 i0
ln s0 ? ln s∞ σ= s0 ? s∞36
模型4 模型
被传染人数的估计
SIR模型 模型
记被传染人数比例 x = s0 ? s∞1 x s∞ x + ln(1 ? ) ? 0 =0 s 0 + i0 ? s ∞ + ln σ s0 σ s0 i0 ?0, s0 ?1
1
x<x x (1 ? ? 2 )?0 s0σ 2 s0σ
1
i
x ≈ 2 s 0σ ( s 0 ?s0 - 1/σ = δ
1
σ
)0 s ∞ 1/ σ
P1
s0
s
δ 小 , s0 σ ? 1
x ? 2δ
提高阈值1/ 提高阈值 σ →降低 被传染人数比例 x37
三、捕食系统的Volterra方程 捕食系统的 方程意大利生物学家D’Ancona曾致力于鱼类种群相互制约 曾致力于鱼类种群相互制约 意大利生物学家 关系的研究, 关系的研究,在研究过程中他无意中发现了一些第一次世 界大战期间地中海沿岸港口捕获的几种鱼类占捕获总量百 分比的资料,从这些资料中他发现各种软骨掠肉鱼, 分比的资料,从这些资料中他发现各种软骨掠肉鱼,如鲨 鳐鱼等我们称之为捕食者 或食肉鱼) 捕食者( 鱼、鳐鱼等我们称之为捕食者(或食肉鱼)的一些不是很 理想的鱼类占总渔获量的百分比。 年期间, 理想的鱼类占总渔获量的百分比。在 1914~1923年期间, 年期间 意大利阜姆港收购的鱼中食肉鱼所占的比例有明显的增加. 意大利阜姆港收购的鱼中食肉鱼所占的比例有明显的增加
38
他知道, 他知道,捕获的各种鱼的比例近似地反映了地中海里各 种鱼类的比例。战争期间捕鱼量大幅下降, 种鱼类的比例。战争期间捕鱼量大幅下降,但捕获量的下降 为什么会导致鲨鱼、鳐鱼等食肉鱼比例的上升,即对捕食者 为什么会导致鲨鱼、鳐鱼等食肉鱼比例的上升,即对捕食者 有利而不是对食饵有利呢?他百思不得其解, 食饵有利呢 有利而不是对食饵有利呢?他百思不得其解,无法解释这一 现象,就去求教当时著名的意大利数学

家V.Volterra,希望他 现象,就去求教当时著名的意大利数学家 , 能建立一个数学模型研究这一问题。 能建立一个数学模型研究这一问题。年代百分 比
1914 11.9 1919 27.3
1915 21.4 1920 16.0
1916 22.1 1921 15.9
1917 21.2 1922 14.8
1918 36.4 1923 10.739
年代 百分 比
1、模型建立Volterra将鱼划分为两类。一类为食用鱼(食饵),数量记 将鱼划分为两类。一类为食用鱼(食饵),数量记 将鱼划分为两类 ), ),数量记为 为x1(t),另一类为食肉鱼(捕食者),数量记为 2(t),并建 ,另一类为食肉鱼(捕食者),数量记为x , 立双房室系统模型。 立双房室系统模型。
对于食饵 Prey) 食饵( 对于食饵(Prey)系统 :大海中有食用鱼生存的足够资源,可假设食用鱼独立生 大海中有食用鱼生存的足够资源, 的指数律增长(Malthus模型),即设 模型),即设: 存将按增长率为r1的指数律增长(Malthus模型),即设:
? dx1 ? ? ? = r1 x1 ? dt ?λ40
由于捕食者的存在,食用鱼数量因而减少, 由于捕食者的存在,食用鱼数量因而减少,设减少的速 率与两者数量的乘积成正比(竞争项的统计筹算律), ),即 率与两者数量的乘积成正比(竞争项的统计筹算律),即:
? dx1 ? ? ? = λ1 x1x2 ? dt ?出
λ1反映了捕食者掠取食饵的能力
41
对于捕食者(Predator) 对于捕食者(Predator)系统 : 捕食者设其离开食饵独立存在时的死亡率为r2,即:
? dx2 ? ? ? = ? r2 x2 ? dt ?出但食饵提供了食物,使生命得以延续。这一结果也 但食饵提供了食物,使生命得以延续。 要通过竞争来实现,再次利用统计筹算律,得到: 要通过竞争来实现,再次利用统计筹算律,得到:
? dx1 ? ? ? = λ2 x1 x2 ? dt ?入42
综合以上分析,建立P 模型(Volterra方程) 综合以上分析,建立P-P模型(Volterra方程) 方程 的方程组: 的方程组:
? ? x1 = x1 ( r1 ? λ1 x2 ) ? ? ? x2 = x2 ( ? r2 + λ2 x1 )
(1)
43
2、模型分析
方程组(1)是非线性的,不易直接求解。 方程组( 是非线性的,不易直接求解。 容易看出,该方程组共有两个平衡点, 容易看出,该方程组共有两个平衡点,即:? r2 r1 ? P0 ( 0, 0 ) 和 P ? , ? 1 ? λ2 λ1 ?
Po(0,0)是平凡平衡点且明 显是不稳定,没必要研究
? x1 ( t ) = 0 ? x1 (t ) = x1 (0)er1t ? 和 ? x 2 ( t ) = x 2 (0) e ? r t ? ? x2 (t ) = 0 (0)、 (0)均不为零时 均不为零时, 当x1(0)、x2(0)均不为零时,?t > 0 ,应有 x1(t)>0且x2(t)>0,相应的相轨线应保持在第一象 )>0且 )>0,2
方程组还有两组平凡解: 方程组还有两组平凡解:
限中。 限中。
44
求相轨线 dx1 x1 (r1 ? λ1 x2

) = 将两方程相除消去时间t, 将两方程相除消去时间 ,得: dx2 x2 (?r2 + λ2 x1 ) 分离变量并两边积分得轨线方程: 分离变量并两边积分得轨线方程:r ( x1r2 e ? λ2 x1 )( x21 e ? λ1x2 ) = Sr ? ( x1 ) = ( x1r e ? λ x ) ψ ( x2 ) = ( x2 e? λ x ) 令2 2 11 1 2
用微积分知识容易证明: 用微积分知识容易证明: ? r2 ? ? '? ? = 0 ? (0) = ? (+∞) = 0 ? λ2 ? r2 r2 x1 > ? '( x1 ) < 0 ? '( x1 ) > 0 x1 < λ2 λ2x1 =
两者应具有类似的性质
λ2
r2
有: ? maxx2 =
同理: 同理:对 ψ ( x2 )
λ1
r1
有: max ψ45
易知仅当 S ≤ ? max ?ψ max时才有解 记: = x10
轨线退化为平衡点。 当 S = ? max ?ψ max时,轨线退化为平衡点。 当 S < ? max ?ψ max时,轨线为一封闭曲线,即周期解。 轨线为一封闭曲线,即周期解。 证明具有周期解。 证明具有周期解。
λ2
r2
, x2 =0
λ1
r1
0 0 的性态。 讨论平衡点 ( x1 , x 2 ) 的性态。
′ ′ x′ ′ 只需证明: 只需证明:存在两点 x1及 x1′ , 1 < x1′ ′ ′时 当 x1 x1时,方 程无解。 程无解。46
? ( x1 )
ψ ( x1 )ψm
?m
ax1
βx2
0
x10
λ2
r2
x11
0
x20
x2
λ1
r1
x21
x
0 2
P0
x10
′ x1
x10
′′ x147
0 0 ′ ? ( x1 ) 的性质, x1、x1 , 1 < x1 而 x1′ > x1 ,使得: ′ ′′ x ′ ? 的性质, 使得: 由
′ ′ ? ( x1 ) = ? ( x1′) = μ 。同样根据的性质知,当 x1 μ 。此时:ψ ( x2 ) =
′′ ? 的性质, ′ 成立。 由ψ ( x 2 ) 的性质, x2、x2 ,使 ? ( x1 )ψ ( x2 ) = S 成立。 μψ max S ψ = = ψ max ′ ′ ? 当x1= x1 或 x1′时, ( x1 ) = μ , ( x 2 ) = ? ( x1 ) ? ( x1 ) 0 x 2 = x 2 时才能成立 仅当 ′′ x1或x1> x1时,由于? ( x1 ) < μ , (x2 ) = S = μψmax >ψmax ψ 而当x 而当 1< ′ ?(x1 ) ?(x1 ) 无解。 故 ? ( x1 )ψ ( x2 ) = S 无解。48
μψ max S = < ψ max ? ( x1 ) ? ( x1 )
r ( x1r2 e ? λ2 x1 )( x21 e ? λ1x2 ) = S ( x1 , x2 )
s , s1
s49
确定闭曲线的走向 用直线l1 : x 1 = l2 : x 2 =
λ2 λ1r1
r2
将第一象限划分成四个子区域
在每一子区域,? 在每一子区域,x1 与 x2 不变号,据此确定轨线的走 ? 不变号, 向 将Volterra方程中的第二个改写成: Volterra方程中的第二个改写成: 方程中的第二个改写成
? x2 = ?r2 + λ2 x1 x250
的区间上积分, 将其在一个周期长度为T的区间上积分,得t0 +T x1 (t0 + T ) ln = ?r2T + λ2 ∫ x1 (t )dt t0 x1 (t0 )
等式左端为零, 等式左端为零,故可得:1 t0 +T = ∫ x1 (t )dt λ2 T t0 r2 1 t0 +T 同理: = ∫t0 x2 (t )dt λ1 T r1
平衡点P 平衡

点 P 的两个坐标恰为 食用鱼与食肉鱼在一个 周期中的平均值。 周期中的平均值。
x2? x1 < 0 ? x2 < 0 ? x1 > 0 ? x2 < 0 ? x1 < 0 ? x2 > 0
x ? x1 > 0 1 ? x2 > 051
解释D’Ancona发现的现象 发现的现象 解释 引入捕捞能力系数ε,( ),ε表示单位时间 引入捕捞能力系数 ,(0<ε<1), 表示单位时间 ,( ), 内捕捞起来的鱼占总量的百分比。 方程应为: 内捕捞起来的鱼占总量的百分比。故Volterra方程应为: 方程应为
? ? x1 = r1 x1 ? λ1 x1 x2 ? ε x1 = ( r1 ? ε ) x1 ? λ1 x1 x2 ? ? ? x2 = ? r2 x2 + λ2 x1 x2 ? ε x2 = ? ( r2 + ε ) x2 ? λ2 x1 x2平衡点P的位置移动到了: ′ ? r2 + ε r1 ? ε ? 平衡点 的位置移动到了: 的位置移动到了 P? , ? λ2 λ1 ? ? 食用鱼的数量反而因捕捞它而增加,真的是这样?! 食用鱼的数量反而因捕捞它而增加,真的是这样?! 由于捕捞能力系数ε的引入,食用鱼的平均量有了增加, 由于捕捞能力系数 的引入,食用鱼的平均量有了增加, 的引入 而食肉鱼的平均量却有所下降, 越大 越大, 而食肉鱼的平均量却有所下降,ε越大,平衡点的移动 也越大。 也越大。52
P-P模型导出的结果虽非绝对真理,但在一定 模型导出的结果虽非绝对真理, 程度上是符合客观实际的,有着广泛的应用前景。 程度上是符合客观实际的,有着广泛的应用前景。 例如,当农作物发生病虫害时, 例如,当农作物发生病虫害时,不要随随便便地使 用杀虫剂, 用杀虫剂,因为杀虫剂在杀死害虫的同时也可能杀 死这些害虫的天敌,(害虫与其天敌构成一个双种 死这些害虫的天敌,(害虫与其天敌构成一个双种 ,( 群捕食系统),这样一来, ),这样一来 群捕食系统),这样一来,使用杀虫剂的结果会适 得其反,害虫更加猖獗了。 得其反,害虫更加猖獗了。
53
四、用Matlab软件求常微分方程的数值解 软件求常微分方程的数值解
[t,x]=solver(’f’, ts , x0, options) , ( )自变 量值 函数 值 ode45 ode23 ode113 ode15s ode23s 由待解 方程写 成的m文件名 函数的 ts=[t0,tf], 初值 t0、tf为自变 量的初值和 终值
ode23:组合的2/3阶龙格-库塔-芬尔格算法 ode45:运用组合的4/5阶龙格-库塔-芬尔格算法 用于设定误差限(缺省时设定相对误差10-3, 绝对误差10-6), 命令为:options=odeset(’reltol’,rt,’abstol’,at), rt,at:分别为设定的相对误差和绝对误差.54
注意: 注意:1、在解n个未知函数的方程组时,x0和x 均为n维向量,m-函数文件中的待解方程组 应以x的分量形式写成. 2、使用Matlab软件求数值解时,高阶微 分方程必须等价地变换成一阶微分方程组.
55
dx ( t ) = f 1 ( t , x

( t ), y ( t )) 注意1: dt dy ( t ) = f 2 ( t , x ( t ), y ( t )) dtxd(1)=f1(t, x(t), y(t)); 1、建立 文件函数 、建立M文件函数 xd(2)=f2(t, x(t), y(t)); function xdot = fun(t,x,y) xdot=xd’; % 列向量 xdot = [f1(t, x(t), y(t)); f2(t, x(t), y(t))]; ; ; 2、数值计算(执行以下命令) 、数值计算(执行以下命令)
[t,x,y]=ode23(‘fun',[t [t,x,y]=ode23( fun',[t0,tf],[x0,y0]) fun注意:执行命令不能写在M函数文件中。 注意:执行命令不能写在M函数文件中。56
注意2 注意2:例如: 例如: y ' ' =
f ( y' , y, t) 令 y ' = x, y ' ' = x' ? x' = f ( x, y, t ) ∴? ? y' = xy(t)是原方程的解。 x(t)只是中间变量。
M-文件函数形式 function xdot = fun1(t,x,y) (fun1.m) xdot = [f(t, x(t), y(t));x(t)]; ; ;
[t,x,y]= ode23(‘fun1',[t0,tf],[x0,y0]) ode23( fun1',[t fun1如果方程形式为: 如果方程形式为:z’’’ = f(t, z, z’’ )?57
例1.
?d 2x dx ? 2 ? 1000(1 ? x 2 ) ? x = 0 ? dt dt ? x (0) = 2; x ' (0) = 0 ?则微分方程变为一阶微分方程组:
解: 令 y1=x,y2=y1’ ,
y1 ' = y2 ? ? y2 ' = 1000(1 ? y12 ) y2 ? y1 ? ? y (0) = 2, y (0) = 0 1 2 ?
2 1.5 1 0.5 0 -0.5 -1
1、建立m-文件 、建立 文件 文件vdp1000.m如下: 如下: 如下 function dy=vdp1000(t,y) dy=zeros(2,1); dy(1)=y(2); dy(2)=1000*(1-y(1)^2)*y(2)-y(1);-1.5 -2 -2.5 0
500
1000
1500
2000
2500
3000
2、取t0=0,tf=3000,输入命令: 、 , ,输入命令: [T,Y]=ode15s('vdp1000',[0 3000],[2 0]); plot(T,Y(:,1),'-')
3、结果如图 、58
例2 解微分方程组
? y1 ' = y2 y3 ?y '= ?y y ? 2 1 3 ? ? y3 ' = ?0.51 y1 y2 ? y1 (0) = 0, y2 (0) = 1, y3 (0) = 1 ?1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 2 4 6 8 10 12
解 1、建立m-文件 、建立 文件rigid.m如下: 如下: 文件 如下function dy=rigid(t,y) dy=zeros(3,1); dy(1)=y(2)*y(3); dy(2)=-y(1)*y(3); dy(3)=-0.51*y(1)*y(2);
2、取t0=0,tf=12,输入命令: 、 , ,输入命令: [T,Y]=ode45('rigid',[0 12],[0 1 1]); plot(T,Y(:,1),'-',T,Y(:,2),'*',T,Y(:,3),'+') 3、结果如图 、 图中, 的图形为实线, 的图形为“ ” 的图形为“ 线 图中,y1的图形为实线,y2的图形为“*”线,y3的图形为“+”线.59
捕食系统的Volterra方程 例3.捕食系统的 捕食系统的 方程x1 (t ) ——食饵在 t 时刻的数量; x 2 (t ) ——捕食者在 t 时刻的数量; r1 ——食饵独立生存时的增长率; r2 ——捕食者独自存在时的死亡率;
λ1 ——捕食者掠取食饵的能力; λ 2 ——食饵对捕食者的供养能力.e—捕获能力系数模型(一) 不考虑人工捕获
dx1 = x1 (r1 ? λ1 x 2 ) dt dx 2 = x 2 (?r2 + λ 2 x1 ) dt该 模型反映了在没有人工捕获的自然环境中食饵与捕食者之间的制约 关系,没有考虑食饵和捕食者自身的阻滞作用, 关系,没有考虑食饵和捕

食者自身的阻滞作用,是Volterra提出的最简单 提出的最简单 的模型. 的模型60
针对一组具体的数据用 Matlab 软件进行计算. 设食饵和捕食者的初始数量分别为 x1 (0) = x10 , x 2 (0) = x 20 对于数据 r1 = 1, λ1 = 0.1, r2 = 0.5, λ 2 = 0.02, x10 = 25, x 20 = 2 ,
t 的终值经试验后确定为 15,即模型为: ? x1' = x1 (1 ? 0.1x 2 ) ? ' ? x 2 = x 2 (?0.5 + 0.02 x1 ) ? x (0) = 25, x (0) = 2 2 ? 1
m-文件shier.m如下: function dx=shier(t,x) dx=zeros(2,1); dx(1)=x(1)*(1-0.1*x(2)); dx(2)=x(2)*(-0.5+0.02*x(1));
主程序shark.m如下: [t,x]=ode45('shier',[0 15],[25 2]); plot(t,x(:,1),'-',t,x(:,2),'*') plot(x(:,1),x(:,2))61
求解结果:数值解如下图: x1 (t ) 为实线, x 2 (t ) 为“*”线.30
相图 ( x1 , x 2 ) 为:
100 90 80 70 60 50 40 30 20 10 0 0 5 10 15
25
20
15
10
5
0 0
20
40
60
80
100
左图反映了x 左图反映了 1(t)与x2(t)的关系。 ) )的关系。 可以猜测: x1(t)与x2(t)都是周期函数。 可以猜测: ) )都是周期函数。62
模型(二) 考虑人工捕获 设表示捕获能力的系数为e,相当于食饵的自然增长率 由r1 降为r1-e,捕食者的死亡率由r2 增为 r2+e? dx1 ? dt = x1[(r1 ? e) ? λ1 x2 ] ? dx ? 2 = x2 [?(r2 + e) + λ2 x1 ] ? dt仍取r1 = 1, λ1 = 0.1, r2 = 0.5, λ2 = 0.02, x1 0) 25, x2 0) 2 ( = ( =设战前捕获能力系数e=0.3, 战争中降为e=0.1, 则战前与战争中的模型分别为:
? dx1 ? dt = x1 (0.7 ? 0.1x2 ) ? dx ? 2 = x2 (?0.8 + 0.02 x1 ) ? ? dt ? x1 (0) = 25, x2 (0) = 2 ? ?
? dx1 ? dt = x1 (0.9 ? 0.1x2 ) ? dx ? 2 = x2 (?0.6 + 0.02 x1 ) ? ? dt ? x1 (0) = 25, x2 (0) = 2 ? ?63
模型求解: 1、分别用m-文件shier.m和shier.m定义上述两个方程 2、建立主程序shark.m, 求解两个方程,并画出两种情况下 鲨鱼数在鱼类总数中所占比例 x2(t)/[x1(t)+x2(t)]0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 5 10 15
实线为战前的鲨 鱼比例,“*”线为 战争中的鲨鱼比例
结论:战争中鲨鱼的比例比战前高! 结论:战争中鲨鱼的比例比战前高!64
思考题: 思考题:讨论资金积累、国民收入、与人口增长的关系 讨论资金积累、国民收入、与人口增长的关系. 与按人口平均资金积累y成正比 (1)若国民平均收入 与按人口平均资金积累 成正比,说 )若国民平均收入x与按人口平均资金积累 成正比, 明仅当总资金积累的相对增长率k大于人口的相对增长率 大于人口的相对增长率r 明仅当总资金积累的相对增长率 大于人口的相对增长率 国民平均收入才是增长的. 时,国民平均收入才是增长的 的示意图, (2)作出 )作出k(x)和r(x)的示意图,分析人口激增会引起什么 和 的示意图 后果. 后果 要求: 要求: 上网收集有关数据;

1、上网收集有关数据; 建立数学模型; 2、建立数学模型; 3、模型求解(理论分析、算法设计、结果分析等); 模型求解(理论分析、算法设计、结果分析等) 结论和建议。 4、结论和建议。65

本文来源:https://www.bwwdw.com/article/ebal.html

Top