what I tried to say in my post is exactly that even if you ” just let the user make his own NDL GF settings whatever they find appropriate” it turns out that the influence of GFlow on the NDL is almost not there.

BTW, an easy regularisation is to say that the minimal depth to apply GFlow something like 0.1m. That resolves the singularity in the formula and automatically makes sure that GFhigh is responsible for the NDL. And obviously yields a smooth transition.

]]>The problem though, is all NDL dives eventually become decompression dives. So you need a transition from NDL GF mode to Deco GF mode. Take a look at the dive log of a computer that does this, and you will see as the deco begins, the transition to initial stops will come on with rush. Rather quickly the plan has gone from no deco, to 2 or 3 levels of required deco with extra minutes of deco time needed. However, that blended approach, is not proportional to the underlying needs of decompression, and not respecting the divers wishes per his GF settings.

Others might argue that GF Lo creating early stops in NDL mode, is doing exactly what has been asked of it – to lower the maximum saturation pressures accordingly and insert early stops.

That’s the compromise when trying to use GF in NDL mode. Some programs will go to the trouble to try to silently blend that transition into the ascent (those that “look” to show no GF Lo influence). Other programs just let the user make his own NDL GF settings whatever they find appropriate.

]]>This seems to well beyond what can be explained by rounding and is much more into the domain of different interpretations of a corner case of the algorithm.

I was faced with this exact dilemma during the implementation of own diving computer and although at first blush it seems reasonable enough to just not worry about the discrepancy, at the end of the day the code had to implement one approach or the other and I just can’t help feeling uncomfortable with an arbitrary choice.

]]>GF 80/80

ostc planner : no stops

gap diveplanner : no stops

pastodeco : no stops

mvplan : no stops

Rerunning the simulation with GF 30/80

ostc planner : no stops

gap diveplanner : no stops

pastodeco : 1min at 6m et 1min at 3m

mvplan : 2min at 6m et 1min at 3m

So it seems like both OSTC planner and GAP diveplanner fall into the “GF low only applies to deco dives” camp.

]]>I would be quite interested to understand how VPM behaves with respect to Helium Nitrogen mixes. While VPM adds up Helium and Nitrogen partial pressures per compartment in its bubble computation (if I remember correctly), the limits/parameters for all compartments are the same.

Like in Buhlmann’s model, the different assumed on- / off-gassing speed of Helium will determine how Helium and Nitrogen compartments are mapped to each other, and which two compartments are summed up in determining the tissue total gas pressure (which in turn determines bubble growth). However, it’s not obvious to me whether this will consistently lead to longer decompression times with more Helium content. I wouldn’t be surprised if the VPM would predict shorter decompression for some profiles when increasing the Helium content of breathing gases.

I did a quick “sample size 1” experiment in Subsurface’s dive planner, and substituting an increasing amount of Nitrogen by Helium in the breathing gas did lead to longer deco times with VPM-B, but the difference was less expressed compared to Buhlmann.

]]>If you want to see how we do it (we use an interpolation of table data for the real gas compressibility of O2, N2 and He), have a look at https://github.com/Subsurface-divelog/subsurface/blob/master/core/gas-model.c

]]>Thank you for this nice Blog. I really like reading here, even if i sometimes cant understand everything. Would hope to read more.

As i keep an excel sheet of all my dives including average depth and start / end pressure i also calculate my SAC / RMV rates. To get these numbers more accurate i would like to improve on the calculation done for this. On the last part of your blogpost you gave a hint about the impelementation in subsurface. If you really could write up another topic about that i really really would appreciate it. I tried looking into the subsurface binaries to textract the knowledge but couldnt find it.

]]>