Skip to content

ecmwf/gribjump

Repository files navigation

GribJump

Static Badge

GribJump is a C++ library for extracting subsets of data from GRIB files, particularly data archived in the FDB.

Important

This software is Incubating and subject to ECMWF's guidelines on Software Maturity.

Installation

Dependencies

Currently, GribJump has the following runtime dependencies:

as well as ecbuild for building.

C++ Library

Building and installing:

   # 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=$</path/to/installations> ${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:

python3 -m pip install --upgrade git+ssh://[email protected]/ecmwf/gribjump.git@master

pygribjump uses 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.

Acknowledgements

Past and current funding and support is listed in the Acknowledgements.