gsw_enthalpy_second_derivatives {gsw} | R Documentation |
Second Derivatives of Enthalpy
Description
Second Derivatives of Enthalpy
Usage
gsw_enthalpy_second_derivatives(SA, CT, p)
Arguments
SA |
Absolute Salinity [ g/kg ] |
CT |
Conservative Temperature [ degC ] |
p |
sea pressure [dbar], i.e. absolute pressure [dbar] minus 10.1325 dbar |
Value
A list containing h_SA_SA
[ (J/kg)/(g/kg)^2 ], the second derivative of
enthalpy with respect to Absolute Salinity, h_SA_CT
[ (J/kg)/(K*g/kg) ], the derivative of
enthalpy with respect to Absolute Salinity and Conservative Temperature,
and h_CT_CT
[ (J/kg)/degC^2 ], the second derivative of
enthalpy with respect to Conservative Temperature.
Implementation Note
This R function uses a wrapper to a C function contained within the GSW-C system as updated 2021-12-28 at https://github.com/TEOS-10/GSW-C with git commit '98f0fd40dd9ceb0ba82c9d47ac750e935a7d0459'.
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.
References
http://www.teos-10.org/pubs/gsw/html/gsw_enthalpy_second_derivatives.html
Examples
SA <- c(34.7118, 34.8915, 35.0256, 34.8472, 34.7366, 34.7324)
CT <- c(28.7856, 28.4329, 22.8103, 10.2600, 6.8863, 4.4036)
p <- c( 10, 50, 125, 250, 600, 1000)
r <- gsw_enthalpy_second_derivatives(SA, CT, p)
stopifnot(all.equal(r$h_SA_SA, c(0.000080922482023, 0.000404963500641, 0.001059800046742,
0.002431088963823, 0.006019611828423, 0.010225411250217)))
stopifnot(all.equal(r$h_SA_CT, c(0.000130004715129, 0.000653614489248, 0.001877220817849,
0.005470392103793, 0.014314756132297, 0.025195603327700)))
stopifnot(all.equal(r$h_CT_CT, c(0.000714303909834, 0.003584401249266, 0.009718730753139,
0.024064471995224, 0.061547884081343, 0.107493969308119)))