x2pCO2 {seacarb} | R Documentation |
Converts mole fraction to partial pressure of CO2
Description
Converts xCO2 (mole fraction of CO2) into pCO2 (partial pressure of CO2)
Usage
x2pCO2(S=35, T=25, Patm=1.0, xCO2=400)
Arguments
S |
Salinity on the practical salinity scale, default is 35 |
T |
Temperature in degrees Celsius, default is 25oC |
Patm |
Atmospheric pressure in atmospheres, default is 1.0 |
xCO2 |
Mole fraction of CO2 in ppm, default is 400 |
Details
The mole fraction xCO2 (ppm) is computed from pCO2 (\mu
atm) using the following equation: xCO2 = pCO2 (Patm - pH2O)
, where pH20 is the vapor pressure of seawater computed following best practices (Dickson et al., 2007). That computed pH20 is identical, when rounded to the 4th decimal place, with that computed by the equation from Weiss and Price (1980).
Value
pCO2 |
Partial pressure of CO2 in |
Note
Warning: pCO2 estimates below 100 m are subject to considerable uncertainty. See Weiss (1974) and Orr et al. (2015)
Author(s)
James Orr james.orr@lsce.ipsl.fr
References
Dickson A. G., Sabine C. L. and Christian J. R., 2007 Guide to best practices for ocean CO2 measurements. PICES Special Publication 3, 1-191.
Orr J. C., Epitalon J.-M. and Gattuso J.-P., 2015. Comparison of seven packages that compute ocean carbonate chemistry. Biogeosciences 12, 1483-1510.
Weiss, R. F. (1974) Carbon dioxide in water and seawater: the solubility of a non-ideal gas, Marine Chemistry, 2, 203-215.
Weiss, R. F. and Price, B. A. (1980) Nitrous oxide solubility in water and seawater, Marine Chemistry, 8, 347-359.
See Also
Examples
## Atmospheric pressure is rarely equal to 1 atm exactly
## Over the Southern Ocean Patm=0.97 is more realistic
pCO2_socn <- x2pCO2(S=35, T=0, Patm=0.97, xCO2=400.0)
print(pCO2_socn)
## The result (385.6322 uatm) is 12 uatm less than if it was wrongly assumed that Patm=1.0
## Show effect of temperature on pCO2 computed from xCO2, and on resulting variables from "carb"
S <- 35
ALK <- 2300e-6
T <- seq(0,30,5)
xCO2 <- 400
pCO2 <- x2pCO2(S=35, T=T, Patm=1, xCO2=400)
results <- carb(flag=24, var1=pCO2, var2=ALK, S=S, T=T, P=0, Pt=0, Sit=0,
pHscale="T", kf="pf", k1k2="l", ks="d", b="u74")
print(results)