gsw_z_from_p {gsw}R Documentation

Height from Pressure

Description

Computation of height (above sea level) from pressure, using the 75-term equation for specific volume.

Usage

gsw_z_from_p(p, latitude, geo_strf_dyn_height, sea_surface_geopotential)

Arguments

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.

Value

height [ m ]

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.

Historical Note

The geo_strf_dyn_height and sea_surface_geopotential parameters were added in GSW-R version 1.0-6.

References

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

See Also

Other things related to depth: gsw_p_from_z()

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)))

[Package gsw version 1.1-1 Index]