文档库 最新最全的文档下载
当前位置:文档库 › 酒精含量

酒精含量

酒精含量
酒精含量

酒后血液中酒精含量的数学模型

摘要:本文针对酒后驾车人员血液中酒精含量是否符合驾车标准这一问题,详细分析了人体对酒精的吸收,以及吸收后的分解过程。并建立了血液中酒精含量随时间变化的数学模型,以便了解酒后不同时段,血液中的酒精含量有什么规律。对于酒后不同时段,根据数学模型来计算出血液中的酒精含量,针对《车辆驾驶人员血液、呼吸酒精含量阈值与检验》的国家标准,来给出酒后人员经过多长时间,才符合驾车标准。

本文参考药物在体内的分解模型(房室模型),把胃看成是酒精吸收的一个中间容器(吸收室),考虑胃与体液(血液看成是体液的一部分)之间的酒精的渗透关系,主要考虑胃内酒精向体液的渗透,以及体液中酒精的分解,建立体液中酒精含量的微分方程。再通过体液中酒精含量与浓度之间的关系,转换成关于体液中酒精浓度的微分方程。针对短时间内快速饮酒的情况(在很短的时间内所饮酒全部注入吸收室),如果我们记吸收室(胃)内酒精量为)(0t x ,中心室(体液)内的酒精量为)(1t x ,由吸收室到中心室的酒精转移率系数为01k ,而由吸收室分解排放的酒精转移系数为k 。则我们可以建立微分方程如下:

)(1t x

=01k )(0t x -k )(1t x 此微分方程说明:在一个很小的时间段内,中心室(体液)中酒精的改变量可由两部分来决定,一部分是由吸收室转移得到,一部分是分解排除。然后根据边界条件,以及浓度与酒精量和酒精体积的关系

1x =1c 1v

其中,1c 为中心室的酒精浓度,1v 为中心室的体积,解出微分方程的解析解,形式如:

)(1t c =)()

(010101t k kt e e k k k A ----, A 与吸入酒精量及体重有关。用此解去拟和试验数据,得到参数01k ,k 的值。这样就得到了快速饮酒时体液酒精浓度与时间的函数关系。

接下来我们又根据此模型对长时间饮酒的情况做了分析,把饮酒时间适当分割,每个时间段看成是快速饮入一定量的酒,用多个快速饮酒去模拟长时间饮酒的情况,进而得到了长时间饮酒时血液酒精浓度随时间变化的函数关系。

1、 问题的提出:

据报载,2003年全国交通事故死亡人数为10.4372万,其中因饮酒驾车造成的占有相当比例。

针对这种严重的交通情况,国家质量监督检验检疫局2004年5月31日发布了新的《车辆驾驶人员血液、呼气酒精含量阈值与检验》国家标准,新标准规定,车辆驾驶人员血液中的酒精含量大于或等于20毫克/百毫升,小于80毫克/百毫升为饮酒驾车(原标准是小于100毫克/百毫升),血液中的酒精含量大于或等于80毫克/百毫升为醉酒驾车(原标准是大于或等于100毫克/百毫升)。

大李在中午12点喝了一瓶啤酒,下午6点检查时符合新的驾车标准,紧接着他在吃晚饭时又喝了一瓶啤酒,为了保险起见他呆到凌晨2点才驾车回家,又一次遭遇检查时被定为饮酒驾车,这让他既懊恼又困惑,为什么喝同样多的酒,两次检查结果会不一样呢?

我们将参考下面给出的数据,建立饮酒后血液中酒精含量的数学模型,并讨论以下问题:

1、对大李碰到的情况做出解释;

2、在3瓶啤酒或半斤低度白酒后多长时间内驾车就会违反上述标准,分别对以下情

况进行分析:

1)酒在很短时间内喝的;

2)酒在较长一段时间(比如2小时)内喝的。

3、怎样估计血液中的酒精含量在什么时间最高。

4、根据模型论证:如果天天喝酒,是否还能开车?

参考数据

