[PATCH 1/3] Add function to calculate gas maximum narcotic depth
Rick Walsh
rickmwalsh at gmail.com
Tue May 31 02:31:46 PDT 2016
Signed-off-by: Rick Walsh <rickmwalsh at gmail.com>
---
core/dive.h | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/core/dive.h b/core/dive.h
index 5988990..6910eb2 100644
--- a/core/dive.h
+++ b/core/dive.h
@@ -481,6 +481,17 @@ static inline depth_t gas_mod(struct gasmix *mix, pressure_t po2_limit, struct d
return rounded_depth;
}
+/* Maximum narcotic depth rounded to multiples of roundto mm */
+static inline depth_t gas_mnd(struct gasmix *mix, int end, struct dive *dive, int roundto) {
+ depth_t rounded_depth;
+ pressure_t ppo2n2;
+ ppo2n2.mbar = depth_to_mbar(end, dive);
+
+ double maxambient = ppo2n2.mbar / (1 - get_he(mix) / 1000.0);
+ rounded_depth.mm = rint(mbar_to_depth(maxambient, dive) / roundto) * roundto;
+ return rounded_depth;
+}
+
#define SURFACE_THRESHOLD 750 /* somewhat arbitrary: only below 75cm is it really diving */
/* this is a global spot for a temporary dive structure that we use to
--
2.5.5
More information about the subsurface
mailing list