https://github.com/ecmwf/gribjump
https://github.com/ecmwf/gribjump
fdb feature-extraction grib polytope
Last synced: 6 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/ecmwf/gribjump
- Owner: ecmwf
- License: apache-2.0
- Created: 2023-12-05T21:45:07.000Z (over 1 year ago)
- Default Branch: develop
- Last Pushed: 2024-11-19T17:33:56.000Z (6 months ago)
- Last Synced: 2024-11-19T18:41:22.181Z (6 months ago)
- Topics: fdb, feature-extraction, grib, polytope
- Language: C++
- Homepage:
- Size: 824 KB
- Stars: 1
- Watchers: 11
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# GribJump
GribJump is a C++ library for extracting subsets of data from GRIB files, particularly data archived in the [FDB](https://github.com/ecmwf/fdb).
:warning: **This is a work in progress.** Expect bugs, and for interfaces and functionality to change. Consult the developers before using.
## Installation
### Dependencies
Currently, GribJump has the following runtime dependencies:
- [eccodes](https://github.com/ecmwf/eccodes)
- [eckit](https://github.com/ecmwf/eckit)
- [metkit](https://github.com/ecmwf/metkit)
- [fdb5](https://github.com/ecmwf/fdb)
- [libaec](https://github.com/MathisRosenhauer/libaec)as well as [ecbuild](https://github.com/ecmwf/ecbuild) for building.
### C++ Library
Building and installing:
```bash
# Environment --- Edit as needed
srcdir=$(pwd)
builddir=build
installdir=$HOME/local
# 1. Create the build directory:
mkdir $builddir
cd $builddir# 2. Run ecbuild
ecbuild --prefix=${installdir} -- \
-DENABLE_MEMFS=ON \
-DENABLE_ECCODES_THREADS=ON \
-DENABLE_AEC=ON \
-DCMAKE_INSTALL_PREFIX=$ ${srcdir}
# 3. Compile / Install
make -j10
make install
```A clientside build (which cannot extract data but talks to a server which can) is built using the flag `-DENABLE_GRIBJUMP_LOCAL_EXTRACT=OFF`. This requires only eckit and metkit to be installed.
### Python Library
The python interface, `pygribjump`, can be installed with pip:
```bash
python3 -m pip install --upgrade git+ssh://[email protected]/ecmwf/gribjump.git@master
````pygribjump` uses [findlibs](https://github.com/ecmwf/findlibs) to find an installed `libgribjump` library. You can use `export GRIBJUMP_HOME=/path/to/gribjump/install` to help with finding the library.
See the `pygribjump/example*.py` files for simple use cases.