Differences between Bulhmann ZHL-16A/B/C?

Please register or login

Welcome to ScubaBoard, the world's largest scuba diving community. Registration is not required to read the forums, but we encourage you to join. Joining has its benefits and enables you to participate in the discussions.

Benefits of registering include

  • Ability to post and comment on topics and discussions.
  • A Free photo gallery to share your dive photos with the world.
  • You can make this box go away

Joining is quick and easy. Log in or Register now!

YuchenEasonJiang

Registered
Messages
22
Reaction score
4
Location
Southampton, UK
# of dives
500 - 999
Hi folks,

Anyone can explain the exact differences between ZHL-16A, B and C? I’ve seen threads saying that B is for generating tables, but C can also generate tables. Can anyone provides some detailed explanation?
 
 
Hi folks,

Anyone can explain the exact differences between ZHL-16A, B and C? I’ve seen threads saying that B is for generating tables, but C can also generate tables. Can anyone provides some detailed explanation?

The usual answer is that "A" was derived by curve-fitting a formula to experimental values and the result was found to be too aggressive in the subsequent testing. It was toned down to "B", that was used to generate dive tables. "C" was further toned down for use in dive computers based on the assumption that table dives come with an extra safety margin as they are planned to max depth but are rarely executed all the way to max depth for the entire bottom time.

Below, "t" is the half-time, "a" and "b" are Buhlmann's "coefficients" aka M-values by another name, "A", "B", and "C" are the keys for the 3 sets.

1 : { "t" : 4.0, "b" : 0.505, "a" : { "A" : 1.2599, "B" : 1.2599, "C" : 1.2599 } },
1.1 : { "t" : 5.0, "b" : 0.5578, "a" : { "A" : 1.1696, "B" : 1.1696, "C" : 1.1696 } },
2 : { "t" : 8.0, "b" : 0.6514, "a" : { "A" : 1.0, "B" : 1.0, "C" : 1.0 } },
3 : { "t" : 12.5, "b" : 0.7222, "a" : { "A" : 0.8618, "B" : 0.8618, "C" : 0.8618 } },
4 : { "t" : 18.5, "b" : 0.7825, "a" : { "A" : 0.7562, "B" : 0.7562, "C" : 0.7562 } },
5 : { "t" : 27.0, "b" : 0.8126, "a" : { "A" : 0.6667, "B" : 0.6667, "C" : 0.62 } },
6 : { "t" : 38.3, "b" : 0.8434, "a" : { "A" : 0.5933, "B" : 0.56, "C" : 0.5043 } },
7 : { "t" : 54.3, "b" : 0.8693, "a" : { "A" : 0.5282, "B" : 0.4947, "C" : 0.441 } },
8 : { "t" : 77.0, "b" : 0.891, "a" : { "A" : 0.4701, "B" : 0.45, "C" : 0.4 } },
9 : { "t" : 109.0, "b" : 0.9092, "a" : { "A" : 0.4187, "B" : 0.4187, "C" : 0.375 } },
10 : { "t" : 146.0, "b" : 0.9222, "a" : { "A" : 0.3798, "B" : 0.3798, "C" : 0.35 } },
11 : { "t" : 187.0, "b" : 0.9319, "a" : { "A" : 0.3497, "B" : 0.3497, "C" : 0.3295 } },
12 : { "t" : 239.0, "b" : 0.9403, "a" : { "A" : 0.3223, "B" : 0.3223, "C" : 0.3065 } },
13 : { "t" : 305.0, "b" : 0.9477, "a" : { "A" : 0.2971, "B" : 0.285, "C" : 0.2835 } },
14 : { "t" : 390.0, "b" : 0.9544, "a" : { "A" : 0.2737, "B" : 0.2737, "C" : 0.261 } },
15 : { "t" : 498.0, "b" : 0.9602, "a" : { "A" : 0.2523, "B" : 0.2523, "C" : 0.248 } },
16 : { "t" : 635.0, "b" : 0.9653, "a" : { "A" : 0.2327, "B" : 0.2327, "C" : 0.2327 } }
 
The usual answer is that "A" was derived by curve-fitting a formula to experimental values and the result was found to be too aggressive in the subsequent testing. It was toned down to "B", that was used to generate dive tables. "C" was further toned down for use in dive computers based on the assumption that table dives come with an extra safety margin as they are planned to max depth but are rarely executed all the way to max depth for the entire bottom time.

