Back-calculating M0-values of the RDP

Please register or login

Welcome to ScubaBoard, the world's largest scuba diving community. Registration is not required to read the forums, but we encourage you to join. Joining has its benefits and enables you to participate in the discussions.

Benefits of registering include

  • Ability to post and comment on topics and discussions.
  • A Free photo gallery to share your dive photos with the world.
  • You can make this box go away

Joining is quick and easy. Log in or Register now!

Arie0510

Registered
Messages
15
Reaction score
11
Location
Netherlands
# of dives
200 - 499
Educated as a mathematician, and being an enthousiastic scuba diver for 5 years now, I am interesting in reconstructing the numbers in the RDP. Mainly just out of curiosity, true to my education, but also to better understand the tables I am teaching my students as a DM.

Via this forum I found a reference to the paper [1], where it was explained that for deriving the RDP a Haldane model was used, which can be described by the ordinary differential equation

dP(t)/dt = -k ( P_I(t) - P(t) )

where P(t) denotes the partial pressure of the gas in the compartment, P_I(t) the ambient partial pressure of the gas, and k = ln(2) / t_{0.5} is a constant with t_{0.5} denoting the half time of the compartment.

Furthermore, the following no-stop relation

D - A = C * t^(-x)

was used with constants C = 803 [fsw], A = 20.15 [fsw], and x = 0.7476, where D denotes the depth [fsw] and t the no-stop time [minutes].


In [1] it was mentioned that "The RDP M0-values were back-calculated from the no-stop curve". Furthermore, it was mentioned that "For the record, when M-values are calculated from the no-stop times the shape of the no-stop dive profile used for the calculation has an influence on the resulting M0-value. For the RDP we calculated these assuming a descent to depth at 60 fsw/min beginning at the beginning of bottom time, with the bottom time ending at the end of the time on bottom; the timed descent was used, not an instantaneous one." A final remark of importance in [1] was "Table III shows the M-values in the modern perspective which considers the atmosphere to be made up of 79.1% nitrogen".


Unfortunately it was not explained in [1] how the 'back-calculation' was done, and that is the reason for this question, as I wonder how to do this back-calculation.


My first thought was to consider the no-stop relation as a relation that 'guarantees' that when going back to the surface (at an ascent rate not faster than 60 fsw/min as was the standard in 1994) no DCS would occur. For any depth D one can determine the supersaturation upon surfacing after the above mentioned profile when the end of bottom time is given by the no-stop relation. The M0-value for a compartment then would be the maximal achievable partial pressure of the gas upon surfacing over all possible depths.

To be more precise, I considered the following evolution of the ambient pressure:
Descent: P_I(t) = 0.791 * ( 33 + 60 * t ) for 0 <= t <= D/60
Bottom: P_I(t) = 0.791 * ( 33 + D ) for D/60 <= t <= tstop
Ascent: P_I(t) = 0.791 * ( 33 + D + 60 * (tstop-t)) for tstop <= t <= tstop + D/60
where for any depth D the value of tstop is given by the no-stop relation. Also the initial condition P(0)=33 [fsw] was taken.
[taking this profile one obtains a Schreiner equation, followed by a Haldane equation, followed by an other Schreiner equation]

For any depth D, using the above expression for the ambient pressure, one can determine P(tstop+D/60). Maximizing this over all possible values for D might give the M0-value I conjectured. However, doing so (differentiating w.r.t. D, setting this to zero and solving for D, and substituting that value of D) leads to the values
107.57, 86.16, 67.71, 60.01, 55.85, 51.48, 49.22, 47.85, 46.93, 45.78, 45.07, 44.60, 43.81, 43.40
associated with the half times of
5, 10, 20, 30, 40, 60, 80, 100, 120, 160, 200, 240, 360, 480.
This perfectly reconstructs the M0-values as mentioned in [1] for half-times of 120 minutes and longer, but yields too high values for smaller half times.


