Have I understood the basics of decompression theory, GF99 and SurfGF?

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!

Well... if Shearwater's math doesn't work the same way Baker's does, they're either not running ZHL-16+GF, or they live in the Evil Parallel Universe where 2 + 2 = sqrt( -1 ).
They can use the same math and just code in exceptions where they know the math gives you undesirable results.

I'm imaging a GFlow that's so small, that you aren't allowed to ascend until all tissues are saturated :-)
 
ZHL-16C+GF is an umbrella term for the foundations of the algorithm, but there are still various implementation decisions to be made that affect the answers. An obvious implementation choice is the sampling interval. For the case being discussed, Shearwater's ceiling & NDL calcs consider the effects of ascending/off-gassing (as stated in the manual), and confirmed by observations of surfGF greater than GFHigh when NDL ticks to 0.

One can argue that's not ZHL-16C+GF, but one could also regard "forgetting to offgas on the way to the first stop" to be a bug in the original implementation that was subsequently corrected.

In the end, I'm not sure much of this matters, as Shearwaters are widely used, and other manufacturers like Garmin/Mares/Ratio/etc. are likely to have made the same choice to include ascent off-gassing. (If they didn't, they would be criticized for "shortchanging" NDL in the various side-by-side comparisons.)
 
They can use the same math and just code in exceptions where they know the math gives you undesirable results.

I'm imaging a GFlow that's so small, that you aren't allowed to ascend until all tissues are saturated :-)

Quoting Erik Baker's "No-Stop Time":
VERY IMPORTANT NOTE: You cannot apply the "No-Stop Time" equation,
t = (-1/k)*ln[(Pi - Mo)/(Pi - Po)], under the following conditions:
1. If the quantity within the logarithm bracket is a negative number.
This is because the logarithm of a negative number is a complex number
(i.e. a + ib) which is NOT A REAL situation for diving!
The quantity within the logarithm bracket will be negative if:
a. Mo > Pi > Po
b. Mo < Pi < Po
2. If Pi = Po then there will be division by zero which cannot be
accomplished.
3. If the quantity within the logarithm bracket is a positive number greater
than one (1), then the time computed in the overall equation will be negative,
which is NOT A REAL situation for diving!

Enjoy!
 
Quoting Erik Baker's "No-Stop Tiem":
VERY IMPORTANT NOTE: You cannot apply the "No-Stop Time" equation,
t = (-1/k)*ln[(Pi - Mo)/(Pi - Po)], under the following conditions:
...
That simplified expression relies on other various assumptions -- a big one is a single inert gas. Yet the concept of an NDL still remains. Maybe folks should call it ZHL-16C+GF+AscentOG+Inert2+Sample1s+...? Or maybe not. 😉
 
In regards to Baker's "no stop time" equation I found I couldn't use it to calculate NDL time remaining because of the limitations listed in post #83. Fortunately, there is another method that can be used in every dive situation. It involves doing several calculations in a loop where the result of the calculation for ceiling is zero depth. The dive time that has accumulated at the current depth equals the NDL time remaining. For the ZHL-16C algorithm the calculations must be made for each tissue compartment (TC). Ceilings will be negative if above the surface, zero if at the surface, and positive for below the surface. Here are the steps:

1. Start with a dive time of 0 minutes.
2. Add 1 minute to the dive time.
3. Calculate the new pressure for each TC.
4. Calculate the new ceiling for each TC.
5. If the deepest ceiling is negative (the least negative among all TC's) go to step 2 and repeat.
6. The ceiling is zero. The accumulated dive time is the NDL at the current depth.
 
That's how it's normally done but on deeper dives you might want to

7. Simulate ascent to the surface at "safe" rate and see if the ceiling is still there. If not, goto 2.

So as to not scare away customers with your "too short" NDLs.
 
(Baker's implementation ignored off-gassing during ascent, and I agree that could result in a discontinuity in the ceiling when NDL hit 0.)
Where did you read that Baker's implementation ignored off-gassing on ascent?
 
That's how it's normally done but on deeper dives you might want to

7. Simulate ascent to the surface at "safe" rate and see if the ceiling is still there. If not, goto 2.

So as to not scare away customers with your "too short" NDLs.
I assume you're responding to my post #85. I don't get it. If you're at the surface your ceiling is zero by definition. There's no need to simulate anything. If "too short" NDL's scare people they probably should pay more attention to their DC's and begin ascending when the NDL is in the double digits. The feelings people have on NDL, whether positive or negative, has nothing to do with the calculations.
 
Where did you read that Baker's implementation ignored off-gassing on ascent?
Perhaps here? Why is Bühlmann not like Bühlmann – The Theoretical Diver

When is it time to leave a stop? All models I know provide you with a current minimal ambient pressure given the tissue loadings and the current ambient pressure. So, should you leave your stop once that minimal ambient pressure is less or equal than the ambient pressure of your next potential stop? This might be the naive guess. But one could also take into account not the current ambient pressure but that of the stop. And for gradient factors (see below), one has to take the gradient factor into account not at the current depth but at the depth of the next stop (or ceiling). I have seen implementations that got the maths of this wrong. But there is another thing that one could take into account: There is further off-gassing during the ascend to the next stop. So, the criterium should not be if the next stop is below the ceiling once i leave the previous stop but once I reach the next. To me, this is the only sensible criterium, so Subsurface does this for Bühlmann where it is not specified. But in order to be 100% compatible with the original implementation of VPM-B, using that model, we take the criterium to be the ceiling at the time of leaving the previous stop. The difference is minimal but can make stops one minute shorter or longer (and due to on-gassing on the deeper stops also influence the length of the shallower stops).

Edit - this is also mentioned here: VPM-B for real dives (or not) – The Theoretical Diver
 
Where did you read that Baker's implementation ignored off-gassing on ascent?
It's implicit in the computation of the first stop as the depth where the current tension crosses the GFLow line in the tension vs depth graph. This is in contrast to the projected tension (a curved line) crossing the GFL.
 

Back
Top Bottom