Below, "t" is the half-time, "a" and "b" are Buhlmann's "coefficients" aka M-values by another name, "A", "B", and "C" are the keys for the 3 sets.

1 : { "t" : 4.0, "b" : 0.505, "a" : { "A" : 1.2599, "B" : 1.2599, "C" : 1.2599 } },
1.1 : { "t" : 5.0, "b" : 0.5578, "a" : { "A" : 1.1696, "B" : 1.1696, "C" : 1.1696 } },
2 : { "t" : 8.0, "b" : 0.6514, "a" : { "A" : 1.0, "B" : 1.0, "C" : 1.0 } },
3 : { "t" : 12.5, "b" : 0.7222, "a" : { "A" : 0.8618, "B" : 0.8618, "C" : 0.8618 } },
4 : { "t" : 18.5, "b" : 0.7825, "a" : { "A" : 0.7562, "B" : 0.7562, "C" : 0.7562 } },
5 : { "t" : 27.0, "b" : 0.8126, "a" : { "A" : 0.6667, "B" : 0.6667, "C" : 0.62 } },
6 : { "t" : 38.3, "b" : 0.8434, "a" : { "A" : 0.5933, "B" : 0.56, "C" : 0.5043 } },
7 : { "t" : 54.3, "b" : 0.8693, "a" : { "A" : 0.5282, "B" : 0.4947, "C" : 0.441 } },
8 : { "t" : 77.0, "b" : 0.891, "a" : { "A" : 0.4701, "B" : 0.45, "C" : 0.4 } },
9 : { "t" : 109.0, "b" : 0.9092, "a" : { "A" : 0.4187, "B" : 0.4187, "C" : 0.375 } },
10 : { "t" : 146.0, "b" : 0.9222, "a" : { "A" : 0.3798, "B" : 0.3798, "C" : 0.35 } },
11 : { "t" : 187.0, "b" : 0.9319, "a" : { "A" : 0.3497, "B" : 0.3497, "C" : 0.3295 } },
12 : { "t" : 239.0, "b" : 0.9403, "a" : { "A" : 0.3223, "B" : 0.3223, "C" : 0.3065 } },
13 : { "t" : 305.0, "b" : 0.9477, "a" : { "A" : 0.2971, "B" : 0.285, "C" : 0.2835 } },
14 : { "t" : 390.0, "b" : 0.9544, "a" : { "A" : 0.2737, "B" : 0.2737, "C" : 0.261 } },
15 : { "t" : 498.0, "b" : 0.9602, "a" : { "A" : 0.2523, "B" : 0.2523, "C" : 0.248 } },
16 : { "t" : 635.0, "b" : 0.9653, "a" : { "A" : 0.2327, "B" : 0.2327, "C" : 0.2327 } }
That’s a really detailed explanation, thanks! I also heard that C has altitude compensation, don’t know if it’s true. Can I ask where you get these tables?
 
That’s a really detailed explanation, thanks! I also heard that C has altitude compensation, don’t know if it’s true. Can I ask where you get these tables?

Various sources: Tauchmedizin has never been translated AFAIK and I don't read German so... Deco for Divers, Erik Baker's papers, Subsurface software, etc.

Buhlmann's numbers are referenced to absolute pressure so altitude compensation is built in. (Preceding work e.g. Workman's was zeroed at "sea level" and therefore had issues with altitude diving; one of Buhlmann's motivations was diving in the lakes in Swiss Alps.)
 
Buhlmann's numbers are referenced to absolute pressure so altitude compensation is built in.

I think it is Bühlmann who introduced (or at least popularized) the use of alveolar gaz content instead of the breathing one which also play an important role at altitude. AFAIK altitude diving was not an important factor in the introduction of the various sets (A, B, C).
 
That’s a really detailed explanation, thanks! I also heard that C has altitude compensation, don’t know if it’s true. Can I ask where you get these tables?
The A, B, and C tables for nitrogen and the table for helium can be found in Baker's paper "Understanding M-values". I've included it here for your convenience.
 

Attachments

  • deco_m-values.pdf
    266.9 KB · Views: 69

Back
Top Bottom