Mercurial > public > ostc4
view Common/Inc/calc_crush.h @ 223:5f535ef6a3db div-fixes-3
Bugfix, minor: properly alternate VPM/Buhlmann in deco loop
The idea of the counter in this commit is to compute the opposite
deco algorithm in 1:10 calls. So, when Buhlmann is selected,
also compute VPM with 1:10 sample rate (and vise versa).
The idea is good, but this never worked as the counter was local on
the stack, so was 0 for every call here. So, when switching between
deco algorithm, it took some refresh cycles as the computations
where not in sync.
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
author | Jan Mulder <jlmulder@xs4all.nl> |
---|---|
date | Sun, 31 Mar 2019 15:14:06 +0200 |
parents | 5f11787b4f42 |
children |
line wrap: on
line source
/////////////////////////////////////////////////////////////////////////////// /// -*- coding: UTF-8 -*- /// /// \file Common/Inc/calc_crush.h /// \brief VPM Desaturation code /// \author Heinrichs Weikamp /// \date 2018 /// /// $Id$ /////////////////////////////////////////////////////////////////////////////// /// \par Copyright (c) 2014-2018 Heinrichs Weikamp gmbh /// /// This program is free software: you can redistribute it and/or modify /// it under the terms of the GNU General Public License as published by /// the Free Software Foundation, either version 3 of the License, or /// (at your option) any later version. /// /// This program is distributed in the hope that it will be useful, /// but WITHOUT ANY WARRANTY; without even the implied warranty of /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the /// GNU General Public License for more details. /// /// You should have received a copy of the GNU General Public License /// along with this program. If not, see <http://www.gnu.org/licenses/>. ////////////////////////////////////////////////////////////////////////////// #ifndef CALC_CRUSH_H #define CALC_CRUSH_H #include "data_central.h" void vpm_init(SVpm* pVpm, short conservatism, short repetitive_dive, long seconds_since_last_dive); int calc_crushing_pressure(SLifeData* lifeData, SVpm* vpm, float * initial_helium_pressure, float * initial_nitrogen_pressure, float starting_ambient_pressure, float rate ); #endif // CALC_CRUSH_H