<div dir="ltr">Hi Jan,<br><br>On 4 July 2015 at 08:27, Jan Darowski <span dir="ltr"><<a href="mailto:jan.darowski@gmail.com" target="_blank">jan.darowski@gmail.com</a>></span> wrote:<br><div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi,<br>
Here is another pull request. I hope now it's better. Everything was<br>
reorganized from scratch, the final code is almost the same.<br>
<br></blockquote><div><br></div><div>I tried your VPM patch set.  I haven't worked through the logic of the code or looked at individual commits.  I just tested the dive VPM planner.<br><br></div><div>I don't have Multideco or any other VPM planner for comparison, so I was only comparing it against example profiles I could find.  Almost all examples were using VPM-B, and most had an added conservatism factor - both very good things for planning real dives, but quite annoying as a comparison, since I understand you have not yet implemented the Boyle's law adjustment or conservatism factors.  But, there is an example in the introduction to Eric Baker's original VPM Fortran code.<br><br></div><div>Note that the licence for the Fortran code is, "DISTRIBUTE FREELY - CREDIT THE AUTHORS".<br></div><div><br>The example uses 15/45 trimix bottom gas, and 36% and 100% as deco gasses. There are two example dives to 260 ft (79 metres) with 30 minute bottom time, and 60 minute surface interval between the dives.  Descent rate is 75 ft/min (23 m/min), and ascent rate is generally 30 ft/min (9 m/min) then 10 ft/min (3 m/min) from final stop.  Total dives times are 101 and 126 minutes, respectively.<br><br></div><div>Setting the same profiles, the deco schedule calculated by Subsurface is quite a bit more aggressive.  Total dive times are 86 and 103 minutes.<br><br></div><div>But then I checked the configuration parameters adopted, and there are differences.  I altered vpmb_config to match what was used in the Fortran code.<br><div>critical radius of N2 was 0.6, changed to 0.8 microns<br></div><div><div>critical radius of He was 0.5, changed to 0.7 microns<br></div><div>critical volume of lambda was 250, changed to 231.021 bar (=7500 fsw-min)<br></div></div><br></div><div>Using these configuration parameters, we get total dive times of 101 and 125 minutes, respectively.  I.e.within 1 minute (which is nothing) of the example dives.  It would be a huge coincidence if the calculations weren't being performed correctly.<br><br></div><div>I can't claim these configuration parameters are 'better', but with them, we can match the benchmark.  A patch is attached.  You may or may not want to take it: when the Boyles Law adjustment is made, I think the critical radii should be reduced back to how they were, but the lambda parameter should also be reduced to ~200 bar.<br><br>I also attached a patch to include the units in the config structure, to make it marginally easier to understand what the parameters represent.<br><br></div><div>Cheers,<br><br></div><div>Rick<br></div><div><br></div><br><br></div></div></div></div>