2 Saturation and desaturation of tissues

3 The Model ZH-L16

4 A short commentary on decompression tables

5 Flying after diving

6 The limits of the model

7 Breathing nitrox instead of air

7.1 maximum operation depth (MOD)

7.2 optimal oxygen proportion in the breathing mixture (Best Mix)

7.3 equivalent air depth (EAD)

8 Operation of dive computers - an algorithmic survey

8.1 an overview

8.2 calculation of the inert gas content

8.3 determination of the maximum tolerable supersaturation

9 A short note on calculation of air consumption

10 A few closing comments

11 Literature, links

Air consists of approximately 21% oxygen (O_{2}) and 78% nitrogen (N_{2}) by
volume. The remaining 1% consists of carbon monoxide (CO), carbon dioxide (CO_{2}),
various nitrogen oxides and noble gases (Helium, Neon, Argon). Except for oxygen,
all of these components are relatively non-reactive - practically they do not interact
chemically with other molecules - and are thus grouped as "inert gases". When N_{2}
is mentioned below, all of the inert gases should be meant, strictly speaking.
However, since the proportion of the remaining gases (CO, CO_{2}, nitrogen oxides,
noble gases) in air is so slight, they are of no practical importance. Therefore
saturation calculations allways simply use a volume of 79% N_{2}.

When diving with other gas mixtures, such as Trimix (O_{2}, N_{2},
Helium) or Heliox (O_{2}, Helium) instead of compressed air, the Helium naturally
has to be entered into the calculation!

The Swiss medical doctor Albert A. Bühlmann developed the Model
ZH-L16 to calculate saturation processes in the human body, and published his work
in the book "Tauchmedizin", - *Barotrauma, Gasembolie, Dekompression,
Dekompressionskrankheit, Dekompressionscomputer* -, published by
Springer Verlag,
- a reworked and expanded edition appeared in 1995, an English translation of the 4th edition
of the book is in preparation for publication. In contrast to the older model which specified
16 tissue compartments, the newer Model ZH-L8ADT uses only 8, but takes into consideration the
effects of temperature and work (breathing frequency) under water, as well as microbubble
formation. All Aladin dive computers currently produced by the firm Uwatec utilize this new
ZH-L8ADT model. Unfortunately, the Model
ZH-L8ADT is described only very superficially in the latest edition of "Tauchmedizin",
without any quantification of parameters! :-( This refusal to reveal in detail the operating
principles of dive computers is a trend observable with all manufacturers known to us, and is
a regretable development for diving safety, as it prevents discussion and independent
verification of their effectiveness.

Let's say we've been at sea level for several days already - say in Northern Italy. :-) The different tissues of our body will then be saturated at pressure of one atmosphere or 1 bar (fluctuations of a few millibars are insignificant here). This means absorption and off-gassing of nitrogen is balanced. When we dive, the ambient pressure rises sharply - much more than if we descended from the mountains into a valley - by roughly one atmosphere per 10m (33 feet) of depth.

As soon as we submerge, our tissues become undersaturated in relation to nitrogen. Since we're breathing at ambient pressure, a partial pressure difference exists between the nitrogen component of the air in our lungs, and that in our tissues. Therefore more nitrogen is absorbed from the blood into the tissues than is released into the blood to be exhaled. This is how the tissues achieve saturation. The speed of saturation of a given tissue is proportionate to the size of its blood supply.

*
The inert gases are physically dissolved in the blood and the tissues. The amount of
absorption at a given pressure varies with temperature, with colder temperature increasing
the amount of absorption. Nitrogen is absorbed more readily by fat than by water and blood.
*

*
Bodily circulation is divided into several parallel systems. The blood supply of the
various tissues and organs varies considerably, depending on their weight and working
status. The blood supply of the brain, spine, kidneys and liver are constant, and are
not affected by muscular activity. However, blood supply to the working muscles is
increased sharply (together with nitrogen absorption) with expansion of the blood vessels.
At the same time, circulation of the skin and the underlying fatty tissues increases in
order to better dissipate the resulting heat. But since water is a much better heat
conductor than air, this last mechanism is hardly a factor in diving. Skin circulation
may even be lower under water than in high air temperatures on land.
*

If we were to stay at depth long enough (for example doing saturation diving on an off-shore rig), all of our tissues would eventually reach saturation relative to the ambient pressure.

Then, when we surface, everything is reversed - the ambient pressure is reduced, and
our tissues are now supersaturated with nitrogen. Consequently (since the partial
pressure of N_{2} in the lungs is now lower than that in the tissues) nitrogen
is released from the blood into the lungs. If we've followed procedure in our ascent,
our tissues will be properly desaturated after a certain period of time at the surface.

Problems arise when the ascent is too rapid for the nitrogen to off-gas sufficiently. Then, besides the very small microbubbles (which are practically unavoidable) larger bubbles can be formed, which can lodge in the joints, clog arteries, or pinch nerves in the spine. This is when the familiar symptoms of decompression sickness arise.

The
process of saturation and desaturation during a dive
can be calculated and displayed graphically with the program
TAUSIM.

The Swiss medical doctor Albert A. Bühlmann has established, by means of many hyperbaric chamber experiments with volunteers, how much supersaturation the individual tissues (compartments) can tolerate without injury. He expresses the relationship through the following equation:

| (1) |

or

| (2) |

p_{amb. tol.} - the ambient pressure tolerated by the tissue

p_{t.} i.g. - the pressure of the inert gas in the tissue

p_{t. tol.} i.g. - tolerated (excess)pressure of the inert gases in the tissues

p_{amb} - current ambient pressure

a, b - parameters of the model ZH-L16 for each tissue

*a* depends on the measure unit of pressure used, while *b* lacks dimension, and represents
the steepness of the relationship between the ambient pressure p_{amb.} and the
pressure of inert gas in the tissue p_{t.} i.g. The first equation shows which
lower ambient pressure p_{amb. tol.} will still be tolerated at the actual pressure
of inert gas in the tissues p_{t.} i.g. The lower equation shows which level of
supersaturation p_{t. tol.} i.g. can be tolerated at a given ambient pressure
p_{amb} for a given tissue.

The rate of change (de)saturation takes place depends on the gradient of inert gas pressure in the lung and in the tissues. According to Bühlmann, the saturation and desaturation of the various compartments can be calculated as follows:

| (3) |

p_{t.} i.g. (t_{0}) - pressure of inert gas in the tissue at start of exposure

p_{t.} i.g. (t_{E}) - pressure of inert gas in the tissue at end of exposure

p_{I} i.g. - pressure of inert gas in the breathing mix

t_{E} - duration of exposure in minutes

t_{1/2} - half-time in minutes

Equation (3) is valid only for constant pressure, i.e. remaining the whole time at the same depth during diving. In practice this will hold only in the scarcest cases. Normally many changes in depth do occur. To treat this behaviour it's common use to split the profile into many small parts, presuming that the whole time of these bits is remained at the same depth.

A more elegant solution of the above is the following equation (4) by
Schreiner. Here it is presumed, that descent and ascent take place
with *constant velocity*:

| (4) |

p_{t.} i.g. (t_{0}) - pressure of inert gas in the tissue at start of exposure

p_{t.} i.g. (t_{E}) - pressure of inert gas in the tissue at end of exposure

p_{I} i.g. - pressure of inert gas in the breathing mix

t_{E} - duration of exposure in minutes

k - half-time-constant in minutes (ln 2 / t_{1/2})

r - rate of change in inspired gas pressure with change in ambient pressure (this means rate
of de-/ascent multiplied by inert gas fraction)

For r = 0 the Schreiner equation reduces to equation (3), which therefore is a special case of (4).

Equation (3) can be transformed so as to directly calculate the no-decompression time (meaning the time underwater after which one can still ascend immediately to the surface):

| (5) |

p_{t.tol.} i.g. (t_{E}) - maximum tolerable excess pressure of inert gas
of the leading tissue at the surface

*No-decompression time* is the time one can remain at depth without having to decompress
while surfacing. The tissues can only have saturated so much, that a rapid ascent to the
surface will not exceed the maximum tolerable pressures of the leading tissue.

*Leading tissue*: that tissue which currently tolerates the lowest ambient pressure
without symptoms. The other tissues (compartments) could tolerate even further ascent
without showing symptoms of decompression sickness. The leading tissue can tolerate no
further decrease in the ambient pressure without risking the occurrence of symptoms of
decompression sickness.

Saturation and desaturation proceed exponentially. The measure for it is the so-called half-time, which represents the time it takes for the initial value - in this case, the degree of saturation - to halve or double.

The model ZH-L16 stipulates that the rate of blood supply to a tissue (compartment) determines the half-time. The absorption of nitrogen and the rate of blood supply then determine the amount of partial pressure of inert gas the compartment can tolerate.

Compartments with short half-times tolerate greater excess pressure of inert gas than the slow compartments.

The order of the compartments (tissues) in the model is as follows:

Number 1 - 4 |
fast tissues: central nervous system, spine |

Number 5 - 11 |
the skin (overlapping) |

Number 9 - 12 |
the muscles (overlapping) |

Number 13 - 16 |
slow tissues: limbs, with ligaments, cartilege, and bones (overlapping) |

("overlapping" means that the slowest tissue of the group has a longer half-time than the fastest tissue of the adjacent slower group shown as overlapping)

compartment | $t$_{1/2} N_{2} [min] |
b | a (theoretical) | a (table) | a (computer) |
---|---|---|---|---|---|

1 | 4,0 | 0,5050 | 1,2599 | 1,2599 | 1,2599 |

2 | 8,0 | 0,6514 | 1,0000 | 1,0000 | 1,0000 |

3 | 12,5 | 0,7222 | 0,8618 | 0,8618 | 0,8618 |

4 | 18,5 | 0,7825 | 0,7562 | 0,7562 | 0,7562 |

5 | 27,0 | 0,8126 | 0,6667 | 0,6667 | 0,6200 |

6 | 38,3 | 0,8434 | 0,5933 | 0,5600 | 0,5043 |

7 | 54,3 | 0,8693 | 0,5282 | 0,4947 | 0,4410 |

8 | 77,0 | 0,8910 | 0,4701 | 0,4500 | 0,4000 |

9 | 109,0 | 0,9092 | 0,4187 | 0,4187 | 0,3750 |

10 | 146,0 | 0,9222 | 0,3798 | 0,3798 | 0,3500 |

11 | 187,0 | 0,9319 | 0,3497 | 0,3497 | 0,3295 |

12 | 239,0 | 0,9403 | 0,3223 | 0,3223 | 0,3065 |

13 | 305,0 | 0,9477 | 0,2971 | 0,2850 | 0,2835 |

14 | 390,0 | 0,9544 | 0,2737 | 0,2737 | 0,2610 |

15 | 498,0 | 0,9602 | 0,2523 | 0,2523 | 0,2480 |

16 | 635,0 | 0,9653 | 0,2327 | 0,2327 | 0,2327 |

(Dive tables use additions for time, depth, and initial partial pressure of nitrogen, while dive computers have the real ambient pressure and the actual dive profile at their disposal. Therefore Bühlmann provides two modifications for the parameters, in addition to the theoretical model.)

On longer dives with higher saturation of the tissues, the decompression profile is always determined by the compartment with the longest half-time. With partial saturation, the maximum allowable partial pressure shifts from the tissues with shorter half-times to those with longer ones. The more compartments are considered in a model, the more accurately the required decompression can be determined (and thus the individual deco stops can be minimized). The tissue which determines what partial pressure of inert gas is still tolerable is designated the leading tissue.

The ideal situation consists of a continuous decompression. Instead of spending a set time at specific depths (such as 30ft, 20ft, 10ft), the diver would ascend in accord with the increasing tolerance of his leading tissue. But this is practically impossible, and so decompression must take place at certain - arbitrarily chosen - depth stages. The diver must remain at a given depth or range of depth, respectively, until it is safe to ascend to the next one.

It often happens that the leading tissue changes during the ascent or during a deco stop. In this case, a slower compartment becomes the leading one. Thus a dive computer may at first show no need for a decompression stop, then demand one later on during the ascent. While irritating, this is not a sign of a defect in the computer! ( example of this phenomenon )

A large number of compartments with various half-times must be considered in order to minimize both the risks in decompression and the time required for deco stops both for dives of only a few minutes' duration and for those of several days (in the case of industrial divers).

The "Deco '92" (in the meantime the successor "Deco 2000" is available)
dive tables commonly used in Germany (in Europe?) were developed
by Dr. Max Hahn. Such tables naturally can't reflect the real dive profile. As Max
Hahn has remarked, the "Deco '92" tables assume descent and ascent rates of 33 feet
per minute. The waiting periods at required decompression stops must be spent
stationary at the stipulated depths. This procedure is easy to carry out with the help
of a watch, compared to trying to factor the effects of a gradual ascent into the
decompression stops. Since one doesn't usually spend the entire "bottom time" at the
bottom, taking instead some time to reach bottom, and then gradually rising slowly
in the course of the dive, the tissues are not as saturated in the real dive profile
as determined by the set procedures of the dive table. Because of this there is always
a safety buffer in using the tables (assuming one has used them correctly ! :-) ) !
**Note :** The above said is valid for all dive tables, not only for "Deco '92" or
its successor "Deco 2000" !

Because of the conservative rounding off of dive tables, a dive computer will always allow a longer no-decompression time and shorter decompression stops. However, this doesn't mean that diving with the computer entails greater risk.

Why do the "Deco '92" tables start only with a depth of 30 feet? At 30 feet, or even 40 feet no-decompression stops are required. Only when one has spent more than 64 minutes at 50 feet is a three minute stop at 10 feet required (the table gives a no decompression time of 72 minutes). Certainly scarcely a recreational diver would (or could) spend so much time at this depth. The dive computer reports an infinite no decompression time at these depths. Is the no-decompression time above 10 feet really endless ?

No, not necessarily. The saturation equation simply can't calculate the no-decompression time above 22 feet - the argument of the logarithm becomes negative (see equation (5)), which isn't allowed. However, this problem is negated by experimental evidence that even fully saturated tissues can tolerate abrupt surfacing from this depth due to the fact, that the tolerated ambient excess pressure doesn't fall short.

In any case, the tables are formulated in 10 feet increments, and the first depth for which no-decompression time can be calculated with them is that of 30 feet.

In flying we confront a situation where the ambient pressure drops rapidly after the airplane takes off. If the allowable partial pressure in any of the tissues is overstepped by this drop in pressure, symptoms of decompression sickness are likely to arise.

