• Stars
    star
    183
  • Rank 210,154 (Top 5 %)
  • Language
    C++
  • License
    Apache License 2.0
  • Created almost 6 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

ECMWF's GRIB and BUFR decoding/encoding library

ecCodes

Linux & macOS: master Linux & macOS: develop

Windows: master Windows: develop

ecCodes is a package developed by ECMWF which provides an application programming interface and a set of tools for decoding and encoding messages in the following formats:

  • WMO FM-92 GRIB edition 1 and edition 2
  • WMO FM-94 BUFR edition 3 and edition 4
  • WMO GTS abbreviated header (only decoding)

A useful set of command line tools provide quick access to the messages. C, Fortran 90 and Python interfaces provide access to the main ecCodes functionality.

ecCodes is an evolution of GRIB API. It is designed to provide the user with a simple set of functions to access data from several formats with a key/value approach.

Documentation can be found here: https://confluence.ecmwf.int/display/ECC/ecCodes+Home

INSTALLATION

  1. Download ecCodes from https://confluence.ecmwf.int/display/ECC/Releases

  2. Unpack distribution:

    tar -xzf eccodes-x.y.z-Source.tar.gz
    
  3. Create a separate directory to build ecCodes:

    mkdir build
    cd build
    
  4. Run cmake pointing to the source and specify the installation location:

    cmake  ../eccodes-x.y.z-Source -DCMAKE_INSTALL_PREFIX=/path/to/where/you/install/eccodes
    

    It is strongly recommended that you install into a clean directory

  5. Compile, test and install:

    make
    ctest
    make install
    

To add the Python3 bindings, use pip3 install from PyPI as follows:

pip3 install eccodes

or

pip3 install --install-option="--prefix=/path/to/where/you/install/eccodes" eccodes

For more details, please see: https://confluence.ecmwf.int/display/ECC/ecCodes+installation

If you encounter any problems please send an e-mail with your problem to:

[email protected]

COPYRIGHT AND LICENSE

(C) Copyright 2005- ECMWF.

This software is licensed under the terms of the Apache Licence Version 2.0 which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.

In applying this licence, ECMWF does not waive the privileges and immunities granted to it by virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction.

More Repositories

1

cfgrib

A Python interface to map GRIB files to the NetCDF Common Data Model following the CF Convention using ecCodes
Python
398
star
2

climetlab

Python package for easy access to weather and climate data
Python
373
star
3

cdsapi

Python API to access the Copernicus Climate Data Store (CDS)
Python
223
star
4

notebook-examples

Example notebooks showing how to work with ECMWF services and data
Jupyter Notebook
192
star
5

ecmwf-opendata

A package to download ECMWF open data
Python
162
star
6

metview-python

Python interface to Metview meteorological workstation and batch system
Python
126
star
7

eccodes-python

Python interface to the ecCodes GRIB/BUFR decoder/encoder
Python
113
star
8

atlas

A library for numerical weather prediction and climate modelling
C++
110
star
9

ecmwf-api-client

Python API to access ECMWF archive
Python
66
star
10

thermofeel

thermofeel is a library to calculate human thermal comfort indexes
Python
65
star
11

magics

Plotting package to visualise meteorological data in GRIB, NetCDF, BUFR and ODB format.
Jupyter Notebook
56
star
12

earthkit-data

A format-agnostic Python interface for geospatial data
Python
53
star
13

magics-python

Python interface to Magics meteorological plotting package
Python
49
star
14

skinnywms

Lightweight WMS server for serving maps of netCDF and GRIB data
Python
47
star
15

earthkit

Python tools to work with weather and climate data
Python
40
star
16

ecflow

ECMWF's workflow manager
C++
40
star
17

infero

A lower-level API for Machine Learning inference in operations
C++
35
star
18

fckit

A Fortran toolkit for interoperating Fortran with C/C++
Python
29
star
19

polytope

A library for extracting polytope "features" from datacubes
Python
28
star
20

anemoi-datasets

Python
28
star
21

ecbuild

A CMake-based build system, consisting of a collection of CMake macros and functions that ease the managing of software build systems
CMake
26
star
22

fdb

Fdb is a domain-specific object store for meteorological objects
C++
24
star
23

pdbufr

High-level BUFR interface for ecCodes
Python
23
star
24

eckit

A C++ toolkit that supports development of tools and applications at ECMWF.
C++
23
star
25

anemoi-models

Python
21
star
26

ecpoint-calibrate

Interactive GUI (developed in Python) for calibration and conditional verification of numerical weather prediction model outputs.
JavaScript
21
star
27

caliver

caliver: CALIbration and VERification of gridded fire danger models
R
18
star
28

ecmwflibs

Python
15
star
29

anemoi-inference

Python
11
star
30

metview-docs

Source for Metview's documentation on readthedocs
10
star
31

magpye

Jupyter Notebook
10
star
32

ecPoint

Post-processing system that provides probabilistic forecasts at point scale.
10
star
33

troika

Python
10
star
34

anemoi-graphs

Python
10
star
35

anemoi-training

Python
9
star
36

aviso

Time-critical notification system designed to trigger users' workflows across HPC and Cloud systems
Python
9
star
37

earthkit-maps

Geospatial visulation tools and templates
Python
9
star
38

cfgrib.jl

Julia
8
star
39

mir

C++
8
star
40

pyflow

A high level Python interface to ecFlow allowing the creation of ecFlow suites in a modular and "pythonic" way
Jupyter Notebook
8
star
41

hda

API to harmonised data access for DIAS/WEkEO
Python
8
star
42

odc

Package to read/write ODB data
C++
8
star
43

anemoi-docs

7
star
44

multio

MultIO is a runtime-configurable multiplexer for Weather Model output of GRIB data
Fortran
7
star
45

multiurl

A package to download several URL as one, as well as supporting multi-part URLs.
Python
7
star
46

kronos

Kronos provides tools for analysing profiling information, model and generating portable HPC workloads
Python
7
star
47

spartacus-surface

Radiative transfer in forests and cities
Fortran
7
star
48

pyeccodes

EXPERIMENTAL - A pure Python GRIB decoder
Python
6
star
49

metkit

Toolkit for manipulating and describing meteorological objects, implementing the MARS language and associated processing and semantics.
C++
6
star
50

magics-test

Magics regression test suite
GLSL
6
star
51

pyodc

Python interface for ODC
Python
6
star
52

earthkit-meteo

Python
4
star
53

ecbundle

Bundle management tool for CMake projects
Python
4
star
54

anemoi-utils

Python
4
star
55

anemoi-registry

Python
4
star
56

jupyter-notebook

Jupyter Notebook image with ECMWF software installed
Dockerfile
3
star
57

covjsonkit

A library for encoding and decoding coverageJSON files/objects of meteorlogical features such as vertical profiles and time series.
Python
3
star
58

hat

Python
3
star
59

polytope-server

Python
3
star
60

ecmwf-data

A package to inspect and process ECMWF open data
Jupyter Notebook
3
star
61

ecflow-light

A light ecFlow UDP and HTTP client
C++
2
star
62

findlibs

Python
2
star
63

queueos

Python
2
star
64

atlas-orca

atlas-orca plugin for Atlas, providing support for ORCA grids and mesh generation
C++
2
star
65

pyfdb

Python
2
star
66

climetlab-demo-dataset

Python
1
star
67

atlas-docs

Documentation for Atlas package
Python
1
star
68

magics-styles

Style definitions for Magics plot package
1
star
69

earthkit-regrid

Python
1
star
70

ecquote

Python
1
star
71

homebrew-ecmwf

Homebrew packages for ECMWF software
Ruby
1
star
72

servicelib

A services framework for Python (EXPERIMENTAL!!)
Python
1
star
73

earthkit-transforms

Python
1
star
74

earthkit-plots

Visualisation tools and templates designed for earth science data.
Python
1
star
75

ogc-gdc-usecase

A collection of scripts for access to test data for the OGC GeoDataCubes working group
Jupyter Notebook
1
star
76

pyflow-wellies

A set of tools to build consistent pyflow suites.
Python
1
star
77

earthkit-time

Date and time manipulation routines for the use of weather data
Python
1
star
78

conflator

Python
1
star
79

.github

Default issue and PR templates for ECMWF repos.
1
star