Learn R Programming

scuba (version 1.8-0)

deco.ceiling: Decompression Ceiling for a Diver

Description

Given the state of a diver's tissues, find the diver's decompression ceiling depth (minimum permissible depth) or decompression ceiling pressure (minimum permissible ambient pressure).

Usage

deco.ceiling(state, model, what = c("depth", "pressure"))

Arguments

state
Diver's tissue saturations. See Details.
model
Haldane type decompression model (object of class "hm") or one of the standard model names recognised by pickmodel.
what
What to calculate. See Details.

Value

A numeric vector, matrix or array of the same type as state and with the same dimensions as state, giving the decompression ceiling for each tissue, each inert gas, and each time point as given. If what="pressure" the entries in the result are pressures in ata. If what="depth" the entries are depths in metres.

Details

Given the current state of a diver's tissues, this command calculates the diver's decompression ceiling: the shallowest depth (or lowest ambient pressure) to which it is safe to ascend.

The argument state gives the diver's current state or the diver's progressive state during a dive. It has typically been calculated using haldane. It should be either:

  • A numeric vector giving the diver's current nitrogen tensions for each tissue. The length of the vector matches the number of tissues in the model.
  • A matrix giving the diver's current nitrogen and (if present) helium tensions for each tissue. The rows of the matrix correspond to tissues in the model. The first column (or the column labelled "N2") contains the nitrogen tensions, and if present, the second column (or column labelled "He") contains the helium tensions.
  • A three-dimensional array giving the progressive states of the diver over time. The first index corresponds to time. The second index corresponds to tissues in the model. The third coordinate corresponds to inert gases "N2" and "He".

Entries in the vector, matrix or array state are pressures in atmospheres absolute (ata).

The minimum tolerated ambient pressure Pamb.tol is calculated using the equivalent of Buehlmann's formula (Buehlmann et al, 1995, section 6.5, page 117). If what="pressure", this minimum tolerated ambient pressure is returned (negative pressures are reset to zero). If what="depth" this pressure is converted to diving depth in metres assuming that the surface pressure is 1 ata (negative depths are reset to zero).

References

Buehlmann, A.B., Voellm, E.B. and Nussberger, P. (2002) Tauchmedizin. 5th edition. Springer-Verlag, Berlin. ISBN 3-540-42979-4.

See Also

hm for decompression models. haldane to calculate tissue tensions during or after a dive.

Examples

Run this code
   # diver state after saturation diving on EANx30 at 20 metres
   s <- saturated.state("Z", 20, nitrox(0.30))

   # decompression ceiling for each compartment
   depthceiling <- deco.ceiling(s, "Z")
   round(depthceiling, 2)
   round(max(depthceiling), 2)
   # decompress at 8 metres or deeper

   # flying-after-diving with cabin pressure 0.8 ata
   pressureceiling <- deco.ceiling(s, "Z", "pressure")
   round(pressureceiling, 2)
   any(pressureceiling > 0.8)
   # immediate flying-after-diving is not safe

Run the code above in your browser using DataLab