This repository is deprecated in favor of https://github.com/TEOS-10/GSW-Python, both packages will install a gsw module that should be virtually identical to use. However, python-gsw is a pure python of the 48-terms equation, while GSW-Python is a c-wrapped alternative for the latest 72-term equation.
This python module is being replaced by a new implementation: GSW-Python, introduced on April 22, 2017.
Python implementation of the Thermodynamic Equation Of Seawater - 2010 (TEOS-10)
This module is a Python alternative to the GSW-Matlab toolbox. The table below shows some function names in the gibbs library and the corresponding function names in the seawater library.
Variable | SeaWater (EOS 80) | Gibbs SeaWater (GSW TEOS 10) |
---|---|---|
Absolute Salinity | NA | gsw.SA_from_SP(SP,p,long,lat) |
Conservative Temperature | NA | gsw.CT_from_t(SA,t,p) |
density (i.e. in situ density) | sw.dens(SP,t,p) | gsw.rho_CT(SA,CT,p), or gsw.rho(SA,t,p) |
potential density | sw.pden(SP,t,p,pr) | gsw.rho_CT(SA,CT,pr) |
potential temperature | sw.ptmp(SP,t,p,pr) | gsw.pt_from_t(SA,t,p,pr) |
\sigma_0, using \theta_o = sw.ptmp(SP,t,p,0) | sw.dens(SP, \theta_o, 0) -1000 kg m^{-3} | gsw.sigma0_CT(SA,CT) |
\sigma_2, using \theta_2 = sw.ptmp(SP,t,p,2000) | sw.dens(SP,\theta_2, 2000) -1000 kg m^{-3} | gsw.sigma2_CT(SA,CT) |
\sigma_4, using \theta_4 = sw.ptmp(SP,t,p,2000) | sw.dens(SP,\theta_4, 4000) -1000 kg m^{-3} | gsw.sigma2_CT(SA,CT) |
specific volume anomaly | sw.svan(SP,t,p) | gsw.specvol_anom_CT(SA,CT,p) |
dynamic height anomaly | -sw.gpan(SP,t,p) | gsw.geo_strf_dyn_height(SA,CT,p,delta_p,interp_style) |
geostrophic velocity | sw.gvel(ga,lat,long) | gsw.geostrophic_velocity(geo_str,long,lat,p) |
N^2 | sw.bfrq(SP,t,p,lat) | gsw.Nsquared(SA,CT,p,lat) |
pressure from height (SW uses depth, not height) | sw.pres(-z,lat) | gsw.p_from_z(z,lat) |
height from pressure (SW outputs depth, not height) | z = -sw.dpth(p,lat) | gsw.z_from_p(p,lat) |
in situ temperature from pt | sw.temp(SP,pt,p,pr) | gsw.pt_from_t(SA,pt,pr,p) |
sound speed | sw.svel(SP,t,p) | gsw.sound_speed(SA,t,p) |
isobaric heat capacity | sw.cp(SP,t,p) | gsw.cp(SA,t,p) |
adiabatic lapse rate* | sw.adtg(SP,t,p) | gsw.adiabatic_lapse_rate(SA,t,p) |
SP from cndr, (PSS 78) | sw.salt(cndr,t,p) | gsw.SP_from_cndr(cndr,t,p) |
cndr from SP, (PSS 78) | sw.cndr(SP,t,p) | gsw.cndr_from_SP(SP,t,p) |
distance | sw.dist(lat,long,units) | gsw.distance(long,lat,p) |
gravitational acceleration | sw.g(lat,z) | gsw.grav(lat,p) |
Coriolis parameter | sw.f(lat) | gsw.f(lat) |
Note that the SW and GSW functions output the adiabatic lapse rate in different units, being K (dbar):math:^{-1} and K Pa^{-1} respectively.
- Bjørn Ådlandsvik
- Eric Firing
- Filipe Fernandes
- Bjørn Ådlandsvik - Testing unit and several bug fixes.
- Eric Firing - Support for masked arrays, re-write of deltaSA.
- Trevor J. McDougall (and all of SCOR/IAPSO WG127) for making available the Matlab version of this software.
- SCOR/IAPSO WG127 for the original GSW-Matlab code.
- This python module is incomplete and should be used with caution.
- The database used in
_delta_SA
comes from the GSW-Matlab version.