1.人的体液占人的体重的65%至70%,其中血液只占体重的7%左右;而药物(包括酒精)在血液中的含量与在体液中的含量大体是一样的。

2.体重约70kg的某人在短时间内喝下2瓶啤酒后,隔一定时间测量他的血液中的

2、问题的分析

考虑饮酒后酒精在人体内的变化情况,酒精被饮入体内首先是进入胃中,然后再随着血液循环进入体液,然后再由体液分解排出体外。所以我们可以对问题进行如下化简:在酒精吸收和分解的过程中,我们考虑酒精在进入胃的过程中没有损失,而胃内的酒精只是在向体液中渗透,并不考虑体液中的酒精反向渗透回胃内。因为酒精在体液中的浓度和酒精在血液中的浓度大体上是一样的,所以我们不把血液和体液分开来考虑,而把它们看成是一个整体。所以我们建立模型时就把胃看成了一个空间,把血液和体液整体看成了一个空间,而这两个空间的关系是酒精从胃渗透向体液,而体液中的酒精只是通过分解排出。

(1)对问题一的分析

首次饮酒后经过了六个小时后再次饮酒,这个时候血液中的酒精浓度计算应该是,首次饮酒在血液中的残留继续分解,而第二次饮酒还要经过一个吸收和分解的过程,所以再过八小时测出的血液中的酒精浓度和首次饮酒也有关系。

(2)对问题二的分析

在短时间喝一定量的酒,经过模型可直接求解出各个时刻的血液酒精浓度,而对于长时间饮酒,我们可以认为酒是匀速饮入,我们对时间进行分割,然后在每个小时间段内看成是快速饮入定量的酒。在每个小时间段内用模型模拟。

(3)对问题三的分析

无论是短时间饮酒,还是长时间饮酒,我们都可以根据模型很容易求出血液中酒精的含量在何时最大。

3、模型的假设

这个问题的本身尚有一些不确定的因素,比如说身体素质就会影响人对酒精的吸收与分解。为了使问题简化,我们给出了如下的假设:

(1) 酒精从胃部向体液的转移速率,及向外排除的速率分别与胃部和体液中的

酒精浓度成正比。

(2) 体液总体积保持不变。

(3) 酒精只是通过胃部进入体液。

(4) 酒精并不会从体液反向渗入到胃部。

(5) 血液和其它体液看成一个整体。

(6) 酒精只会通过体液排出体外。

4、符号的说明:

)(0t x 吸收室(胃)内酒精量 )(1t x 中心室(体液)内的酒精量

01k 由吸收室到中心室的酒精转移率系数 k 由吸收室分解排放的酒精转移系数 )(1t c 体液中酒精的浓度 1v 体液的体积 0D 饮入酒精量0f 酒精由吸收室转移到中心室的速率

5、模型建立

基于上述对问题的讨论,对于短时间内饮入酒的情况我们可以建立下述模型

)(0t x

=-01k )(0t x )(0t x =0D 解此微分方程得,)(0t x =0D t k e 01-(1), 所以可知,)(0t f =01k 0D t k e 01-。

对中心室创建微分方程,可得,

)(1t x

=01k )(0t x -k )(1t x

考虑到,1x =1c 1v 及(1) )(1t c =t k e v k D 0110101--)(1t kc )0(1c =0

解此微分方程得 )(1t c =)()

(01011010t k kt e e k k v k D ---- (01k ≠k ) 接下来,我们通过题中所给实验数据来拟和求出两个系数,01k ,k

每瓶啤酒的体积为640毫升,啤酒的酒精度约为4%,酒精的密度为800毫克/毫升,所以可以计算得到每瓶啤酒中含有酒精为20480毫克。体液约占体重的65%-70%,体液的密度约为1.05510?毫克/百毫升。可以计算70公斤的人的体液约为467百毫升。所以对于题中实验数据,可以确定0D (代表饮入的酒精量,单位为毫克)等于40960毫克,1v (人体的体液的体积,单位为百毫升)467百毫升。又体液中酒精浓度和血液中酒精浓度相同。

用函数)(1t c =)()