To avoid this situation, the "do not fly" time must be observed after diving. Most dive computers calculate and display this waiting period, which may correspond to the period required for complete desaturation. However, there is considerable variation in the "do not fly" period calculated by different dive computers for the same dive profile. This raises the question of how this waiting period is calculated, and why significant differences are found between the calculations of different dive computers.

According to Bühlmann, the "do not fly" period is the time span after which
even the slowest tissue has decompressed sufficiently that even an instantaneous
drop in ambient pressure to a specific level will not exceed the partial pressure
tolerance of this tissue

- quite a mouthful ! :-) -

This "specific level" in question is the usual cabin pressure of a commercial airliner, equivalent to atmospheric pressure at an altitude of 6000 feet. However, in an emergency, this pressure can drop to ambient levels, and therefore an altitude of 13000 feet may be used to provide a further safety factor. The Aladin dive computers go even further and use an altitude of 15000 feet. But . . .

To further confuse you (or make you think !) here's a small example: after a given dive, the Aladin Air X showed a "do not fly" time of 9 hours, while my buddy's Scubapro DC12 showed 24 hours. TAUSIM, using the same dive profile, calculated a "do not fly" period of 17 hours. (But when a cabin pressure of 6000 feet was stipulated, this dropped to only 13 minutes !) What's the right answer ?

To deepen the confusion even more, it must be noted that the 17 hours "do not fly" time generated by TAUSIM is not accurate either - not even within the framework of the ZH-L16 model ! This is due to the fact that with longer and/or deeper dive simulations the slower tissues show negative values for the argument of the logarithm due to mathematical limitations of the Bühlmann model. Since negative arguments for the algorithm are not allowed, these tissues can't be used in the calculation of the "do not fly" time, and so it is determined using the slowest tissue that still shows a positive value for the argument of the logarithm. This means that the real "do not fly" time is longer than that shown by TAUSIM.

Because of this, one must take as a given, on longer dives, that the actual "do not fly" time is longer than that shown (because the slower tissues have saturated further on such a dive). And this is why TAUSIM also reports, when giving the "do not fly" time, which tissues were included in the calculation. Whenever less than 16 tissues produce a positive argument for the logarithm, then the real "do not fly" time is significantly greater than shown.

Yet we previously mentioned that the Aladin dive computer uses a cabin pressure of 15000 feet for extra safety. How can its "do not fly" time be so much shorter at 9 hours, when one would expect it to be longer compared to times calculated on a cabin pressure of 13000 feet ? It's due to the fact that Aladin dive computers use a mid-range tissue instead of the slowest tissue for the calculation.

Experience has shown that the symptoms of decompression sickness produced by flying to soon occur (predominantly or only ???) in the mid-range (for half-time) tissues.

Thus Uwatec can advertise seemingly more safety with its "do not fly" calculations based on a 15000 feet cabin pressure, while keeping the "do not fly" time quite short. Since the ZH-L8ADT model is safer (more conservative, especially for repetitive dives) than the ZH-L16 model according to Uwatec, one would hardly suspect that the "do not fly" time calculated by the Aladin dive computers might be a bit skimpy! Unfortunately, there is no indication in the user's manual of the Aladin dive computer of the actual compartments used in this calculation. :-(

How does the Scubapro DC12 deal with this situation ? It simply gives the time to complete decompression as the "do not fly" time. Since in using the ZH-L16 model practically every dive profile results in unuseable data for the 4 slowest tissues, the actual "do not fly" time is always longer than that produced by TAUSIM. Simply using the time to complete desaturation as the "do not fly" time assures that one is always safe ! However, it also means that the "do not fly" time resulting from two, three - or sometimes even more ! - dives per day over a period of several days can significantly exceed 24 hours. How many divers would choose to give up diving during the last two days of a week-long dive vacation ?

How do other dive computer manufacturers handle this problem ? On this subject they either plead "trade secrecy" or offer such useless descriptions as "modified Haldane algorithm", without providing any details of the "modification" (in principle the Bühlmann model is a haldanian model, too. - May be, all the different dive computers use the Bühlmann model . . . ??? :-) ). This is the dark side of dive computers, which constitutes a significant risk for divers. :-(

Max Hahn has stated that the "do not fly" times of some dive computers are more a product of the influence of strict US product liability considerations informed by the position of the US-dominated Undersea and Hyperbaric Medical Society (UHMS) than of experimental data. According to Hahn, the earlier "do not fly" periods of Bühlmann are too short. A reliable rule of thumb for safe "do not fly" times would be to take 60% of the "do not fly" time shown by the DC12/TRAC.

According to Hahn, the "total decompression" time (ie. all tissues clear of N_{2}
excess pressure) calculated by various dive computers is equally unreliable, because
it is dependent on the number of bits used to store a value by each computer. Careful
review of all the experimental data led Max Hahn to come up with the rule : To fly you
must be nitrogen "clean".

At the beginning of this article we assumed to be at sea level in northern Italy. Because the harpooners have shot most of the fishes in the Mediterranean Sea we decide to make our next scuba dive in a clear and unspoiled alpine lake. :-) No problem, our dive computer has a so-called "mountain lake" program on its disposal !

