Plotting OC-pO2 on SCR dives and accommodating bailout
Willem Ferguson
willemferguson at zoology.up.ac.za
Tue Mar 20 07:37:33 PDT 2018
Hallo Anton, Robert,
Would you be prepared, at all, to review PR #1166? I have a follow-up PR
that creates a preferences option of selecting OC-pO2 display for SCR
dives, similar to the way setpoint-display is selectable for CCR dives.
The PR #1170 for accommodating bailouts is a proof-of-concept, not a
finalised PR for potential merging. I would like some comment on the
approach taken, on whether it appears viable or not. May I try and
explain how I see the important issues?
1) No of variables used.
a) The dive sample structure: Jef reported that those dive computers
that register bailout use two systems: a) discrete bailout events and
(b) a bool with every dive sample that indicates whether the sample was
obtained while on closed loop or during OC (=bailout). With respect to
the dive sample structure, this may mean that one would need to
accommodate both mechanisms, unless libdivecomputer transforms one of
these mechanisms into a standardised mechanism. At the least we need a
mechanism where a rebreather diver can create bailout events by hand in
order to reflect gas pressures in the log more accurately whn using
technical dive computers that do *not* register bailout. This means that
the sample structure may need a bool/int that takes into account
loop/bailout.
b) The plot_info structure: If one wants to internalise the divemode to
a sample-level variable, and not a characteristic of the dive computer,
it means that the plot_info structure would also require a bool/int to
indicate divemode for that point on the profile. So the variable
reference would become plot_info -> divemode instead of dc->divemode. Is
this a realistic view of the problem? Of course, if this was done, it
would be invasive with widespread effects throughout much of dive.c,
planner.c and profile.c and also some c++ files. Because of this, #1170
attempts to address bailout but sticking to the existing dive and
profile structures and methods.
c) Populating a potential plot_info->divemode variable with the correct
data. This depends on how libdivecomputer presents the data. But, at a
minimum one would need a facility to translate bailout events (i.e. in
the events linked list) into sample->divemode or plot_info->divemode
values. In this case, the code in #1170 would be usable with very little
change to interpret the bailout events at a sample level or at a
plot_info level. Only after allowing for bailout is it possible to have
realistic partial pressures that could be used to calculate Bühllmann
tissue compartment pressures and deco parameters for dives that involve
bailout. In the case of SCR dives, bailout is a standard part of the
dive procedure. So dive planning for SCR cannot realistically be
performed without provision for bailout.
Robert, what is your perspective with respect to what all this might
mean for the dive planner?
Kind regards,
willem
--
This message and attachments are subject to a disclaimer.
Please refer to
http://upnet.up.ac.za/services/it/documentation/docs/004167.pdf for full
details.
More information about the subsurface
mailing list