(01011010t k kt e e k k v k D ---- 拟和题中实验数据得图形如下:

01k =2.6853 k =0.1474

所以得到拟和函数:)(1t c =)(92.8029 1474.06853.2t t e e --- 。y 轴表示酒精血液浓度,x 表示时间。

6、模型求解

下面对书中的问题用模型做出解答

(1)首先给出快速饮酒一瓶时血液中酒精浓度的函数)(1t c =)(46.4014 1474.06853.2t t e e --- 做出图象:

大李中午12点饮酒一瓶啤酒经过六小时,血液中酒精浓度19.1620mg/dml ,所以六小时后大李通过了检查。

大李凌晨2点再一次检查时血液中的酒精含量应为两部分组成,第一部分是中午12点喝的酒经过了14个小时后在血液中的残量,应为5.8927 mg/dml ,它属于一直分解后的残量,第二部分是晚上6点又喝了一瓶酒后经过吸收和分解的过程,在过了八小时后在血液中的浓度为:14.2695 mg/dml ,所以血液中的酒精总浓度为20.1622 mg/dml ,大于20 mg/dml ,所以没通过检查。(以上数据均为通过模型精确计算得到)。

(2)(一),给出快速喝进3瓶啤酒后的血液酒精浓度随时间变化的函数:)(1t c =)(139.2042 1474.06853.2t t e e ---,图象为:

经过计算,在饮酒13.1629小时内血液中酒精浓度大于20mg/dml,违反标准。

在饮酒3.7574小时内血液中酒精浓度大于80mg/dml,属于醉酒驾车。

(二),如果酒是在较长一段时间内(2小时)喝的,我们可以认为酒是匀速饮入,我们对时间进行分割,然后在每个小时间段内看成是快速饮入定量的酒。在每个小时间段内用模型模拟,如果我们把时间分为6等份,也就是每20分喝半瓶啤酒,每次饮酒看成是快速饮酒,用快速饮酒模型分别模拟得图象:(下图:3瓶啤酒六次速饮各曲线)

在每个时间点把每个函数值相加就得到在这一时刻,血液中酒精的浓度,经过计算在14.0113小时内血液中酒精浓度大于20mg/dml.属于违规。

在饮酒4.6051小时内血液中酒精浓度大于80mg/dml,属于醉酒驾车。

(3)对于快速饮酒,无论饮酒量为多少(如下图),酒会在很短的时间内进入到胃中,这时胃中的酒精浓度会短时间内达到很高,这时酒精高速渗透向体液,随着时间的增加,体液中排出酒的速度会增加,而当体液排出酒精的速度等于胃向体液渗透的速度时,体液中的酒精浓度达到最大,对于快速饮酒,会很快达到最大。经过计算,快速饮1或2或3瓶酒时,体液中酒精浓度达到最大的时刻均为:1.1015小时。

对于在较长时间内喝完酒,因为酒可看成是匀速饮入,酒精渗入体液的速度相对增加较慢,相对于快速饮酒,血液中酒精浓度达到最大值的时间要靠后,经过计算对于上述2小时喝三瓶酒达到最大的时间为:2.3416小时。

(4)根据对上述求解的分析,得出以下结论:(一)每天不论短时间内还是长时间内饮过量的酒,就不能在很长一个时间中恢复标准,题(2)中的两个数据:在饮酒13.1629小时内血液中酒精浓度大于20mg/dml,14.0113小时内血液中酒精浓度大于20mg/dml,这样就不能驾驶。(二)即使长时间内均匀时间段中喝少量的酒,人体血液中的酒精的含量也会积少成多,超过标准。题(2)中的第二模型很直观的反映出。因此,我们要做到适量,适时的喝酒。

(5)给想喝酒的司机一点建议

酒后驾车是导致交通事故的重要危险因素之一。目前我国在饮酒与交通安全方面的形式十分严峻,据我国公安部统计,近10年来因饮酒所导致的道路交通事故,人员伤亡及经济损失仍逐年增加,2002年因饮酒所导致的道路事故数、死亡人数、受伤人数和经济损失分别达到1996年的262.3%,184.4%,325.3%和144.3%。

但是酒作为人类社会交往活动的一种载体与介质,在人类文化和精神生活中的多样性发展过程中扮演了重要角色,丰富了人类的物质和精神生活。但它同时也带来了一些不良的后果,而车与酒的“完美结合”,似乎更使事故的发生率成倍的增加。

或许让驾车的人滴酒不沾那是不可能的,那么想喝点酒的司机朋友们千万要注意几个问题。

首先,不要天天,餐餐不离酒。因为酒精在人体体液中的吸收和分解是受时间影响的。你若6小时喝一次,你每天喝的酒中的酒精依然有一部分残留在体液中,那么到一定时间,你体液中的酒精的浓度自然超过20毫克/百毫升,那样的话就违反的国家标准。

其次不饮急酒,不饮空腹酒,饮酒要有下酒菜,最好先吃一些主食,边吃边饮。这样可以延续酒精的吸收,减少对胃粘膜的过度刺激。

再则,若在中午的时候喝了一定量的酒,大概一瓶以上,那样的话,下午出车最好应在喝完酒两小时后,因为酒精在体液中的浓度达到最高是在喝完一个半小时左右。否则

极易出事。

除此之外,在各种应酬中还应掌握几个原则:饮酒要适量,以舒服为原则,不能逞英雄;身体不适,情绪不良尽量避免饮酒,以免加重症状。

“醉里从为客,诗成觉有神”,“俯仰各有志,得酒诗自成”,酒不仅是一种物质的存在,也是一种文化的象征。酒是一个变化多端精灵,它既缠绵如梦萦,柔软如棉缎,但它也让人觉得狠毒如恶魔,让人沉到最深渊最底处。

司机一滴泪,亲人两行泪!司机朋友们,为了你的安全,他人的安全,更为了让你的亲人放心,请你们健康的饮酒!安全的驾车!

7、模型的评价:

①.利用MATLAB数学软件进行编程求解,所得结果误差小,数据准确合理。

②.模型通过严密的理论推导,能够比较准确地反映实际情况。

③.对各种模拟给出了直观的图形,便于更好的分析和解决问题。

④.在建立模型的时候,有些假设有点理想化。

参考文献:

[1].姜启源,数学模型(第133页到137页),北京,高等教育出版社,1993年;

[2].满晓宇,战胜MATLAB必做练习50题(第86页到89页),北京,北京大学出版

社,2001年;

[3].精锐创作组科学运算完整解决方案(第79页到90页),北京,人民邮电出版

社,2001年;

[4].李淳廉,酒精如何被人体吸收,https://www.wendangku.net/doc/8210685967.html, 2004-9-18

附件:

以下是本文用到的MATLAB编程的一些程序

程序一(拟和题中所给试验数据的程序, 该程序用来拟和短时间内喝2瓶啤酒的图象) nihe.m

xdata=[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]; ydata=[30 68 75 82 82 77 68 68 58 51 50 41 38 35 28 25 18 15 12 10 7 7 4 ]; x = lsqcurvefit(@myfun7,[1 2],xdata, ydata)

xi=(0.25:0.05:16);

zi= (40960*x(2)./(467*(x(2)-x(1)))).*(exp(-x(1).*xi)-exp(-x(2).*xi)); hold on

plot(xi,zi,'r')

grid on

plot(xdata,ydata,’*’)

myfan7.m

function F = myfun7(x,xdata)

F = (40960*x(2)./(467.*(x(2)-x(1)))).*(exp(-x(1).*xdata)-exp(-x(2).*xdata));

0246810121416

010

20

30

40

50

60

70

80

90

0246810121416

020

40

60

80

100

120

140

0246810121416

010

20

30

40

50

60

70

80

90

相关文档