Since the values from my first attempt are too high, I reasoned that slightly shortening the dive would reduce the values for the fast compartments, and hardly effect the slow compartments. As a second attempt I therefore decided to modify the profile to ensure that the dive was ended at tstop.

To be more precise, I considered the following evolution of the ambient pressure:
Descent: P_I(t) = 0.791 * ( 33 + 60 * t ) for 0 <= t <= D/60
Bottom: P_I(t) = 0.791 * ( 33 + D ) for D/60 <= t <= tstop - D/60
Ascent: P_I(t) = 0.791 * ( 33 + D + 60 * (tstop-t)) for tstop - D/60 <= t <= tstop
where again for any depth D the value of tstop is given by the no-stop relation. Also with the initial condition P(0)=33 [fsw].

Using the modified profile, I obtained the values
98.50, 82.56, 66.88*, 59.74, 55.73, 51.44, 49.21, 47.85, 46.93, 45.77*, 45.07, 44.60, 43.81, 43.40
which perfectly reconstructs the M0-values as mentioned in [1] (with the small remark that for compartments with half times of 20 and 160 minutes I would have to round instead of floor to reproduce the numbers in [1]), except of those of the two fastest compartments with half-times of 5 and 10 minutes. In this second attempt the values for the two slowest tissues are too small (should have been 99.08 and 82.63 according to [1]).

Though my second attempt better reconstructs the M0-values in [1], it is less consistent with the dive profile as described in [1]. I conjecture that I have to reduce the values in a different way. But how? Note that assuming an instant ascent leads even to higher values.


An other thing that is still puzzling me, which might be related, is that in [1], when discussing the no-stop relation it was mentioned that "A deep asymptote of 262 fsw was also calculated. This was the theoretical depth to which a dive could be made with zero bottom time". If I solve the no-stop relation together with the equation

t = D/60

I obtain D=276 [fsw]. So also the value of 262 fsw as mentioned in [1] I also could not explain...




[1] Hamilton Jr RW, Rogers RE, Powell MR (1994). "Development and validation of no-stop decompression procedures for recreational diving: the DSAT recreational dive planner"
 
Educated as a mathematician, and being an enthousiastic scuba diver for 5 years now, I am interesting in reconstructing the numbers in the RDP. Mainly just out of curiosity, true to my education, but also to better understand the tables I am teaching my students as a DM.

Via this forum I found a reference to the paper [1], where it was explained that for deriving the RDP a Haldane model was used, which can be described by the ordinary differential equation

dP(t)/dt = -k ( P_I(t) - P(t) )

where P(t) denotes the partial pressure of the gas in the compartment, P_I(t) the ambient partial pressure of the gas, and k = ln(2) / t_{0.5} is a constant with t_{0.5} denoting the half time of the compartment.

Furthermore, the following no-stop relation

D - A = C * t^(-x)

was used with constants C = 803 [fsw], A = 20.15 [fsw], and x = 0.7476, where D denotes the depth [fsw] and t the no-stop time [minutes].


In [1] it was mentioned that "The RDP M0-values were back-calculated from the no-stop curve". Furthermore, it was mentioned that "For the record, when M-values are calculated from the no-stop times the shape of the no-stop dive profile used for the calculation has an influence on the resulting M0-value. For the RDP we calculated these assuming a descent to depth at 60 fsw/min beginning at the beginning of bottom time, with the bottom time ending at the end of the time on bottom; the timed descent was used, not an instantaneous one." A final remark of importance in [1] was "Table III shows the M-values in the modern perspective which considers the atmosphere to be made up of 79.1% nitrogen".


Unfortunately it was not explained in [1] how the 'back-calculation' was done, and that is the reason for this question, as I wonder how to do this back-calculation.


My first thought was to consider the no-stop relation as a relation that 'guarantees' that when going back to the surface (at an ascent rate not faster than 60 fsw/min as was the standard in 1994) no DCS would occur. For any depth D one can determine the supersaturation upon surfacing after the above mentioned profile when the end of bottom time is given by the no-stop relation. The M0-value for a compartment then would be the maximal achievable partial pressure of the gas upon surfacing over all possible depths.

To be more precise, I considered the following evolution of the ambient pressure:
Descent: P_I(t) = 0.791 * ( 33 + 60 * t ) for 0 <= t <= D/60
Bottom: P_I(t) = 0.791 * ( 33 + D ) for D/60 <= t <= tstop
Ascent: P_I(t) = 0.791 * ( 33 + D + 60 * (tstop-t)) for tstop <= t <= tstop + D/60
where for any depth D the value of tstop is given by the no-stop relation. Also the initial condition P(0)=33 [fsw] was taken.
[taking this profile one obtains a Schreiner equation, followed by a Haldane equation, followed by an other Schreiner equation]

For any depth D, using the above expression for the ambient pressure, one can determine P(tstop+D/60). Maximizing this over all possible values for D might give the M0-value I conjectured. However, doing so (differentiating w.r.t. D, setting this to zero and solving for D, and substituting that value of D) leads to the values
107.57, 86.16, 67.71, 60.01, 55.85, 51.48, 49.22, 47.85, 46.93, 45.78, 45.07, 44.60, 43.81, 43.40
associated with the half times of
5, 10, 20, 30, 40, 60, 80, 100, 120, 160, 200, 240, 360, 480.
This perfectly reconstructs the M0-values as mentioned in [1] for half-times of 120 minutes and longer, but yields too high values for smaller half times.


Since the values from my first attempt are too high, I reasoned that slightly shortening the dive would reduce the values for the fast compartments, and hardly effect the slow compartments. As a second attempt I therefore decided to modify the profile to ensure that the dive was ended at tstop.

To be more precise, I considered the following evolution of the ambient pressure:
Descent: P_I(t) = 0.791 * ( 33 + 60 * t ) for 0 <= t <= D/60
Bottom: P_I(t) = 0.791 * ( 33 + D ) for D/60 <= t <= tstop - D/60
Ascent: P_I(t) = 0.791 * ( 33 + D + 60 * (tstop-t)) for tstop - D/60 <= t <= tstop
where again for any depth D the value of tstop is given by the no-stop relation. Also with the initial condition P(0)=33 [fsw].

Using the modified profile, I obtained the values
98.50, 82.56, 66.88*, 59.74, 55.73, 51.44, 49.21, 47.85, 46.93, 45.77*, 45.07, 44.60, 43.81, 43.40
which perfectly reconstructs the M0-values as mentioned in [1] (with the small remark that for compartments with half times of 20 and 160 minutes I would have to round instead of floor to reproduce the numbers in [1]), except of those of the two fastest compartments with half-times of 5 and 10 minutes. In this second attempt the values for the two slowest tissues are too small (should have been 99.08 and 82.63 according to [1]).

Though my second attempt better reconstructs the M0-values in [1], it is less consistent with the dive profile as described in [1]. I conjecture that I have to reduce the values in a different way. But how? Note that assuming an instant ascent leads even to higher values.


An other thing that is still puzzling me, which might be related, is that in [1], when discussing the no-stop relation it was mentioned that "A deep asymptote of 262 fsw was also calculated. This was the theoretical depth to which a dive could be made with zero bottom time". If I solve the no-stop relation together with the equation

t = D/60

I obtain D=276 [fsw]. So also the value of 262 fsw as mentioned in [1] I also could not explain...




[1] Hamilton Jr RW, Rogers RE, Powell MR (1994). "Development and validation of no-stop decompression procedures for recreational diving: the DSAT recreational dive planner"
Bravo! Welcome to Scubaboard. I'm so glad someone is working through the math. I meant to do that for my altitude class, because it was unsatisfying the adjustments that were made. Never got past solving your first Ordinary Differential Equation (ODE). Good luck, I hope you figure it out. There are a few folks who might be able to help here:
 
I don't think it's quite that simple: Buhlmann came up with a simple way to derive M-values from half-times but then found out they don't actually work for middle compartments; he had to "add conservatism" to those. I've no idea how, presumably it is described in Tauchmedizin.

