数学建模之微分方程模型总结 |
您所在的位置:网站首页 › logistic模型怎么用代码拟合出增长率和人口容量 › 数学建模之微分方程模型总结 |
一、基本概念
1.微分方程:包含连续变化的自变量,未知函数及其变化率(函数的微分或导数)的方程式。 2.使用场合: 1) 研究对象涉及某个过程。 2) 物体随着时间连续变化的规律。 3.例子:人口预测、发射火箭的高度 二、人口增长模型(一)人口指数增长模型 现已知某个地区当年的人口数量为 其中 由上式可以解出 模型缺点:只单纯考虑了人口的增长率,没有考虑自然环境,资源等对人口的影响,这是一种理想的情况,其最终得出的结论是人口将一直无限制增长下去。这显然是与现实情况相悖。 (二)改进的人口增长模型---logistic模型 资源和环境对人口的增长起到了抑制作用,且人口数量越多,这种抑制作用越强,具体表现在对增长率r的抑制上。这样一来,r随着x的增加而下降。 现将r表示成x的函数,即r(x),同时令r(x)=ax+b,为了使a,b有意义,引入一些参数: 1)内禀增长率 r (内禀增长率指在给定的物理和生物的条件下,具有稳定的年龄组配的种群的最大瞬时增长率) :r是理论上x=0时的增长率,即r(0)=r,因此b=r。 2)人口容量 由已知,r(x)=ax+b,且b=r, 由 其中,rx表示人口自身的一个增长趋势,因子 以x轴为横轴, ![]() 从图中可以看出,当 ![]() (一) 问题背景 人体服用一定药物后,血药浓度与人体血液总量有关,一般来说,血液总量约为人体体重的7%--8%,即体重为50--60kg的成年人血液总量大约为为4000ml,因此,血液系统中的血药浓度与药量之间可以相互转换。药物口服后迅速进入胃肠道,再由胃肠道外壁进入血液循环系统,被血液吸收,胃肠道中药物的转移率,即血液的吸收率,一般与胃肠道中的药量成正比,药物在被血液吸收的同时又通过代谢作用由肾脏排出体外,排出率一般与血液中药量成正比,假设血液系统中的血药浓度是均匀的,将血液系统看成一个房室。 (二) 问题描述 一天晚上,有两位家长带着孩子来到医院,你从两位家长口中得知孩子误食了11片治疗哮喘病的氨茶碱片,一般情况下,如果服用过量的氨茶碱片,会有致命的危险。现已知血药浓度>100微克/毫升会出现严重中毒,达到200微克/毫升时会致命。同时通过半衰期来确定血液系统对药物的吸收率与排出率(已知氨茶碱吸收的半衰期为5h,排出的半衰期为6h)。现建立数学模型,判断孩子的血药浓度是否已经达到危险水平。 (三) 模型假设 (1)假设孩子的血液总量为2000ml。 (2) 假设胃肠道中药物向血液系统的转移率与药量x(t)成正比,比例系数为λ(λ>0),总剂量1100mg的药物在t=0瞬间进入胃肠道。 (3) 假设血液系统中药物的排出率与药量y(t)成正比,比例系数记为μ(μ>0),t=0时血液中无药物。 (四)模型建立与求解 根据假设(2),可建立胃肠道中血液系统药量x(t)的微分方程,式子如下: 该式子的含义是单位时间内血液系统药量随时间的变化率等于单位时间内药量的减少量。 对上式进行求解可得 根据假设(3),y(0)=0,药物从胃肠道向血液系统的转移等于血液系统对药物的吸收,y(t)由于吸收作用而增长的速度是λx,由于排出而减少的速度与y(t)本身成正比(μ>0),因此,建立微分方程: 该式子的含义是单位时间内血液系统中药量随时间的变化率等于单位时间内血液系统药量的增加量与单位时间内血液系统药量的排出量的差值。 对上式dy与dt的变化关系式求解可得 为了根据药物排出的半衰期为6h来确定μ,考虑血液中只对药物进行排出的情况,此时y(t)满足 若设在某时刻τ有y(τ)=a,则 又 得 将λ=0.1386和μ=0.1155代入 表明血液系统中的药量y(t)随时间先增后减最终趋于0。 利用matalb软件对 图3 胃肠道中药量x(t)与血液系统中药量y(t) 根据假设1,孩子的血液总量为2000ml,出现严重中毒的血药浓度为100微克/ml,出现致命的血药浓度为200微克/ml。分别相当于血液中药量y达到200mg和400mg。根据图三,药量y在约2h达到200mg,即孩子达到医院时已经出现严重中毒,如果不及时施救,药物将在5h后达到400mg。 四.传染病模型(一) 问题背景:SARS病毒、新冠病毒的传播 (二) 问题描述:假设一个区域内爆发了传染病,这种传染病会造成一定的死亡率,现建立模型判断该传染病的传播趋势。 (三) S-I模型 1.模型假设 (1)假设该地区人群被分为两类: 健康人和患者。 (2)假设健康人和患者在人群中所占比例分别为s(t)和i(t)。 (3) 假设该地区绝对封闭,不考虑迁入和迁出人口。即总人口N不变。 (4) 假设每个患者每天接触的有效人数是常数λ,即接触率,有效接触即为患者与健康人接触后健康人立刻被感染。 2.模型建立与求解 根据上述模型假设,可建立方程 该方程表明了人口总数乘以患者在 对 又 因此,对 解得 根据微分方程和结果可得传染病曲线和预测曲线(见图4,5) ![]() ![]() 从图中可以得出以下结论: (1) 随着时间推移,病人的比例会接近于1。 (2) 当i(t)=0.5时,此时 (3) 3.模型缺点 (1)模型最终结论是病人比例趋近于1,与实际不符。 (2)模型只考虑了健康者被感染,没有考虑感染者被治愈,不合理。 (四)S-I-S模型 1.模型假设 (1)每天被治愈的人的比例为μ。 (2) 病人被治愈后仍有二次感染的可能。 2.模型建立与求解 根据条件建立差分方程 令 解得 令 令t趋于无穷,有 讨论 (1) (2)若 (3)若 (五)S-I-R模型 1.模型假设 (1)设任意时间内,病人,健康者,治好者(治好者后不会再次感染)的比例为s(t),i(t),r(t),且s(t)+i(t)+r(t)=1. (2)病人日接触率为λ,治愈率为μ. (3)人口总数为N,一定程度下保持不变 2.模型建立 3.模型求解 求解结果见图6 ![]() 附录1:求解方程组MATLAB代码: clc,clear lam=0.4; mu=0.1; I=0.4; s=0.5; tspan=[0:1:50]; yo=[I S]; [t,y]=ode45(@(t,y)SIRfun(t,y,lam,mu),tspan,yo); r=1-y(:,1)-Y(:,2); plot(t,y(:,1),t,y(:,2),t,r,'k','Linewidth',2); legend('患病:i(t)','易感者:s(t)','移出者:r(t)','Location'); ylabel('占人口比例'); xlabel('t'); title('SIR模型(ode)'); function dydt=func(t,y,lam,mu) dydt=zeros(2,1); dydt(1)=lam*y(1)*y(2)-mu*y(1); dydt(2)=-lam*y(1)*y(2); end; 附录2:方程 令 求导得 即 两边分离变量积分有 整理得 又 所以 又x(0)=x0 所以 综上,原方程的特解为 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |