# convert_salinity: Practical - Absolute Salinity Conversions In marelac: Tools for Aquatic Sciences

 convert_salinity R Documentation

## Practical - Absolute Salinity Conversions

### Description

Conversion from practical to absolute salinity and vice versa.

### Usage

``````convert_PStoAS(S = 35, p = max(0, P - 1.013253), P = 1.013253,
lat = NULL, lon = NULL, DSi = NULL,
Ocean = c("Global", "Atlantic", "Pacific", "Indian", "Southern"))

convert_AStoPS(S = 35, p = max(0, P - 1.013253), P = 1.013253,
lat = NULL, lon = NULL, DSi = NULL,
Ocean = c("Global","Atlantic","Pacific","Indian","Southern"))

``````

### Arguments

 `S ` Salinity, either practical salinity (`convert_PStoAS`), dimensionless or absolute salinity (`convert_AStoPS`, g/kg) `p ` gauge or applied pressure, pressure referenced against the local atmospheric pressure, bar `P ` true pressure, bar `lat ` latitude (-90 to +90) `lon ` longitude (0 to 360) `DSi ` the silicate concentration, in micromol/kg `Ocean ` the ocean in which the measurement was taken; only used if `DSi` is not `NULL`

### Details

Absolute salinity (g kg-1) is estimated from Practical salinity as:

AS= 35.16504 /35 * PS + delt()

where delt is the absolute salinity anomaly. There are two ways in which to estimate the salinity anomaly

1. If DSi is not given a value, then the anomaly is estimated as a function of longitude `lon`, latitude `lat` and pressure `p`, using the lookup table as in `sw_sfac`.

2. If `DSi` is given a value, then a regression on it is used, based on the values of `Ocean` and -except for the "global" ocean- the latitute `lat`:

"Global"

a global estimate is used,

delt= 9.824e-5 *DSi,

"Southern"

the Southern Ocean (`lat` < -30),

delt= 7.4884e-5 *DSi,

"Pacific"

the Pacific Ocean ,

delt= 7.4884e-5 *(1 + 0.3622[`lat`/30 + 1])*DSi,

"Indian"

the Indian Ocean ,

delt= 7.4884e-5 *(1 + 0.3861[`lat`/30 + 1])*DSi,

"Atlantic"

the Atlantic Ocean ,

delt= 7.4884e-5 *(1 + 1.0028[`lat`/30 + 1])*DSi,

Note that for the Pacific, Indian and Atlantic Ocean regression, the latitude is needed. If `lat` is `NULL` then the `Global` regression will be used.

### Value

The absolute salinity (`convert_PStoAS`) or practical salinity (`convert_AStoPS`).

### Author(s)

Karline Soetaert <karline.soetaert@nioz.nl>

### References

Millero FJ, Feistel R, Wright DG and McDougall TJ, 2008. The composition of Standard Seawater and the definition of the Reference-Composition Salinity Scale, Deep-Sea Res. I, 55, 50-72.

McDougall TJ, Jackett DR and Millero FJ, 2009. An algorithm for estimating Absolute Salinity in the global ocean. Ocean Science Discussions 6, 215-242. http://www.ocean-sci-discuss.net/6/215/2009/

Uses the Fortran code written by David Jackett. http://www.teos-10.org/

`convert_RtoS`, `convert_StoR`, `convert_StoCl`, `convert_p`, `convert_T`,

### Examples

``````# check values: should be 35.7
convert_PStoAS(S = 35.52764437773386, p = 102.3, lon = 201, lat = -21)

# check values: should be 35.52764437773386
convert_AStoPS(S = 35.7, p = 102.3, lon = 201, lat = -21)

#
convert_PStoAS(S = 35)
convert_AStoPS(S = 35)
convert_PStoAS(S = 35, lat = 10, lon = 10, p = 0)

# Based on Si concentration
DSi <- seq(from = 0, to = 200, by = 10)
Global   <-  convert_PStoAS(30, DSi = DSi, Ocean = "Global")
Atlantic <-  convert_PStoAS(30, DSi = DSi, Ocean = "Atlantic", lat = 0)
Pacific  <-  convert_PStoAS(30, DSi = DSi, Ocean = "Pacific", lat = 0)
Indian   <-  convert_PStoAS(30, DSi = DSi, Ocean = "Indian", lat = 0)
Southern <-  convert_PStoAS(30, DSi = DSi, Ocean = "Southern")

matplot(x = DSi, y = cbind(Global, Atlantic, Pacific, Indian, Southern),
pch = 1, xlab = "DSi, micromol/kg", ylab = "Absolute salinity (PS=30)")
legend("topleft",c("Global", "Atlantic", "Pacific", "Indian", "Southern"),
col = 1:5, pch = 1)
``````

marelac documentation built on Sept. 25, 2023, 5:06 p.m.