<div dir="ltr">Hi Willem,<br><div><div class="gmail_extra"><br></div><div class="gmail_extra">Your deduction of the colours is close.  Most significant point is that the "offgassing" colours are relative to the M value (i.e. that used when GF = 100/100), rather than the specified gradient factors (or VPM-B conservatism).  Making it relative to the M value makes it easier to compare different profiles using the same scale.  E.g. comparison of deco profile with deep stops (e.g. GF 30/85 or VPM-B) vs no deep stops (e.g. GF = 80/80), which is what was done in the Simon Mitchell presentation.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On 4 October 2016 at 22:45, Willem Ferguson <span dir="ltr"><<a target="_blank" href="mailto:willemferguson@zoology.up.ac.za">willemferguson@zoology.up.ac.za</a>></span> wrote:<br><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">I did some measurements on the heat map after the latest release (5.2-1640-gb3a0ab dated Oct 3rd) which I assume is the 4.6 beta release and which incorporates Robert's latest patch.<br>
<br>
Attached two dives using the Buehlmann algorithm. The time difference between events in the the heat map and those in the dive profile looks to be more or less constant during a dive. In dive 1 (attached) the difference is approx 100 seconds, while in dive 2 (attached) the difference is about 65 seconds. However, in both dives the difference is close to 35 horizontal pixels.<br>
<br>
With respect to the colours used in the heat map, I deduce the following:<br>
<br>
Light blue:  Inert gas tissue pressure far below ambient inert gas pressure and close to pressure when dive started.<br></blockquote><div>technically the colour is cyan, but light blue is a good enough description<br></div><div> </div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">
Dark blue:  Some ongassing has occurred but tissue pressures still far below ambient pressure.<br></blockquote><div>not actually dark, but an intense blue<br></div><div> </div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">
Purple:       Tissue gas pressure approaches that of the ambient inert gas pressure.<br></blockquote><div>correct<br> <br></div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">
Black:         Tissue gas pressure roughly equal to ambient gas pressure.<br></blockquote><div>actually at ambient pressure * fraction N2 in air, so equal to where you tissues end up breathing air on the surface<br><br></div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">
Grey-green: Tissue gas pressure greater than, but close to ambient pressure.<br></blockquote><div>actually about ambient pressure<br></div><div> </div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">
Bright green: Tissue gas pressure significantly above ambient pressure but below Gradient factor limit. Efficient offgassing is taking place in the tissue groups in </blockquote><div>tissue slightly above ambient pressure: GF = 10%<br></div><div> </div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">green.<br>
Green-yellow: Tissue gas pressure approximately at limit imposed by gradient factor.<br>
Yellow:           Tissue gas pressure exceeds limit imposed by gradient factor.<br></blockquote><div>tissue at GF = 55%<br></div><div> </div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">
Orange ?      Approaching GF100 gas pressure   ???<br>
Red ?            Exceeding GF100 gas pressure   ???<br></blockquote><div>tissue at GF = 100% <br></div><div><br></div><div>Below ambient pressure, the value is the scaled from the ratio (inert tissue saturation) / (ambient pressure).<br></div><div>Above ambient pressure, the value is relative to the M value<br></div><div><br>The exact points on the colour scale are interpolated between points on the HSV (hue, 
saturation, value) colours scale<br><br></div><div>Tissue pressure below ambient pressure points are:<br></div><div>tissue pressure negligible relative to ambient pressure (rapid descent to depth): "bright" cyan (HSV = 180 deg, 1, 1)<br>tissue pressure ~ 53% of (ambient pressure * fraction inert gas in air):  "bright" blue (HSV = 240 deg, 1, 1)<br></div><div>tissue pressure = 80% of (ambient pressure * fraction inert gas in air):  "bright" purple (HSV = 270 deg, 1, 1)<br>tissue pressure = (ambient pressure * fraction inert gas in air): black (HSV = 270 deg, 1, 0)    <---- this is special because it is where your tissues end up if you breath air on the surface<br></div><div>tissue pressure = ambient pressure: "medium" green (HSV = 270 deg, 1, 0.68)<br></div><div><br><div>Tissue pressure above ambient pressure points relative to M value (tissue "gradient factor") are:<br></div><div>10% of M value = "bright" green (HSV = 120 deg, 1, 1)<br></div>55% of M value = "bright" yellow (HSV = 60 deg, 1, 1)<br>100% of M value = "bright" red (HSV = 0 deg, 1, 1)<br>140% of M value = white (HSV = 0 deg, 0, 1)<br><br></div><div>I hope you never see the colours beyond red in an actual dive - but you can in a test plan if you set GF > 100%, or VPM-B with zero conservatism and a deco dive with a reasonably long bottom time, which can result in an equivalent GFhigh >100%.<br></div><div> </div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote">
In the user manual, I would like to but an example of the gas pressure graph in the Information box next to the representation of the same instant as a vertical slice through the heat map. In order to do that, one needs to understand the colours.<br></blockquote><div><br></div><div>That's a good idea.  The colour graph and pressure graph in info box are calculated from the same variable.  The equivalent points and colours in that graph are<br></div><div>GF 100 (top line) = red in tissue plot (HSV = 0 deg, 1, 1)<br>GF = 0 (inert gas equilibrium pressure) = "medium" green (HSV = 270 deg, 1, 0.68)<br></div><div>base of graph = tissue pressure relative to ambient pressure negligible = cyan (HSV = 180 deg, 1, 1)<br><br></div><div>Note that the variable being plotted in both cases is actually entry->percentages[j], which is on its own special scale, where 50 equates to zero gradient, and 100 equates to M value (c code copied below).  In the descriptions above, I have back-calculated it to gradient factors and tissue pressure to ambient pressure ratio.<br><br></div><div>From <a href="http://git.subsurface-divelog.org/?p=subsurface.git;a=blob;f=core/profile.c;h=935f95ede860ada68efa47d7c29f5af11601bda9;hb=HEAD#l1021">http://git.subsurface-divelog.org/?p=subsurface.git;a=blob;f=core/profile.c;h=935f95ede860ada68efa47d7c29f5af11601bda9;hb=HEAD#l1021</a><br>1021                         for (j = 0; j < 16; j++) {<br>1022                                 double m_value = buehlmann_inertgas_a[j] + entry->ambpressure / buehlmann_inertgas_b[j];<br>1023                                 entry->ceilings[j] = deco_allowed_depth(tolerated_by_tissue[j], surface_pressure, dive, 1);<br>1024                                 entry->percentages[j] = tissue_inertgas_saturation[j] < entry->ambpressure ?<br>1025                                                                 tissue_inertgas_saturation[j] / entry->ambpressure * AMB_PERCENTAGE :<br>1026                                                                 AMB_PERCENTAGE + (tissue_inertgas_saturation[j] - entry->ambpressure) / (m_value - entry->ambpressure) * (100.0 - AMB_PERCENTAGE);<br></div><div><br></div><div> <br></div><div>Regards,<br></div></div><br></div></div></div>