p: sea pressure [dbar], i.e. absolute pressure [dbar] minus 10.1325 dbar
latitude: latitude in decimal degrees, positive to the north of the equator. (This is called lat in the TEOS-10 Matlab code.)
geo_strf_dyn_height: vector of same length as p and latitude, indicating dynamic height [ m^2/s^2 ]. If not supplied, this defaults to a vector of 0 values, with length matching that of p.
sea_surface_geopotential: vector of same length as p and latitude, indicating geopotential at zero sea pressure [ m^2/s^2 ]. If not supplied, this defaults to a vector of 0 values, with length matching that of p.
Returns
height [ m ]
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.
Historical Note
The geo_strf_dyn_height and sea_surface_geopotential
parameters were added in GSW-R version 1.0-6.
Examples
z <- gsw_z_from_p(c(10,50,125,250,600,1000),4)stopifnot(all.equal(z/1e2, c(-0.099445834469453,-0.497180897012550,-1.242726219409978,-2.484700576548589,-5.958253480356214,-9.920919060719987)))