Hi, On 4 July 2015 at 18:29, Jan Darowski <jan.darow...@gmail.com> wrote:
> > eh... from deepocean.net: "7500 fsw min = 250 bar min" > It's not the first mistake I found there. And it seems that the author > of existing > c code based his implementation on this site also. > > I multiplied 7500 fsw by 0.304 (feet to metres) divided by 10 (metres salt water to ata) and multipled by 1.01325 (ata to bar). 7500 * 0.304 / 10 * 1.01353 = 231.021 bar It's close, but I think my conversion was very slightly out, and assumes a certain density of salt water, which varies slightly around the world. If I recall correctly, fsw is a "special" American unit of pressure rather than depth. I think it is actually defined as 33 fsw = 1 ata. In which case, to convert to bar should be: 7500 / 33 * 1.01325 = 230.284 bar We should use that number if we take 7500 fsw as the correct value. 2301.021 vs 230.284 makes no perceivable difference to the calculated plan. But ~230 vs 250 does. I have updated the patches anyway. You may be interested to see that HHS Software (V-Planner/MultiDeco) say they use critical N2 and He radii of 0.8 and 0.7 with VPM, and 0.55 and 0.45 with VPM-B. https://www.hhssoftware.com/images/critrad.gif They have defined conservatism levels of +1, +2, +3 and +4 as increasing the critical radii by 5%, 12%, 22%, 35%, respectively. https://www.hhssoftware.com/v-planner-cde/faqhelp.html#config Cheers,
From c0e3e0711c358b995a696d0e62b6a68376c82f83 Mon Sep 17 00:00:00 2001 From: Rick Walsh <rickmwa...@gmail.com> Date: Sat, 4 Jul 2015 16:34:22 +1000 Subject: [PATCH 13/14] Use same VPM configuration parameters as Fortran example Adopt the same critical radii and gas volume parameters as Eric Baker's original VPM Fortran code. Signed-off-by: Rick Walsh <rickmwa...@gmail.com> --- deco.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deco.c b/deco.c index f1bc803..5bea4a8 100644 --- a/deco.c +++ b/deco.c @@ -43,7 +43,7 @@ struct vpmb_config { double regeneration_time; //! Time needed for the bubble to regenerate to the start radius. double other_gases_pressure; //! Always present pressure of other gasses in tissues. }; -struct vpmb_config vpmb_config = { 0.6, 0.5, 250.0, 8.2, 0.179, 2.57, 20160, 0.1359888 }; +struct vpmb_config vpmb_config = { 0.8, 0.7, 230.284, 8.2, 0.179, 2.57, 20160, 0.1359888 }; const double buehlmann_N2_a[] = { 1.1696, 1.0, 0.8618, 0.7562, 0.62, 0.5043, 0.441, 0.4, -- 2.4.3
From 70b45d1f7c0a23684246eb0937717338362993c9 Mon Sep 17 00:00:00 2001 From: Rick Walsh <rickmwa...@gmail.com> Date: Sat, 4 Jul 2015 16:53:19 +1000 Subject: [PATCH 14/14] Include units in VPM config structure definition Signed-off-by: Rick Walsh <rickmwa...@gmail.com> --- deco.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/deco.c b/deco.c index 5bea4a8..8d815f2 100644 --- a/deco.c +++ b/deco.c @@ -36,12 +36,12 @@ struct buehlmann_config buehlmann_config = { 1.0, 1.01, 0, 0.75, 0.35, 1.0, fals struct vpmb_config { double crit_radius_N2; //! Critical radius of N2 nucleon (microns). double crit_radius_He; //! Critical radius of He nucleon (microns). - double crit_volume_lambda; //! Constant corresponding to critical gas volume. - double gradient_of_imperm; //! Gradient after which bubbles become impermeable. - double surface_tension_gamma; //! Nucleons surface tension constant. - double skin_compression_gammaC; //! - double regeneration_time; //! Time needed for the bubble to regenerate to the start radius. - double other_gases_pressure; //! Always present pressure of other gasses in tissues. + double crit_volume_lambda; //! Constant corresponding to critical gas volume (bar). + double gradient_of_imperm; //! Gradient after which bubbles become impermeable (bar). + double surface_tension_gamma; //! Nucleons surface tension constant (mN/cm). + double skin_compression_gammaC; //! Skin compression gammaC (mN/cm). + double regeneration_time; //! Time needed for the bubble to regenerate to the start radius (min). + double other_gases_pressure; //! Always present pressure of other gasses in tissues (bar). }; struct vpmb_config vpmb_config = { 0.8, 0.7, 230.284, 8.2, 0.179, 2.57, 20160, 0.1359888 }; -- 2.4.3
_______________________________________________ subsurface mailing list subsurface@subsurface-divelog.org http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface