Read-only mirror of https://github.com/MeteoSwiss/nwp-fdb-polytope-demo — MeteoSwiss. Issues & pull requests at the source.
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
nnellen 7b6d08c15b
add xarray regridding (#64)
* add xarray regridding
2026-08-21 11:51:13 +02:00
.vscode Update vscode tasks for the single Dockerfile. (#15) 2025-04-08 10:07:00 +02:00
examples add xarray regridding (#64) 2026-08-21 11:51:13 +02:00
host update uenv in kernel 2026-07-24 11:17:12 +02:00
.gitignore fix 2025-11-05 12:10:34 +01:00
.python-version pin python version for pyenv users 2026-08-06 11:36:01 +02:00
DEVELOPMENT.md update fdb notebook 2025-11-05 12:09:41 +01:00
LICENSE Initial commit 2024-04-24 11:20:14 +02:00
make_snapshots.sh update fdb notebook 2025-11-05 12:09:41 +01:00
poetry.lock update poetry lock file 2026-08-06 11:19:55 +02:00
pyproject.toml use fdb-utils 1.5.9 2026-07-21 14:47:28 +02:00
README.md add xarray regridding (#64) 2026-08-21 11:51:13 +02:00

FDB and Polytope model data access and processing

Jupyter Notebook Examples Using MeteoSwiss NWP Data

This repository contains examples for using FDB and Polytope to access ICON forecast data. Additionally, there is a section on how to use earthkit with MeteoSwiss' data.

FDB allows to retrieve any multi-dimensional dataset of the recent real-time ICON NWP forecasts. FDB is designed to access full horizontal fields (feature extraction is not supported) and it is only accessible from within CSCS.

Polytope allows to efficiently extract specific features from the same real-time ICON NWP forecast, such as grid point data, time-series, vertical profiles or polygons. Polytope is an HTTP service and therefore access is not restricted to CSCS (it supports access from LabVM and ACPM).

earthkit is an open-source Python library developed by ECMWF that provides powerful tools for weather and climate data, including reading data, metadata inspection, format conversion, regridding, and plotting.


📓 Notebooks

FDB

The following notebook demonstrates how to access ICON-CH1-EPS & ICON-CH2-EPS model data with FDB:

Polytope

The following notebooks demonstrate various use cases to access ICON-CH1-EPS & ICON-CH2-EPS model data via Polytope:

Feature extraction:

Full field retrieval:

Earthkit onboarding

The following notebook illustrates the core functionalities of earthkit using MeteoSwiss' data.


🚀 Getting Started

Option 1: FDB setup at CSCS

FDB data access requires the FDB libraries. In order to facilitate the use of the notebooks, we provide a pre-built environment with the required libraries, as well as jupyter kernel configuration for VSCode. To download this environment and create/configure a jupyter kernel to use it, run:

bash host/install_kernel.sh

If you would like to develop Python examples outside of the Juypter notebooks, see https://meteoswiss.atlassian.net/wiki/spaces/IW2/pages/144150401/Realtime+FDB+for+ICON#How-to-use-it how to use the FDB uenv environment.

Using VSCode

Ctrl-Shift P -> 'Notebook: Select Notebook Kernel' -> 'Select Another Kernel' -> 'Jupyter Kernel' -> 'Polytope demo'

Tip

  • The python extension of VScode should not be in restricted mode.

  • You might need to reload the window Ctrl-Shit P -> 'Developer: Reload Window' in order to let VSCode recognize the newly installed kernel.

Option 2: Python setup for Polytope

Deploy your own python environment using the following commands. Alternatively, when working at CSCS, you can use Option 1 mentioned above.

  1. Install the poetry environment.
poetry install
  1. Install the kernel.
poetry run python -m ipykernel install --user --name=polytope-env --display-name "polytope demo"

📚 Forecasts available in FDB

Note

The realtime FDB normally contains just the latest day of forecasts. This means the FDB requests should usually use date = today and time as either 0000, 0300, 0600, 0900 etc. (given the forecasts run every 3 hour) for ICON-CH1-ENS and 0000, 0600, 1200 etc. for ICON-CH2-ENS. The data is usually available in the FDB a couple of hours after the forecast start time. If the requests to FDB return no data, see these instructions for how to query yourself which data is currently archived in the FDB.

Development

See DEVELOPMENT.md for how to update and publish notebooks consistently.