Gibbs Seawater Oceanographic Package of TEOS-10
Project description
gsw Python package
This Python implementation of the Thermodynamic Equation of Seawater 2010 (TEOS-10) is based primarily on numpy ufunc wrappers of the GSW-C implementation. We expect it to replace the original python-gsw pure-python implementation after a brief overlap period. The primary reasons for this change are that by building on the C implementation we reduce code duplication and we gain an immediate update to the 75-term equation. Additional benefits include a major increase in speed, a reduction in memory usage, and the inclusion of more functions. The penalty is that a C (or MSVC C++ for Windows) compiler is required to build the package from source.
Warning: this is for Python >=3.5 only.
Documentation is provided at https://teos-10.github.io/GSW-Python/.
For the core functionality, we use an auto-generated C extension
module to wrap the C functions as numpy
ufuncs,
and then use an
autogenerated Python module to add docstrings and handle masked
arrays. 165 scalar C functions with only double-precision
arguments and return values are wrapped as ufuncs, and 158 of
these are exposed in the gsw
namespace with an additional
wrapper in Python.
A hand-written wrapper is used for one C function, and others are re-implemented directly in Python instead of being wrapped. Additional functions present in GSW-Matlab but not in GSW-C may be re-implemented in Python, but there is no expectation that all such functions will be provided.
The package can be installed from a clone of the repo using
pip install .
. It is neither necessary nor recommended
to run the code generators, and no instructions are provided
for them; their output is
included in the repo. You will need a suitable compiler: gcc or
clang for unix-like systems, or the MSVC compiler set used for Python
itself on Windows. For Windows, some of the source code has been
modified to C++ because the MSVC C compiler does not support the
C99 complex data type used in original GSW-C.
To test, after installation, run "pytest" from the source directory.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for gsw-3.3.1.post1-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b65cdc304131e4833519598eeea9297b7b4e12deecd85b098c4d3f791bb944e8 |
|
MD5 | 66aead99b8979f78caeb519eaeea8079 |
|
BLAKE2b-256 | 3b83a53c94dd1558e30364e7b0d1744d1e5274b9fd10344f795f2c73a691af99 |
Hashes for gsw-3.3.1.post1-cp38-cp38-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d21a42a63ba061710de6dcef7082ffb916429ac9dd4f8343ee4acfa915517e8f |
|
MD5 | 48bd61f37cbaf9d8a79d123349153402 |
|
BLAKE2b-256 | 9ba01b5b13d489932428ddd93b484f36c3d3ed475e5322e0bbad5c8919242dae |
Hashes for gsw-3.3.1.post1-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8a349ee16030d294f82c64279125b1362207ddfd9dce0c7f924a2b77ebc3e1ed |
|
MD5 | 1cf41466cf15cecf72aa2640d9e147f3 |
|
BLAKE2b-256 | 4ade869433eaeb794d079b7bda2f3c5c727700f1f8f9fa5b7f260fcc91e8635d |
Hashes for gsw-3.3.1.post1-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0061756d626b5d18a8995b732a7ac71204502dee29611342a1d1db3db50565d5 |
|
MD5 | 2757f2fcc739ac63f16aad5a089d1db8 |
|
BLAKE2b-256 | 1379756c748d046104492879fc03dfafa1bba98f196fc5e933dbf74c8dbed9b5 |
Hashes for gsw-3.3.1.post1-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd339068b95ee20009dc2542429160c5cccfa3b6fef10fbb1c2a1946f33b3c1d |
|
MD5 | a28275ab7164734df2df7d28245ff372 |
|
BLAKE2b-256 | 4140ff78278f041007dd71fc4b52063ec85559f7163a05fe6c7d69063196aca8 |
Hashes for gsw-3.3.1.post1-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3f99d4a800e3268153c16a7453f60c151f8831d129cba472c38ecb9ef4713cff |
|
MD5 | dcbcd2694ef370ff869602e996ae0424 |
|
BLAKE2b-256 | 9db42e85b3beabb9e3b798c5c0a80ffabb841f2a8de1588bec91b1febb389bc9 |
Hashes for gsw-3.3.1.post1-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 77a8c97e1fa9c6159b539d042404dae86ce31403094ae920a99eefb1e10cc78f |
|
MD5 | e6c2239d7582570f80938b5591d6a24c |
|
BLAKE2b-256 | 94adf2173f3e8692aa3712975bff32b80e03b0ea1c3a0094832bd60ec9642d7d |
Hashes for gsw-3.3.1.post1-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 995d825e925a727dc277a293696285f2218eb562b11f90aadb7284899ccdc84d |
|
MD5 | 25fd97ac6a39dc848324028be67bb8e1 |
|
BLAKE2b-256 | 724642d3b297108f88a1e152515323af6dea379c4e0d31c4b9c9adf722111a3a |
Hashes for gsw-3.3.1.post1-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 40ede3030aea043a2c5e05d23015f18e41ee81716fdda836f9f408de78c2a84a |
|
MD5 | f81c6ff54d4f09aadd8331c6e2affe35 |
|
BLAKE2b-256 | 51a025377d432b322a381fd2e9706bedfd10cfec0276354fb4d4f2974a556dd5 |