gsw_seaice_fraction_to_freeze_seawater function

Sea ice Fraction to Cool Seawater to Freezing

Sea ice Fraction to Cool Seawater to Freezing

gsw_seaice_fraction_to_freeze_seawater(SA, CT, p, SA_seaice, t_seaice)

Arguments

  • SA: Absolute Salinity [ g/kg ]. The valid range for most gsw functions is 0 to 42 g/kg.
  • CT: Conservative Temperature [ degC ].
  • p: sea pressure [dbar], i.e. absolute pressure [dbar] minus 10.1325 dbar
  • SA_seaice: Absolute Salinity of sea ice [ g/kg ]
  • t_seaice: initial temperature of sea ice [ degC ]

Returns

a list containing SA_freeze, CT_freeze and w_Ih.

Implementation Note

This R function uses a wrapper to a C function contained within the GSW-C system as updated 2022-10-11 at https://github.com/TEOS-10/GSW-C with git commit 657216dd4f5ea079b5f0e021a4163e2d26893371.

The C function uses data from the library/gsw_data_v3_0.mat

file provided in the GSW-Matlab source code, version 3.06-11. Unfortunately, this version of the mat file is no longer displayed on the TEOS-10.org website. Therefore, in the interests of making GSW-R be self-contained, a copy was downloaded from http://www.teos-10.org/software/gsw_matlab_v3_06_11.zip on 2022-05-25, the .mat file was stored in the developer/create_data directory of https://github.com/TEOS-10/GSW-R, and then the dataset used in GSW-R was created based on that .mat file.

Please consult http://www.teos-10.org to learn more about the various TEOS-10 software systems.

Examples

SA <- c( 34.7118, 34.8915, 35.0256, 34.8472, 34.7366, 34.7324) CT <- c( -1.7856, -1.4329, -1.8103, -1.2600, -0.6886, 0.4403) p <- c( 10, 50, 125, 250, 600, 1000) SA_seaice <- c( 5, 4.8, 3.5, 2.5, 1, 0.4) t_seaice <- c(-5.7856, -4.4329, -3.8103, -4.2600, -3.8863, -3.4036) r <- gsw_seaice_fraction_to_freeze_seawater(SA, CT, p, SA_seaice, t_seaice) stopifnot(all.equal(r$SA_freeze, c(34.671271207148074, 34.703449677481224, 34.950192062047861, 34.525277379661880, 34.077349518029997, 33.501836583274191))) stopifnot(all.equal(r$CT_freeze, c(-1.895419711000293, -1.927935638317893, -1.999943183939312, -2.071677444370745, -2.318866154643864, -2.603185031462614))) stopifnot(all.equal(r$w_seaice, c(0.001364063868629, 0.006249283768465, 0.002391958850970, 0.009952101583387, 0.019541106156815, 0.035842627277027)))

References

http://www.teos-10.org/pubs/gsw/html/gsw_seaice_fraction_to_freeze_seawater.html

  • Maintainer: Dan Kelley
  • License: GPL (>= 2) | file LICENSE
  • Last published: 2024-08-19