On Wed, Nov 05, 2014 at 06:34:38PM +0100, Robert C. Helling wrote: > > On 05 Nov 2014, at 17:37, Willem Ferguson <willemfergu...@zoology.up.ac.za> > wrote: > > Willem, > > > 1) This patch has an unintended consequence: The ending cylinder pressure > > for the diluent cylinder (as seen on the equipment tab) is changed to > > reflect that of the ending pressure of the oxygen cylinder. The diluent > > cylinder index for the Poseidon diluent is the dreaded and infamous 1. We > > hardcode the cylinder IDs here while reading in the dive log because it is > > very specific to the Poseidon. In addition, even though these specific two > > cylinders have already been assigned to enum values of oxygen and diluent > > respectively, we are in the process of setting up the cylinders, so we > > cannot already use the functions that use these enum values. > > So: dive->cylinder[1].sample_end.mbar for this sample dive has a value of > > 141, that of the oxygen cylinder. The correct ending value for this > > variable is 137. I have carefully looked around the code around line 600 in > > file.c but cannot see the cause of this problem. Run the code with and > > without your patch and see the difference. > > > > This is weird. For some reason the pressures for the O2 cylinder are shown > even when the gas name is “Air”. Have to investigate this further.
The code that handles "what's the current gas" is rather dumb. I wouldn't be surprised if there were assumptions somewhere that whatever gas you have the sensor pressure for is also the gas that you are breathing. That's the first place I would look. > > 2) A question just to improve my understanding of the code. If the > > explicit_first_cylinder() result is diluent, does this mean that the deco > > requirements are calculated for the gas in the diluent cylinder? In this > > case the diluent is air, but the displayed ceilings do not (at first sight) > > appear to be shallower than that for air dives to the quivalent depths. For > > instance, if I simulate the sample dive as an air dive using the planner, > > the dive extended to 70 min for sufficient deco. So if the ceilings reflect > > the pn2 values at the various depths as actually calculated at each point > > on the profile, why does it matter whether one starts with cylinder 0 or > > cylinder 1? > > > It means that air is handed to fill_pressures as gasmix (for which then the > inert gas pressures are adopted according to the set point). So it should do > the correct thing. If you gave it O2 then the gas output would always be pure > O2 (and thus no deco obligation). No deco obligation and one heck of a CNS/OTU value I'd guess :-) /D _______________________________________________ subsurface mailing list subsurface@subsurface-divelog.org http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface