减压理论概述 (by Paul Chapman)

水下广角镜

<p>本文是1995年出版的 “Tauchmedizin” (潜水医学)德文第四版中减压算法部分的摘要。这本书是 Dr A A Buhlmann 教授的著作,其中还包括很多其它内容,由Springer-Verlag公司出版,编号为 ISBN3-540-58970-8。据说在我写作本文的同时(1999年11月)英文译本也准备出版了,这样的话本文就显得多余了。</p><p><br></p><p>所谓算法就是模仿惰性气体行为的方法。在变化的压力环境下呼吸,惰性气体会溶入和释出我们的身体组织。如果模仿身体充/排气过程的方法足够准确,就可以被用于制定潜水计划(或在其它压力环境下使用)以避免潜水减压病。重要的是我们必须意识到从某种意义上说这个模型完全是主观杜撰出来的,并不真正代表实际发生的物理过程,它只是模仿真实结果的数学模型。本文重点讨论算法问题,而不讨论减压生理学,仅涉及一些跟算法有关的生理学原理。<b></b><i></i><u></u><sub></sub><sup></sup><strike></strike><br></p> <b>背景</b> 苏格兰科学家 John ScottHaldane(1860-1936)被公认为是现代减压理论的奠基人。十九世纪Haldane用山羊做试验试图解决潜水病的问题,在桥梁和隧道施工中有很多工人得了这种病。研究发现工人在压力环境下呼吸时气体会溶入身体组织,当这些气体释放出来在身体中形成气泡的时候,就得了“沉箱病”,也就是我们现在说的潜水减压病或者叫“气栓症”。Haldane 的研究工作将身体作为一组并联的组织,就是说在呼吸的时候身体各组织同时受到环境压力的影响而不是每种组织单独做出反应,不考虑各组织之间气体转移问题。这一原理至今仍在沿用并且是很多现有减压模型的基础,但不是所有减压模型都使用这一原理。例如,英国BSub Aqua ClubSAC-88潜水表所用的模型就是单一模块式组织,气体沿单一模块式组织溶入身体;而加拿大的DCIEM模型使用延伸式组织结构,串联传输-首先一种组织受到环境压力的影响,然后气体由一种组织转移到另一种组织。Haldane 还注意到身体可以承受一定量的超压气体而不会产生不良反应。沉箱工人在2个大气压力(10米/33英尺)下工作没有任何问题,无论他们工作多长时间。气体溶入人体组织和超压承受能力这2点认识构成了Haldane研究工作的基础。难点在于准确模仿气体在人体中的运动和确定可以承受的超压范围。实际上Haldane相当成功地解决了这些问题。在随后的年代里人们继续研究和发展Haldane的这些认识。二十世纪60年代中期美国海军医疗机构的RobertWorkman上校再度深入研究了人体组织可承受的超压问题,不管氧气成份,只考虑混合气体中的惰性气体,例如氮气和氦气。Workman 的最大可承受超压值(也叫M值)随深度和组织类型而变化,比 Haldane 的更复杂。同一时期从事类似研究的还有在苏黎士大学医院工作的AlbertBuhlmann 教授。Buhlmann 的研究工作持续了30年,其研究成果首次于1983年以书的形式出版,书名就叫《减压》- Dekompressionskrankheit,英文版于1984年出版。该书首次向广大读者比较全面地说明了怎样计算减压,因此Buhlmann 的工作成为很多潜水减压表格,潜水电脑,和台式电脑计算减压程序的基础。这本书随后又出了3个版本,最后一版是1995年,本文就是以最后一版为基础。 <b>基本原理</b> 由于灌注(血液流动)的差异,扩散(气体从一个地方到另一个地方的传输率)的差异,以及其它因素的差异,吸入的惰性气体会以不同的速度溶入到身体不同的组织中去。扩散率高的组织一般供血充足,气体加载的速度更快。血液,主要器官,中枢神经系统都属于这一类,称为“快组织”。其它组织的气体加载速度要慢一些。比较慢的组织包括肌肉,皮肤,脂肪和骨骼。很多组织通过血液循环几乎立即就受到惰性气体的高压影响,而其它一些组织要等气体扩散通过周围的组织才能受到影响。从这个意义上来说身体组织即是并行的也是串行的。虽然在压力增加的时候快组织的惰性气体加载速度快(充气),但在压力下降的时候释放气体的速度也快(排气)。组织充气和排气过程被认为是按照半时 (half-times) 原理进行的。很多自然现象都是按照半时原理来描述,包括放射性衰退。当一种组织受到高压惰性气体影响的时候,气体就会逐渐溶入那个组织。经过“半时”以后,组织中气压会达到外界气压的一半。经过第二个“半时”,组织中气压就会再增加四分之一达到外界气压的四分之三,既75%。经过第三个“半时”,再增加12.5%,达到87.5%,依此类推……用这个方法组织中的气压永远达不到和外界气压相同的水平,但经过6个“半时”以后已经接近于平衡,这时我们说该组织饱和了。在这一点上组织中气体的溶入和释放基本相等,组织中总的气体加载情况不会再有变化。如果压力再增加(潜水员再往深潜),组织会再次充气。如果压力减小,组织也会同样按照半时原理排气。6个“半时”之后,组织中的气压就会跟外界平衡。每种组织的“半时”是不一样的,每种气体的“半时”也不一样,因为它们的扩散速率不同。对于真实的人体组织来说,氮气的“半时”从数秒钟(血液)到数小时不等。氦气的“半时”被认为比氮气的“半时”快大约2.65倍,因为氦气扩散更快。 如果组织承受的压力下降过快,气体就会来不及沿扩散路径,通过血流,返回肺部而在组织中形成气泡引发各种各样的潜水减压病症状。问题是压降多少算是过快?试验证明像血液这样的快组织比慢组织能承受更大的压降而不会形成气泡。 Buhlmann 在制定他的算法的时候其中一个难点就是要用数学公式的形式把这些差额进行量化以便可以用来计算减压剖面图。一会我们来谈他的解决方案。 <br> 在ZH-L16算法中,Buhlmann将人体分为16种“组织”并且给每一种组织确定了“半时”,从几分钟到几小时。不要忘记这些并不代表任何特定的人体真实组织,这些半时也只是代表性的近似值。它们并不代表实际的组织,也不代表任何特定组织的实际半时。因此把这16个分类称为16种组织确实有些混乱,现在我们把这些分类改称为“舱”。Buhlmann 把他的算法命名为ZH-L16,ZH代表Zurich(苏黎士),L代表limits(界限),16代表16组M-值。 在压力条件下,每个舱的充气过程按照给定的半时进行,因此在任何时间点上都可以计算出每个舱中惰性气体的压力。有一个标准的公式可以进行半时计算,Buhlmann在这个公式上又增加了加压之前和加压之后2个常数使之可以在任何加压时间点上计算任何一个舱的惰性气体压力。以下是Tauchmedizin 这本书中给出的公式,常数的名称有所改变以便于英文理解,但是公式是一样的。 这里: P<b>begin</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;加压之前舱中惰性气体压力,以Bar为单位 <br>P<b>comp</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;加压之后舱中惰性气体压力,以Bar为单位 <br>P<b>gas</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;呼吸的混合气体中惰性气体的压力,以Bar为单位 <br>te &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; 加压时间,以分钟为单位 <br>tht&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;舱半时,以分钟为单位 <br> 举例:潜水员从水面下潜到30米深处并且在那里呆了10分钟。<br><br> 所用气体的氮分压 (Pgas) 是4 x 0.79= 3.16 bar。我们用5号舱来说明。5号舱氮气的半时是27分钟。5号舱水面氮气分压 (Pbegin) 是 0.79,假设潜水员不是重复潜水,也没有经过高度变化。加压时间 (te) 是10分钟。将这些值代入公式就得到以下结果:<br> 先算括号内的部分: <h3 style="text-align: center">P<b>comp</b> = 0.79 + 2.37 x 0.226</h3> 先乘除,后加减: <h3 style="text-align: center">P<b>comp</b> = 1.33</h3> 由此得出潜水员5号舱的氮分压为1.33bar。实际上潜水员不可能一下就潜到30米,在下潜过程当中也会充气。为了得到下潜过程中充入的这部分气压,可以取下潜过程中的平均压力代入公式再计算一遍,也可以在下潜过程当中不断地代入新的数据进行多次运算,用电脑很容易做到这一点。<br><br> 当然对其它舱也可以进行这样的计算,只要知道“半时”(见表1)就行。同样电脑最适合做这样的工作。这个公式妙就妙在它的通用性上。它全部使用绝对压力(而不是深度)并且使用吸入惰性气体的实际分压,这样我们就可以升水或者下潜到任意压力,呼吸不同混合比例的气体,重复潜水,或进行其它我们能想到的潜水活动。<br><br> 现在我们可以在任何时间知道任何一个舱的惰性气体压力,但是我们还需要知道升水到什么深度(或者压力)是安全的。前面我们提过,每个舱的情况都不一样,快一些的舱比慢一些的舱可以承受更大的压降。Buhlmann 认为各舱能够承受多大压降而不形成气泡与各舱的半时是数学关系。他首先从“半时”中推导出2个因子,他称为 “a” 和 ”b”,(这样每个舱就有了自己的一对a b值),然后再用这些因子计算出升水可以到达的安全深度。a值和b值由以下公式得出:<br> 这里 tht 是舱的半时。<br><br>例如5号舱的半时为27分钟,那么 <br> 而 记住各种气体的半时都不一样,每一种气体都有自己的一套半时,a值和b值(见表1)。<br><br> 有了a值和b值就可以用一个公式计算出每个舱升水可以到达的安全深度。下面是 Buhlmann 所用的公式:<br> P<b>amb.tol </b>= (P<b>comp</b> - a) x b P<b>comp</b> &nbsp; &nbsp;&nbsp; 舱内惰性气体压力 <br>P<b>amb.tol</b>&nbsp; 升水可以到达的安全压力 <br>a and b&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;舱内惰性气体的a值和b值 <br> 在上例中,5号舱加压至4 bar (30米深)并保持了10分钟,该舱氮气压力为1.33 bar,a值为0.6667,b值为0.8125。将这些数据代入以上公式(先做括号内的减法运算): P<b>amb.tol</b> = ( 1.33 - 0.6667 ) x 0.8125 = 0.54 bar 海平面的压力约为1bar,以上运算结果显示潜水员可以上升到低于海平面的压力(也就是高于海平面)。换句话说就是根据模型计算,使用空气潜水的时候在30米处(4bar)停留10分钟后可以直接升水到水面,不会在5号舱形成气泡。参照普通潜水减压表来看,这正是一次我们所希望的“免减压”潜水!<br><br> 如果在30米处停留50分钟,5号舱的氮分压就成了2.5 bar(由第一个公式得出),这时候的安全压降为1.49bar,相当于5米深的压力,这就是在30米处停留50分钟后潜水员所能升至的安全深度。<br><br> 使用同样的深度,时间和方法对所有其它舱进行一遍预算,其结果各不相同,比如:<br><br>3号舱-半时12.5分钟,a=0.8618, b=0.7222<br> P<b>comp</b> = 3.01 bar<br>P<b>amb.tol</b> = ( 3.01 - 0.8618 ) x 0.7222 = 1.55 bar (或5.5米深)<br> 10号舱-半时164分钟, a=0.3789, b=0.9222 P<b>comp</b> = 1.29 bar<br>P<b>amb.tol</b> = ( 1.29 - 0.3798 ) x 0.9222 = 0.84 bar (仍在水面之上) 对所有各舱计算之后,潜水员升水所能到达的深度不能浅于安全深度最深的那个舱,本例中就是5.5米。这是减压的上限,受相关舱(3号舱)控制。总的来说,快一些的那些舱控制深度不大时间不长的潜水活动。深度不大但时间长或者时间短深度大的潜水活动受中间那些舱控制,而大深度长时间潜水受比较慢的那些舱控制。在减压过程中控制舱会发生转移。例如一次短时间大深度潜水,升水初期上限由比较快的舱决定,但是由于这些舱排气比较快,控制权会向慢一些的中间舱转移。可以想像,对一系列不同深度,不同时间的潜水活动进行气体饱和计算是多么复杂的事情。尽管数学运算比较简单,如上所述,但是由于要对所有各舱进行反复计算并且控制舱和相关的升水上限不断变换,即使对于电脑来说工作量也不轻。<br><br> 如果为30米深50分钟的潜水做一次实际的减压计划,潜水员虽然可以直接升水到5.5米的上限做减压,但通常选择在中间做几次阶段性的减压停留,比如每3米做一次,最后到达上限以下最近的一个地方(3米的倍数),本例中就是6米。在这一点上有些舱内的惰性气体压力高于吸入的混合气体中惰性气体的压力,于是这些舱开始排气。而另外一些舱内的惰性气体压力还低于吸入的混合气体中惰性气体的压力,所以有些舱仍然还在充气。再次进行半时计算。公式是一样的,只是将升水时的压降考虑在内。升水过程中,吸入的惰性气体分压 (Pgas) 在下降,而舱内压力 (Pbegin) 一时还跟不上,因此公式中 [ Pgas – Pbegin ] 部分运算结果就变成了负数。不要忘记,气体扩散的驱动力是惰性气体舱内压力和环境压力之差(至少在模型中是这样)。水深6米时空气中的氮分压PPN2是1.26bar。在本例中3号舱和5号舱的氮气压力分别为3.01 bar和1.33 bar,都比1.26 bar 的环境氮分压 PPN2 高。因此在这次减压停留时,3号舱和5号舱开始排气。然而此时10号舱的氮分压 PPN2 才0.29bar。这个舱在6米深处还继续充气,尽管充气的速度比以前慢因为环境氮分压PPN2比在30米深的时候要低。随着各舱排气,减压上限逐渐变浅,最后到达我们选择的下一个停留点(3米处)。这时潜水员上升到这个深度继续减压直到所有舱的 Pamb.tol 都小于或等于1就可以浮出水面了。<br><br> 这就是全部运算过程。回到水面以后,计算继续进行(各舱还在排气),要在两次潜水之间留出一定的水面间隔时间,而当再次下潜开始新一轮潜水的时候,有些舱的气体还没有排干净。这部分气体被自动加到新一轮潜水的数据中参加运算,因此会对对减压运算结果产生影响。飞行或者海拔高度增加都相当于在大气中升水。计算方法相同,只是大气中几千米的压力变化才相当于水中几米的压力变化。如果知道飞机机舱的压力(比如说8000英尺/2400米时的压力)就可以用这个值作为减压上限的标准,继续计算直到减压上限达到这个值就可以乘飞机飞行了。由于公式中全部使用惰性气体分压进行运算,因此这个算法可以兼容Nitrox,Trimix(氧、氮、氦混合气体)或其它减压用的气体(通常惰性气体的比例要低一些),只要知道这些气体的半时,a值和b值就可以。多种惰性气体混合时,a值和b值要按各气体的比例计算。<br><br><b>针对真实世界的改进</b><br><br> 注意,以上所述全是针对ZH-L16模型而言,并非针对人体而言。Buhlmann 虽然进行了大量实验来验证ZH-L16算法,但用的惰性气体只有氮气。氦气的半时源自于氮气的半时并且是基于一种推测,在这个推测中只有气体的扩散性起作用。由于a值和b值又是根据半时计算出来的,因此这2项数据也属于推测。悲哀的是 Buhlmann 还没有来得及对他的氦气理论数据进行广泛实验就去世了。现在看起来Buhlmann 的氦气数据似乎过于保守,多年来人们一直认为氦气的减压时间要比氮气长就是因为这个公式是这样说的。实际上总的来说氦气比氮气更容易减压,更少溶入人体组织。快速扩散的气体更容易形成气泡,因此不但需要控制上升速率而且开始减压的深度要比氮气更大。好处是在浅水区的停留时间比较短从而减少了减压总时间。<br><br> 很多因素会影响惰性气体的吸收,消除,以及患潜水减压病的可能性。有些因素我们知道,有些因素我们怀疑,还有些因素我们不知道。我们知道或者怀疑的因素有以下几个:<br> <h3 style="text-align: center"><b>表 1 - ZH-L16A 半时, “a”值,“b”值(氮气、氦气)</b></h3> <h3 style="text-align: center"><b>表 2 -ZH-L8 ADT 的半时及对应的身体组织</b></h3>