mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-28 05:00:20 +00:00
Correct partial pressure calculations
Regardless what the dive computer tells us, don't believe that pO2 was higher than the ambient pressure. This gives much more realistic values. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
02844c3a10
commit
07b74007f1
1 changed files with 4 additions and 2 deletions
|
@ -1879,9 +1879,11 @@ static struct plot_info *create_plot_info(struct dive *dive, struct divecomputer
|
|||
/* we have an O2 partial pressure in the sample - so this
|
||||
* is likely a CC dive... use that instead of the value
|
||||
* from the cylinder info */
|
||||
double po2 = entry->po2 > amb_pressure ? amb_pressure : entry->po2;
|
||||
double ratio = (double)fhe / (1000.0 - fo2);
|
||||
entry->phe = (amb_pressure - entry->po2) * ratio;
|
||||
entry->pn2 = amb_pressure - entry->po2 - entry->phe;
|
||||
entry->phe = (amb_pressure - po2) * ratio;
|
||||
entry->pn2 = amb_pressure - po2 - entry->phe;
|
||||
entry->po2 = po2;
|
||||
} else {
|
||||
entry->po2 = fo2 / 1000.0 * amb_pressure;
|
||||
entry->phe = fhe / 1000.0 * amb_pressure;
|
||||
|
|
Loading…
Reference in a new issue