Our body is saturated with nitrogen corresponding to sea level, when we start our tour to the mountain lake. When we now do ascend while driving, it's a similar situation as surfacing at the end of a dive - the ambient pressure lowers faster than off-gassing of the body can take place.

Let's further assume, that the lake is located at an altitude of 4500 feet and we needed 8 hours to reach it. Using the model ZH-L16 now shows an interesting effect : we are still standing on the beach and haven't entered water so far - and now all 16 compartments can be used for the decompression calculation, that means, the slowest tissue can contribute ! We come up with a computed "do not fly" time of 5 h 10 min, and the desaturation time is more than 33 hours ! So, after a period of 5 hours we would be to fly again - but so far we haven't dived, only went by car uphill !!! :-) No one would say, that this "do not fly" time is realistic and trustworthy !

Now we do our dive for about 20 minutes at a depth of 30 feet and surface slowly. Even now all compartments contribute to the decompression calculation - but now the desaturation time is more than four times longer than the "do not fly" time when applying a pressure according to 13000 feet ! When we take the desaturation time as the "do not fly" time, it's much more worse !

This mountain lake example was calculated under assumption that saturation and desaturation take place with the same rate, i.e. adjusting the half-times to be symmetrical during off-gassing, which isn't realistic. When taking into account longer half-times during off-gassing (more conservative) the "do not fly" time will be even more greater.

Here the limits of the model become evident. But one should not take for granted, that such a rudimentary model is able to reflect all phenomenons of de/saturation in the human body, of course. Normally, the Bühlmann model serves well !

**Result : **
Without thinking never believe to all the dive computer will tell you !
Especially in the case of short or no "do not fly" time, which is pleasant for
the diver. It's ours to voluntary lengthen it for our own safety. Best behaviour
is, not to dive on the last day before flying back from a diving vacation.
It's better to drop a dive than to be delivered in a hyperbaric chamber next
day !

We call a breathing gas "nitrox", when its O_{2} fraction is greater and
its N_{2} fraction is less than in air (in principle air is a nitrox
mix, too - with 21% O_{2} and 79% N_{2}). The nitrogen is liable
for decompression sickness DCS (and for deep intoxication

- longer no-stop time
- shorter decostops
- when using a non-nitrox dive computer more safety as a whole
- a shorter surface interval
- less weariness after diving

The disadvantage is, that the maximum allowed depth is less than diving with air.
This is due to the fact, that the O_{2} fraction now is higher and so the
critical O_{2} partial pressure, when O_{2} becomes toxic, is
reached faster. Filling a tank with nitrox necessitates a greater apparative expense,
wherefore nitrox is more expensive than air. Finally, before each dive the O_{2}
fraction in the breathing gas has to be checked and input into the computer (in the
case it supports nitrox).

The normally used nitrox mixes are NOAA Nitrox I
(32% O_{2}, 68% N_{2}) and NOAA Nitrox II
(36% O_{2}, 64% N_{2}, besides there do exist some more "standard" mixes.

Although air is a nitrox mix in principle, some additional facts have to be considered (which were "omitted" in our air scuba lessons :-) ).

| (6) |

with the meaning of the symbols as follows:

p - total pressure

f_{O2} - O_{2} fraction in breathing gas

p_{O2} - O_{2} partial pressure in breathing gas

To calculate the MOD, (6) has to be transformed:

| (7) |

For p_{O2} the wanted maximum allowed oxygen partial pressure has
to be given (1.4 bar or 1.6 bar, respectively) and for f_{O2} one
has to input the oxygen fraction of the nitrox mix to be used (for example 0.36 for
Nitrox II). The result is the maximum operation pressure (MOP), which has to be
converted to depth:

| (8) |

Using air we get a depth of about 218 feet, for Nitrox I the MOD is about
132 feet, and in the case of Nitrox II it's about 112 feet, when we set the critical
O_{2} partial pressure to 1.6 bar.

| (9) |

p now is the pressure at MOD

This fact is important if we want to do a nitrox dive but our deco table is calculated for air - which should be the normal case (otherwise one would have to calculate a deco table for each nitrox mix). After calculating the equivalent air depth (EAD) it is possible to plan a nitrox dive with an ordinary air-based deco table. The formula to be used in this case is as follows:

| (10) |

EAP (equivalent air pressure) is the equivalent total pressure subsequent to be transformed into the EAD:

| (11) |

Due to the fact that the N_{2} fraction in air is always greater than in a
nitrox mix the ratio f_{N2(nitrox)} / f_{N2(air)}
is always less than 1. Therefore the EAD is always less than the real depth.

In most books and training manuals (10) is given in this simple form:

| (12) |

This is "correct", of course, but sometimes (in the German diving magazine
"Divemaster" unfortunately more often) misprints do occur. If the value
0.79 is printed instead of f_{N2(air)} or - more worse - the digits
were permuted to 0.97 - as happened in "Divemaster", issue 1/98, pp. 37 and 38 !
- it's not clear on first sight why 0.79 or one comes up with totally wrong findings !
Therefore, for a better understanding the formula should always be given in the form of (10).

The model ZH-L16 is without limitation applicable for nitrox as breathing gas, too.

In this section an algorithmic survey concerning the decompression model
ZH-L16 is given. A more detailed description and derivation
of this model can be found in Bühlmann. More information
about the often used *Haldane*-like simulation models is found in
The Physiology and Medicine of Diving
for example.

At the beginning of each section a brief recapitulation of the known contexts
is given. The used algorithms are presented in a PASCAL-like pseudo code,
because we think that this is the best manner to do.

- Calculation - in the following the term "calculation" is used
as a synonym for simulation/approximation - of the inert gas loading of the
tissues.
- Determination of the maximum tolerated excess pressure of the inert gases
in the tissues.

If there exists a gradient between the inert gas pressure in the lungs and the inert gas pressure in the tissues a pressure equalization will take place.

It is presumed that for each different tissue (compartment) there is a
characteristic velocity of saturation and desaturation with inert gases.
(Therefore it is often spoken of "fast" and "slow" tissues.)
Furthermore it is assumed, that there is *no* pressure equalization
between compartments with different inert gas pressure in the model
ZH-L16.

The phenomenon of this pressure equalization is easily described by a linear differential equation which solution is an exponential function:

| (3) |

with the following meanings of the used symbols:

p_{t.} i.g. (t_{0}) - inert gas pressure at beginning of exposition

p_{t.} i.g. (t_{E}) - inert gas pressure at end of exposition

p_{I} i.g. - inert gas pressure in breathing gas

t_{E} - time of exposition in minutes

t_{1/2} - half-time in minutes

Although the above equation is valid only for a constant inert gas excess pressure (and therefore for a constant depth), it can be used to simulate whatever dive profile is given. The idea, often used in numerical mathematics techniques, is easy to understand. If we are able to measure the pressure in very short cycles, its value will not differ (much) and we can calculate the inert gas pressure with this equation. If we apply this method sufficiently often we get a good approximation of the real course of inert gas pressure. The shorter the time between two measurements the better the approximation will become. Vivid this means that the dive profile is approximated by a huge number of steps and for each step equation (3) has to be used (see picture).

After this short description of the theoretical background for the calculation of the inert gas loadings of the tissues we can proceed to the algorithm itself. We presume that the diver is fully saturated with the inert gases at the beginning of the dive.

__Complete simulation of the dive:__

FORALL (tissue T_{i}) DO

FORALL (inert gas I_{j}) DO

/* If for example I_{j} = N_{2}, then the partial pressure
of N_{2} = 0.79 bar (in case breathing gas is air) */

set pressure for I_{j} in T_{i} to the partial pressure
of inert gas I_{j} in the present breathing gas;

Calculate the tolerance coefficients a and b for tissue T_{i} from
the half-times of inert gas I_{j};

END FORALL;

END FORALL;

WHILE (simulation is going on) DO

Measure present environmental pressure;

Check ascent velocity by means of changes in the environmental pressure;

FORALL (tissue T_{i}) DO

Calculate new loadings of all inert gases for T_{i};

IF (no decompression stop necessary for tissue) THEN

Calculate no-stop time for tissue T_{i};

ELSE

Calculate next depth for decompression stop;

END IF

END FORALL;

IF (all tissues in no-stop time) THEN

Calculate minimum of all no-stop times (shortest no-stop time is relevant for diver);

ELSE

Calculate depth and duration for first (deepest) decompression stop;

END IF;

Wait a small interval Dt;

END WHILE.

The calculation of the tolerance parameters a and b for each half-time or
tissue combination and inert gas combination, respectively, is performed
in an algorithmic way or the parameters are stored in a table in the program.
In the book by Bühlmann both possibilities
are described. The formulae to obtain the parameters a and b for the inert
gases N_{2} and He are simple ones. Simultaneously the parameters are
given in tables for a suitable spectrum of half-times for Nitrogen and
Helium. The layout of these tables is appropriate for the direct use in dive
computers. (For Nitrogen three different sets for the parameter a are
given, for Helium there is no differentiation.)

__Calculation of the parameters a and b for
t ^{N2}_{1/2}:__

a := 2.0bar (t^{N2}_{1/2})^{-1/3};

b := 1.005 - (t^{N2}_{1/2})^{-1/2};

A short remark on when the simulation can be put to an end. When the diver reaches the surface the tissues are still partly saturated with the breathed inert gases. This partial saturation of the tissues roughly corresponds with the repetitive dive groups known from the slates. Therefore the simulation must not be finished when reaching the surface. Instead it is assumed, that the diver "continues to dive" at surface pressure. So the progress of desaturation at the surface is simulated. The simulation can be finished, when it is "sure" that all the tissues are desaturated in this manner, that the do-not-fly time has diminished to zero. As mentioned before, dive computers of different manufacturers do use different criterias for the calculation of the do-not-fly time.

Dive computer measure the ambient pressure very accurately with their sensors.
Using a dive simulation program like *Tausim* the pressure data are
calculated directly from the given profile. It must be considered that the
surface pressure depends on the height above sealevel, of course.

After passing by of Dt the new inert gas loading
of each tissue is calculated with formula 3. If
Dt is sufficient small the approximation is
well done to reflect reality. You can imagine, too, that each dive meets a
multi-level dive with many very short levels, and it's assumed that during
this time the depth (more precisely, the ambient pressure) is constant.
To achieve an exact simulation, a reduced emission of inert gases by means
of microbubbles in the lungs have to be taken into consideration. This
effect, known as *intrapulmonary right-left-shunt*, is not taken
into account within the model ZH-L16. Only
the improved model ZH-L8ADT includes this
feature. Unfortunately, this technique isn't described in full in the book
by Bühlmann.

According to the model ZH-L16 now the new inert gas loading in the body tissues is calculated. To do this formula 3 is used, as mentioned above.

__Calculate the new loading of all inert gases for T _{i}:__

FORALL (inert gas I_{j}) DO

calculate current inert gas pressure p_{Ij} in the
breathing gas;

calculate new loading of inert gas I_{j} in tissue T_{i}
with half-time t^{Ij}_{1/2} according to
3

END FORALL;

It's possible to compute for each tissue and for each inert gas a still tolerated ambient pressure, which isn't allowed to fall below. Bühlmann describes this correlation simply as follows:

| (1) |

or

| (2) |

with

p_{amb. tol.} - still tolerated excess pressure by the tissue

p_{t.} i.g. - inert gas pressure in the tissue

p_{t. tol.} i.g. - still tolerated (excess) pressure in the tissue

p_{amb} - current ambient pressure

a, b - parameter of the model ZH-L16 for each tissue

Now the so-called "no-stop time" is that time, the diver (or the tissue) is allowed to remain at the current pressure, until the tissues are saturated to an extent, that the still tolerated inert gas pressure (that means, the pressure at the surface) is reached. Staying for a more prolonged period at this depth the tissues will saturate even more, so that at the surface a higher partial pressure of the inert gases is reached than is tolerable (by the tissues). That means, decompression sickness symptoms are likely to occur.

In similar action decompression stops are to be calculated. If a tissue is outside no-stop time, the next depth to stop is given by that (less) pressure to which ascending is allowed without falling below only just the tolerated partial pressure of the respective tissue. The deco stage then is the maximum of all such pressures for the tissues. Further ascending would get at least one tissue to be supersaturated, which would lead to a higher risk for the occurence of DCS at least. In practice the corresponding depths to stop are rounded to multiples of 10 ft. By this an additional safety is gained and on the other side it would be very difficult to keep deco stops with shorter distances.

Decompression calculation can be performed without explicit deco stops. In this case the diver has to stay exactly at that ambient pressure which is tolerable only just. This continuous decompressioning is not or, at least, only extremely difficult to perform for a scuba diver and who wants to claim that he/she is able to do this ? At waves this variant would be impossible to perform, anyway.

A simple conversion of formula (3) gives:

| (5) |

p_{t.tol.} i.g. (t_{E}) - maximum tolerated inert gas excess pressure
of the leading tissue at surface

Well-versed people in the field of mathematics at once see, that there
are cases in which formula (5) gives no solution. In case the fraction
is less or equal to *0*, the logarithm cannot be computed. Now one
can examine, when this will happen. For the sake of simplicity we will
give some hints here.

When diving in shallow depths it's possible, that the ambient pressure of the inert gases even at saturation of the tissues is less than the maximum tolerated pressure at the surface. That means, if a tissue stays endless at such a depth, and therefore is completely saturated, surfacing is allowed. The no-stop time in this case is endless. This is valid at least for the model ZH-L16. Whether there do exist other phenomenons, which demand decompression stops in this case we don't know (please tell us, if you know some facts about this topic).

Another case can be thought of: if a diver has to perform some decompression stops and stays at a depth in which further saturation takes place, that means the inert gas partial pressure inside ths tissues is less than the inert gas pressure in the breathing gas, the diver never can come back to a positive no-stop time. In other words: the diver not only has to perform decompression stops but these stops will become longer and/or deeper.

__Calculate no-stop time for tissue T_{i}:__

BEGIN

/* see formula (1) */

calculate the only just tolerated partial pressure of the inert gas for this tissue:

calculate the current partial pressure of the inert gas in the breathing gas;

calculate no-stop time for the tissue using formula (4);

END;

The algorithm for __Calculate next decompresion stage__ is easily
obtained with the above mentioned from a generalized no-stop time
calculation. In practice it's good use to develop such a generalized
calculation and to treat the no-stop time calculation as a special
case (ascent to surface).

Meanwhile one can purchase dive computers, which take into account the air consumption in their calculations and present the remaining bottom time (RBT) in the display. This is useful especially in the need of more than one deco stop at different depths. Because the dive computer knows the real air consumption (air consumption volume (ACV) isn't constant during diving !), it is able to determine the RBT with sufficient precision. This value is always more precise than a calculation "by hand" with supposed ACV. To be able to calculate the RBT the dive computer has to know the initial air volume and the drop in pressure at the first stage has to be measured very accurately.

Nevertheless, no dive computer requires an input of the tank volume. This could become even dangerous, if one dives with different sized tanks and one forgets to change the tank volume in the computer (what would happen without fail sooner or later) ! How is the dive computer able to correctly calculate the RBT, when it doesn't knows the tank volume ?

That's not as difficult as it seems to be, but takes for granted a very accurate pressure measuring at the first stage, what is no longer a technical problem today. The first output of the RBT takes place after some minutes only. During the first minutes of a dive the drop in pressure as against the initial tank pressure is only slight and the outputted RBT is only a very rough estimation. This doesn't matter, because the tank is full at this time. The more air is consumed during the dive the less the relative error in the difference between initial pressure and momentary pressure will become and therefore the extrapolation of the RBT becomes more accurate.

At high pressures it's not possible to treat air as an ideal gas (no interactions of the molecules or atoms, respectively, with each other). In this case a sufficient exact equation of state for air must be used. Here, too, the manufacturers don't want to publish any details. When I (Kai) asked Uwatec at the boot'97 fair, at once I was suspected to be an industry spy ! :-) (The friendly man stated, he had told me too much, when he explained to me the technique of the approximation of the RBT. And now he could not tell me the equation of state used by Uwatec, even more ! "What do you think, how many industry spies are strolling around here !?") Since some time on the Uwatec Homepage, "Technical" section, you can find the statement, that they use the van der Waals equation of state.

In comparison with the ideal gas law, the van der Waals equation of
state for real gases is an improvement. Here the particles are treated as hard
spheres, which attract themselves when coming close together. At least a
*qualitative* description of a real gas is possible with this
equation of state. Engineers often use so-called empirical
equations of state. These equations of state often show a lack of any physical
significance, but describe a given gas or fluid mixture very well, because their
parameters have been adjusted to experimental data.

In particular the difference in price between "no-decompression" and "deco" dive computers are artificially build up, for it is necessary for a "no-decompression" computer (for example Uwatec's Aladin Sport) to perform the decompression calculation (otherwise it could not warn in case of too fast ascent to the next deco depth !), but it doesn't display all informations.

We are interested in all questions concerning dive computer. Therefore our request : please, inform us, if you know more details (literature, URLs, etc.) about the models used in dive computers. Moreover, other topics are of great interests : Does anyone know the internal format used by different dive computers (Suunto, Mares, etc.) ?

Every time we're open to hints, critique and corrections of the surely present errors. Approval is accepted, too. ;-) In case, this text is used further anywhere, we would appreciate a short communication from you.

- Albert A. Bühlmann und Ernst B. Völlm,
**Tauchmedizin: Barotrauma, Gasembolie, Dekompression, Dekompressionskrankheit**, 4. Auflage, Springer Verlag 1995 - Peter Bennett and David Elliot,
**The Physiology and Medicine of Diving**, 4. Ed., W.B. Saunders Company Ltd. 1998 - Schreiner, H.R., and Kelley, P.L.,
**A Pragmatic View of Decompression**, Underwater Physiology: Proceedings of the Fourth Symposium on Underwater Physiology, edited by C.J. Lambertsen, Academic Press, New York 1971, pp. 205-219 - Haralds Tekkis-Seiten - interesting and well readable informations concerning diving physics (in German)
- Bubble Decompression Strategies - Part I : Background and Theory - recommended article by Eric Maiken concerning bubble models
- Karl Kramers Tec-Page - comprehensive informations about rebreather und nitrox diving
- Jim Cobb's Trimix Pages - worth knowing about Trimix
- Haralds Sauerstoff-Seite - informations concerning diving with pure oxygen (in German)
- Varying-Permeability Model - summary of the articles by D.E. Yount and D.C. Hoffman by Kai Schröder (in German)
- Implications of the Varying Permeability Model for Reverse Dive Profiles - Artikel von D.E. Yount, E.B. Maiken und E.C. Baker, Manuskript eines Vortrags gehalten beim Reverse Diving Profiles Workshop on October 29th, and 30th, 1999 in Washington, D.C.
- UDCF - Universal Dive Computer Format - documentation about the Universal Dive Computer Format by Steffen Reith and Kai Schröder

**Links to manufacturers of dive computers :**

Formulae translated from T