summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--deco.c2
-rw-r--r--dive.h3
-rw-r--r--planner.c9
3 files changed, 13 insertions, 1 deletions
diff --git a/deco.c b/deco.c
index 8bff4c226..20d8b0479 100644
--- a/deco.c
+++ b/deco.c
@@ -508,6 +508,8 @@ void clear_deco(double surface_pressure)
tissue_he_sat[ci] = 0.0;
max_n2_crushing_pressure[ci] = 0.0;
max_he_crushing_pressure[ci] = 0.0;
+ n2_regen_radius[ci] = get_crit_radius_N2();
+ he_regen_radius[ci] = get_crit_radius_He();
}
gf_low_pressure_this_dive = surface_pressure;
if (!buehlmann_config.gf_low_at_maxdepth)
diff --git a/dive.h b/dive.h
index 0125b76a5..ed9e02565 100644
--- a/dive.h
+++ b/dive.h
@@ -830,6 +830,9 @@ struct divedatapoint *create_dp(int time_incr, int depth, struct gasmix gasmix,
void dump_plan(struct diveplan *diveplan);
#endif
bool plan(struct diveplan *diveplan, char **cached_datap, bool is_planner, bool show_disclaimer);
+void calc_crushing_pressure(double pressure);
+void vpmb_start_gradient();
+
void delete_single_dive(int idx);
struct event *get_next_event(struct event *event, const char *name);
diff --git a/planner.c b/planner.c
index ffe890780..5afc11771 100644
--- a/planner.c
+++ b/planner.c
@@ -997,6 +997,13 @@ bool plan(struct diveplan *diveplan, char **cached_datap, bool is_planner, bool
create_dive_from_plan(diveplan, is_planner);
return(false);
}
+ calc_crushing_pressure(depth_to_mbar(depth, &displayed_dive) / 1000.0);
+ nuclear_regeneration(clock);
+ clear_deco(displayed_dive.surface_pressure.mbar / 1000.0);
+ vpmb_start_gradient();
+ previous_deco_time = 100000000;
+ deco_time = 10000000;
+
tissue_tolerance = tissue_at_end(&displayed_dive, cached_datap);
displayed_dive.surface_pressure.mbar = diveplan->surface_pressure;
@@ -1124,7 +1131,7 @@ bool plan(struct diveplan *diveplan, char **cached_datap, bool is_planner, bool
vpmb_next_gradient(deco_time, diveplan->surface_pressure / 1000.0);
previous_deco_time = deco_time;
- restore_deco_state(bottom_cache);
+ tissue_tolerance = restore_deco_state(bottom_cache);
depth = bottom_depth;
gi = bottom_gi;