Help with simple deco algorithm project

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!

Like @tursiops I ran the he numbers in Multideco and here is my observation. Although the system doesn't have a recreational mode and doesn't generate NDLs for specific depths/GF's they can be derived by trial and error as indicated by @tursiops. The thing to remember is Multideco is very "mathematically accurate." It will generate a 1 second stop where other systems will round up or down. Taking this into consideration, you can generate NDLs comparable to other systems as I demonstrate in the table below.
Teric NDLs.PNG

With other programs, if your assumption is an NDL doesn't generate an obligated stop; meaning your deco time is absolutely = 0, you will get some weird results in Multideco. Look at the two yellow columns. We know that GFlo should not influence NDL's but in this case 95/95 and 75/95 don't even match!

Now if you ignore 1 second stops (orange columns) generated by Multideco, you get a more reasonable result and 95/95 vs 75/95 do match and are close to the Teric.

Now if you ignore any deco time less than a minute (blue columns) generated by Multideco you get a result close to Subsurface.

So this is a good example where Buhlmann is Buhlmann but not necessarily Buhlmann. I assume the programmers of Subsurface decided that any deco obligation generated that is less than a minute is ignored. That is why Subsurface has generated its NDL's which are a bit more than the Teric.

This is just one example where programmers have to make a call on their interpretation of Buhlmann. There are many more assumptions/decisions that will add to the variation of their model (including bugs) versus others.

And with this little exercise, we now know the subtle difference between Multideco and Subsurface.
 
Now if you ignore any deco time less than a minute (blue columns) generated by Multideco you get a result close to Subsurface.

So this is a good example where Buhlmann is Buhlmann but not necessarily Buhlmann. I assume the programmers of Subsurface decided that any deco obligation generated that is less than a minute is ignored. That is why Subsurface has generated its NDL's which are a bit more than the Teric.

This is just one example where programmers have to make a call on their interpretation of Buhlmann. There are many more assumptions/decisions that will add to the variation of their model (including bugs) versus others.

Being one of the programmers of Subsurface, I can tell you that Subsurface adds a stop (of at least one minute as all stops are multiples of entire minutes) whenever otherwise you would violate a ceiling not matter by how little. But what Subsurface actually does when computing Bühlmann deco times is to take into account off gassing during the ascent from the previous stop. So it would directly ascent to the surface (from 3m where it last checked for a stop) if a potential ceiling cleared during those last 3m of ascent. Other programs might only leave a stop depth if the next stop depth has already cleared. This effect is of course more pronounced the slower the ascent velocity is set.
 
At least in Multideco you have the possibility to change the descent-speed, this will affect the NDL/Deco quite noticeably. I dont' remember what the standard-setting is(maybe 12m/min) , but for my diving I use 6m/min.
So for comparison between different software's one should also align these values.
 
Subsurface adds a stop (of at least one minute as all stops are multiples of entire minutes) whenever otherwise you would violate a ceiling not matter by how little. But what Subsurface actually does when computing Bühlmann deco times is to take into account off gassing during the ascent from the previous stop.
@atdotde thanks for your feedback. Its always good to hear from the source rather than to speculate. In my attempt to match Multideco to Subsurface NDL's at every depth specified in the table above I had to add about a minute of deco to Multideco to match Subsurface. In both cases my descent/ascent was 60/30 ft.
 
Given deco stops come in multiples of minutes a one minute difference is as small as it gets, don't lose any sleep over it. And there is another source of such differences: What exactly comes in integer minutes, stop times or run time? The difference is the time you spend on the ascent during stops. Do you make the time you spend on the stop a multiple of 60s or the time since leaving the last stop? In practice, this makes no difference, but it can cause minimally different plans.

BTW, the relevant pages of the Subsurface source code are

Subsurface-divelog/subsurface
Subsurface-divelog/subsurface
 
Hi diving friends,

I thought I would try this one more time and would very much appreciate your help. I am doing a very simple project looking at some minor differences in the implementation of the Buhlmann decompression algorithm. Could you please supply me with the NDLs from your computer's planning function for 1st clean dive, 32% nitrox, 60-130 ft, GF high 95. I already have the data for Shearwater, Dive Rite and Garmin. This is an example of what I am looking for:
upload_2019-7-13_12-21-27-png.529006.png

The computer brands I would like to have are:
Divecomputer.eu/Deep 6
Divesoft
Heinrichs Weikamp
Ratio/Seac
(runs ZH-L16B) use the preset for 93/93 or custom GF high 95

Thanks in advance, good diving,

Craig
 
Thank you very much @divinglog, I appreciate it :)

Now, I still need:
Divecomputer.eu/Deep 6
Divesoft
Ratio/Seac
(runs ZH-L16B) use the preset for 93/93 or custom GF high 95

I will post a summary of all the data when I am finished

Good diving, Craig
 
https://www.shearwater.com/products/peregrine/

Back
Top Bottom