GeoCAT-f2py wraps, in Python, the compiled language implementations of some of the computational functions found under the GeoCAT-comp umbrella.
Project description
CI | |
---|---|
Docs | |
Package | |
License | |
Citing |
GeoCAT-comp is both the whole computational component of the GeoCAT project and a single Github repository as described in GeoCAT-comp. As the computational component of GeoCAT, GeoCAT-comp provides implementations of computational functions for operating on geosciences data. Many of these functions originated in NCL are pivoted into Python with the help of GeoCAT-comp; however, developers are welcome to come up with novel computational functions for geosciences data.
Many of the computational functions in GeoCAT are implemented in a pure Python fashion. However, there are some others that are implemented in Fortran but wrapped up in Python. To facilitate contribution, the whole GeoCAT-comp structure is split into two repositories with respect to being pure-Python or Python with compiled codes (i.e. Fortran) implementations. While pure Python implementation as well as user API are implemented within GeoCAT-comp, Python codes that calls the Fortran functionality with the help of Numpy's f2py are handled within GeoCAT-f2py (i.e. this repository).
GeoCAT-f2py
GeoCAT-f2py wraps, in Python, the compiled language implementations of some of the computational functions found under the GeoCAT-comp umbrella. The compiled language functions contained in GeoCAT-f2py (i.e. this repository) as Fortran subroutines are wrapped up in corresponding Python wrapper files in the same repository with the help of Numpy.f2py's signature files (.pyf).
Not all computational functions in GeoCAT computational component have compiled language implementations; therefore, developers basing their implementations entirely in Python need not concern themselves with this repo; instead, they should engage with GeoCAT-comp repo as it invisibly imports GeoCAT-f2py. However, for those functions that are implemented in Fortran, this repo provides a Python interface to those functions via a Numpy.f2py wrapper.
Documentation
GeoCAT-comp documentation on Read the Docs
Installation and build instructions
Please see our documentation for installation and build instructions.
Xarray interface vs NumPy interface
GeoCAT-f2py provides a high-level Xarray interface under the
geocat.f2py
namespace. However, a stripped-down NumPy interface is used under the hood to bridge
the gap between NumPy arrays and the compiled language data structures. These functions are
accessible under the geocat.comp.f2py
namespace, but are minimally documented and are
intended primarily for internal use.
Citing GeoCAT-f2py
NOTE: If you used GeoCAT-f2py through GeoCAT-comp, it is recommended that you cite GeoCAT-comp. Please refer to GeoCAT-comp README for that purpose or GeoCAT Citation page for general information about citing GeoCAT software packages.
Hiwever, if you used GeoCAT-f2py as a standalomne software tool, cite GeoCAT-f2py using the following text:
<> Visualization & Analysis Systems Technologies. (Year). Geoscience Community Analysis Toolkit (GeoCAT-f2py version <version>) [Software]. Boulder, CO: UCAR/NCAR - Computational and Informational System Lab. doi:10.5065/A8PP-4358.
Update the GeoCAT-f2py version and year as appropriate. For example:
<> Visualization & Analysis Systems Technologies. (2021). Geoscience Community Analysis Toolkit (GeoCAT-f2py version 2021.04.0) [Software]. Boulder, CO: UCAR/NCAR - Computational and Informational System Lab. doi:10.5065/A8PP-4358.
For further information, please refer to GeoCAT homepage - Citation.
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 Distribution
Built Distribution
Hashes for geocat.f2py-2021.7.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4577d95d8eb3e87edc50f447535480ad3b2be39b78a4d6caead9e521ca42c228 |
|
MD5 | 0826ad7850af30032307eca4cc7ce968 |
|
BLAKE2b-256 | b4983d9b7111cbc3b2b19e2a3b5bb06f7903533f9ba365015cf06c5da1ab2343 |