资源描述
精选优质文档-倾情为你奉上东南大学数学建模实验报告实验五 习题6.8“饮酒驾车的药物注射模型”求解报告人: 学号: 院:仪器科学与工程 系:测控技术与仪器报告时间:2014.6.5实验五 习题6.8“饮酒驾车的药物注射模型”求解实验目的运用药物注射模型,使用曲线拟合方法,解释饮酒驾车的一些实际问题。实验原理由于酒精不需要进入肠道即可被吸收,且胃对其吸收速率也非常快,本题应采用“快速静脉注射模型”。酒精主要存在于血液中,故本例应计算吸收室的血药浓度c1(t)=A1e-t+B1e-t相关系数可以通过拟合法求解。实验内容国家质量监督检查检疫局2004年5月31日发布了新的车辆驾驶人员血液、呼气酒精含量阀值与检查国家新标准,新标准规定,车辆驾驶人员血液中的酒精含量大于或等于20毫克/百毫升,小于80毫克/百毫升为饮酒驾车(原标准是小于100毫克/百毫升),血液中酒精含量大于或等于80毫克/百毫升为醉就驾车(原标准是大于100毫克/百毫升)。某人在中午12点喝了一瓶啤酒,下午6点检查时符合新的驾车标准,紧接着他在吃晚饭的时候又喝了一瓶啤酒,为了保险起见他呆到凌晨2点才驾车回家,又一次遭遇检查时却被定为饮酒驾车,这让他既懊恼又困惑,为什么喝同样多的酒,两次检查的结果会不一样呢?(1) 某人中午12点喝了一瓶啤酒,下午6点检查合格,晚饭又喝一瓶,次日凌晨2点检查未通过,请对此情况做出解释。(2) 短时间内喝啤酒3瓶多长时间之后才能驾车?(3) 怎样估计血液中的酒精含量在什么时候最高?(4) 如果天天喝酒,是否还能开车?模型的假设与建立假设1:酒精从胃部向体液的转移速率,及向外排除的速率分别与胃部和体液中的酒精浓度成正比。假设2:体液总体积保持不变。假设3:进入胃里的酒精全部扩散到体液里。假设4:酒精并不会从体液反向渗入到胃部。假设5:酒精只会通过血液排出体外。假设6:在较短时间内喝酒的情况下,酒精量是瞬时进入胃里的。假设7:在较长一段时间内喝酒的情况下,酒精量是匀速进入胃里的。假设8:酒精被正常吸收和排出,排除呕吐等一些非正常的排出情况。假设9:忽略人对酒精的敏感度以及对酒精的分解能力存在的个性化差异。假设10:啤酒瓶的容量为600毫升,酒精浓度为5%,其他规格不考虑。吸收过程有:代谢过程酒精量守恒:代入可得:故可列出方程组:(1) 在短时间内饮酒此时有肠胃对酒精的吸收速率v(t)与肠胃中酒精量Y(t)成正比:v(t)=a Y(t)又有v(t)=-dY(t)/dt,方程组可扩充为:(2) 在较长一段时间内饮酒此情况下酒精是均匀进入肠胃的,酒精的改变量等于喝入肠胃的酒精量减去对酒精的呼吸量,即此时方程组可以扩充为:实验代码及执行结果% 题中提供的某人喝了两瓶啤酒后血液酒精浓度随时间变化表t= 0.25; 0.5; 0.75; 1; 1.5; 2; 2.5; 3; 3.5; 4; 4.5; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16 ;c= 30; 68; 75; 82; 84; 77; 70; 68; 58; 51; 50; 41; 38; 35; 28; 25; 18; 15; 12; 10; 7; 7; 4 ;% 根据此变化表拟合求解相关系数ft =fittype(A1*exp(-a*x)+B1*exp(-b*x);options = fitoptions(Method,NonlinearLeastSquares);options.StartPoint = 0 -1000 0 0;cfit = fit(t,c,ft,options);plot( cfit, t, c, o );%得到下图A1=cfit.A1B1=cfit.B1a=cfit.ab=cfit.b由此解得: A1 = 110.55B1 = -151.46a = 0.17949b = 2.8243 第一问求解如下:某人中午12点喝了一瓶啤酒,下午6点检查合格,晚饭又喝一瓶,次日凌晨2点检查未通过,请对此情况做出解释。t11_1=6;c11_1=(A1*exp(-a*t11_1)+B1*exp(-b*t11_1)/2 %下午6点酒精浓度除以2是因为此人只喝了一瓶,浓度减半t11_2=13.2;c11_2=(A1*exp(-a*t11_2)+B1*exp(-b*t11_2)/2 %中午喝酒在次日凌晨2点残留酒精浓度t12=7.2;c12=(A1*exp(-a*t12)+B1*exp(-b*t12)/2 %晚饭喝酒在次日凌晨2点残留酒精浓度c12A=c12+c11_2 %次日凌晨2点总残留酒精浓度由此解得:c11_1 =18.829 %下午6点酒精浓度20,检测不合格结果分析:第二次检测不合格的根本原因在于中午摄入的酒精仍有残余,提高了整体酒精浓度。第二问:短时间内喝啤酒3瓶多长时间之后才能驾车?t2=0.2:0.1:24;for i=1:239c2(i)=(A1*exp(-a*t2(i)+B1*exp(-b*t2(i)*3/2;endplot(t2,c2,t2,20);结果分析:由两图线交点可知,喝啤酒3瓶后约12小时之后血液酒精浓度才会低于20,符合驾车标准。第三问:怎样估计血液中的酒精含量在什么时候最高?估读大概在1.3小时达到最高值。第四问:如果天天喝酒,是否还能开车?t4=0.2:0.1:72;for i=1:length(t4)c41(i)=(A1*exp(-a*t4(i)+B1*exp(-b*t4(i)*1.5;endfor i=121:length(t4)c42(i)=(A1*exp(-a*t4(i-120)+B1*exp(-b*t4(i-120)*1.5;endfor i=241:length(t4)c43(i)=(A1*exp(-a*t4(i-240)+B1*exp(-b*t4(i-240)*1.5;endfor i=361:length(t4)c44(i)=(A1*exp(-a*t4(i-360)+B1*exp(-b*t4(i-360)*1.5;endfor i=481:length(t4)c45(i)=(A1*exp(-a*t4(i-480)+B1*exp(-b*t4(i-480)*1.5;endfor i=1:length(t4)c4A1(i)=c41(i)+c42(i)+c43(i)+c44(i)+c45(i); %每隔12小时饮啤酒3瓶c4A2(i)=c41(i)+c43(i)+c45(i); %每隔24小时饮啤酒3瓶endplot(t4,c4A1,t4,20);plot(t4,c4A2,t4,20);结果分析:由图一可发现,如果某人每隔12小时饮啤酒3 瓶 ,他的血液酒精浓度将永远在20以上,不能驾车。由图二可得,如果某人每隔24小时饮啤酒3瓶,每天在饮酒12后可以开车。模型评价与改进1.综合运用MATLAB软件,准确求解,在运用MATLAB进行数据拟合时,得到了较理想化的曲线。在表示喝三瓶啤酒的人什么时候是饮酒驾车,什么时候是醉酒驾车时,MATLAB准确的做出了函数据图像,使结果一目了然。2.模型稳定性高,适用性强。3.本模型计算步骤清晰,引用了医药动力学的二室模型进行计算,可靠性较高4.从问题出发,分析了应该考虑的各种情况,建立了一般的数学模型,并进行实例验证,从而证明我们建立的数学模型可以较好的解决实际问题。此模型具有极为广泛的应用性,对每一个具体的情况,都可以通过模型求解。模型的缺点1.本文的模型参数仅是依靠题中给出的一组数据拟合求解得出,可能有一点偏差。2.模型为使计算简便,使所得的结果更理想化,忽略了一些次要的因素。如:酒进入身体后随着血液流动,人体对酒精的吸收率是随时间变化的,而本模型是在吸收率恒定的情况下,进行求解的。对于这些问题,由于时间关系本模型还未能更好的研究,有待以后的改进和完善。专心-专注-专业
展开阅读全文