As you found out DSAT report does not describe exactly how they derived theirs, but if you consider all the discussion from the opening chapters, they must have used some statistically-derived fudge factors somewhere in the process.
 
Thanks for your comment, it helped me a little further. I checked the book "Diving Medicine" (translation to English of Tauchmedizin), but could not find there how to derive M0-values from half times. However, I did find Decompression Theory by B.R. Wienke, where on page 28 he explains how to derive "critical tensions M".

He starts from the no-stop relation

D - A = C * t^(-x)

but assumes constants 400 <= C = 500 [fsw], A = 0 [fsw], and x = 0.5 instead (cf. equation (6) on page 28).

Furthermore, he assumes an instantaneous descent from the surface to the bottom, and instantaneous ascent from the bottom to the surface, i.e., the following evolution of the ambient pressure:

Bottom: P_I(t) = 0.79 * ( 33 + D ) for 0 <= t <= tstop

If you then do exactly what I did above (i.e., for any depth D, using the above expression for the ambient pressure, determine P(tstop) and then maximize this over all possible values for D), you arrive at his characterization of the optimal depth/bottom time as described in equation (7) on page 28 (I can show you the math if you are interested).

In [1] the no-stop relation as used by Wienke (they call it there P root t, developed by Hempleman (1975)) was also mentioned as equation (3). Based on data-analysis and curve fitting, in [1] they used instead the no-stop curve as mentioned in my first post (equation (4) in [1]). Furthermore, they mentioned that they used a linear descent instead of an instantaneous descent.

So would that mean my question more or less reduces to "what was the evolution of the ambient pressure used for back-calculating the M0-values" and in particular what ascent profile was used, and when did the ascent start? Clearly, it was not an instantaneous ascent, since then higher M0-values than in my "first attempt" would have emerged.
 
Thanks for your comment, it helped me a little further. I checked the book "Diving Medicine" (translation to English of Tauchmedizin), but could not find there how to derive M0-values from half times.

It exists? I was under the impression it was never translated.
 
It exists? I was under the impression it was never translated.
I think he meant only that he had translated the title.
 
I consulted the book "Diving Medicine" by Olaf Rusoke-Dierich, which is a translation of "Tauchmedizin" by Olaf Rusoke-Dierich.

But now I found that also Bühlmann has written a book with the same title (also from Springer). I guess you referred to the latter whereas I referred to the former.....

Unfortunately I can not get free access to Bühlmann's book on Springerlink via my university, so I'll see if I can find it elsewhere (and then polish up my German...)
 
:D My German is non-existent so I didn't even try.
 
I don't think it's quite that simple: Buhlmann came up with a simple way to derive M-values from half-times but then found out they don't actually work for middle compartments; he had to "add conservatism" to those. I've no idea how, presumably it is described in Tauchmedizin.

As you found out DSAT report does not describe exactly how they derived theirs, but if you consider all the discussion from the opening chapters, they must have used some statistically-derived fudge factors somewhere in the process.

Well, I was able to find a copy of the 2005 version of the book (5th edition), and read through it.
Bühlmann did not theoretically back-calculate M0-values from a no-stop relation...

What he did, was present a linear relation for the M-value as function of the ambient pressure, with a so-called a coefficient (the intercept at zero ambient pressure, absolute) and b coefficient (reciprocal of the slope):

coefficient a: 2.0 [bar] times (t_{0.5,N2})^(-1/3)
coefficient b: 1,005 - (t_{0.5,N2})^(-1/2)

These have been determined by fitting experimental data.

One actually might then determine M0 by taking a plus b times the ambient pressure (absolute) at sealevel, but this then is unrelated to any dive profile or no-stop relation...


I did, however, find that for determining the partial nitrogen pressure Bühlmann removed a partial H2O pressure to account for water vapor pressure. However, including that implies that from all M0-values one has to subtract the same number, so that unfortunately also does not explain the differences I mentioned in my first post.
 
https://www.shearwater.com/products/perdix-ai/

Back
Top Bottom