• Stars
    star
    183
  • Rank 208,826 (Top 5 %)
  • Language
    C++
  • License
    Apache License 2.0
  • Created almost 6 years ago
  • Updated 28 days 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
392
star
2

climetlab

Python package for easy access to weather and climate data
Python
368
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
185
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
125
star
7

eccodes-python

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

atlas

A library for numerical weather prediction and climate modelling
C++
104
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
54
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
46
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

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
20

polytope

A library for extracting polytope "features" from datacubes
Python
26
star
21

fdb

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

eckit

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

pdbufr

High-level BUFR interface for ecCodes
Python
21
star
24

ecpoint-calibrate

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

caliver

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

anemoi-datasets

Python
16
star
27

ecmwflibs

Python
15
star
28

metview-docs

Source for Metview's documentation on readthedocs
10
star
29

magpye

Jupyter Notebook
10
star
30

ecPoint

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

troika

Python
10
star
32

earthkit-maps

Geospatial visulation tools and templates
Python
9
star
33

aviso

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

anemoi-models

Python
9
star
35

cfgrib.jl

Julia
8
star
36

hda

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

odc

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

multio

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

pyflow

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

multiurl

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

kronos

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

spartacus-surface

Radiative transfer in forests and cities
Fortran
7
star
43

pyeccodes

EXPERIMENTAL - A pure Python GRIB decoder
Python
6
star
44

mir

C++
6
star
45

metkit

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

magics-test

Magics regression test suite
GLSL
6
star
47

pyodc

Python interface for ODC
Python
6
star
48

anemoi-inference

Python
5
star
49

ecbundle

Bundle management tool for CMake projects
Python
4
star
50

jupyter-notebook

Jupyter Notebook image with ECMWF software installed
Dockerfile
3
star
51

covjsonkit

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

hat

Python
3
star
53

polytope-server

Python
3
star
54

ecmwf-data

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

earthkit-meteo

Python
2
star
56

ecflow-light

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

findlibs

Python
2
star
58

anemoi-docs

2
star
59

queueos

Python
2
star
60

atlas-orca

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

pyfdb

Python
2
star
62

anemoi-graphs

Python
2
star
63

climetlab-demo-dataset

Python
1
star
64

atlas-docs

Documentation for Atlas package
Python
1
star
65

magics-styles

Style definitions for Magics plot package
1
star
66

earthkit-regrid

Python
1
star
67

ecquote

Python
1
star
68

homebrew-ecmwf

Homebrew packages for ECMWF software
Ruby
1
star
69

servicelib

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

earthkit-transforms

Python
1
star
71

earthkit-plots

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

ogc-gdc-usecase

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

pyflow-wellies

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

anemoi-utils

Python
1
star
75

earthkit-time

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

anemoi-registry

Python
1
star
77

conflator

Python
1
star
78

.github

Default issue and PR templates for ECMWF repos.
1
star