Skip to main content

era5_to_int

A simple utility for converting ERA5 netCDF files to the WPS intermediate format.

This has been packaged up and slightly modified from the original NCAR era5_to_int scripts. Huge thanks to NCAR and to Michael Duda and Anthony Islas for writing the scripts!

Installation

You can install the command line utility in a variety of ways. One of the easiest and most common is to use pipx:

pipx install era5_to_int

Overview

The era5_to_int utility converts ERA5 pressure-level netCDF files to the WRF Pre-processing System (WPS) intermediate file format, permitting the use of these data with either the Weather Research and Forecasting (WRF) model or the Model for Prediction Across Scales - Atmosphere (MPAS-A).

The required command-line arguments are the path to the local files and the start and end datetimes of ERA5 files to convert. For example:

era5_to_int /root/path/to/era5/ 2024-05-01_00 2024-05-02_00

or if you're using a different time format, then you'll need to put quotes around the datetimes:

era5_to_int /root/path/to/era5/ "2024-05-01 00" "2024-05-02 00"

The directory structure must be the same as NCAR's ERA5 AWS S3 bucket. This is the recommended place to download the ERA5 data since it's free and fast.

Conversion of a range of datetimes is possible through the use of additional command-line arguments as described in the Usage section.

The following surface fields from the d633 datasets are handled by the script:

Field Dataset Horiz. grid Num. levels
SOILGEO d633000 0.25-deg Lat-Lon 1
SP d633006 0.25-deg Lat-Lon 1
MSL d633000 0.25-deg Lat-Lon 1
VAR_2T d633000 0.25-deg Lat-Lon 1
VAR_2D d633000 0.25-deg Lat-Lon 1
VAR_10U d633000 0.25-deg Lat-Lon 1
VAR_10V d633000 0.25-deg Lat-Lon 1
RSN d633000 0.25-deg Lat-Lon 1
SD d633000 0.25-deg Lat-Lon 1
LSM d633000 0.25-deg Lat-Lon 1
SSTK d633000 0.25-deg Lat-Lon 1
SKT d633000 0.25-deg Lat-Lon 1
SWVL1 d633000 0.25-deg Lat-Lon 1
SWVL2 d633000 0.25-deg Lat-Lon 1
SWVL3 d633000 0.25-deg Lat-Lon 1
SWVL4 d633000 0.25-deg Lat-Lon 1
STL1 d633000 0.25-deg Lat-Lon 1
STL2 d633000 0.25-deg Lat-Lon 1
STL3 d633000 0.25-deg Lat-Lon 1
STL4 d633000 0.25-deg Lat-Lon 1
CI d633000 0.25-deg Lat-Lon 1

When pressure-level (isobaric) ERA5 files are being processed, the following atmospheric fields are handled:

Field Dataset Horiz. grid Num. levels
Z d633000 0.25-deg Lat-Lon 37
Q d633000 0.25-deg Lat-Lon 37
T d633000 0.25-deg Lat-Lon 37
U d633000 0.25-deg Lat-Lon 37
V d633000 0.25-deg Lat-Lon 37

As fields are converted from netCDF to intermediate format, their names are also converted to match WPS and MPAS-A expectations.

Downloading and spatial clipping the ERA5 data

This command line utility isn't very helpful if you don't have the ERA5 data. There is a docker image made specifically to download the ERA5 data from the AWS S3 bucket maintained by NCAR. Then the container will clip the global files to a user-defined region to substantially shrink the files. It will save the clipped files to a directory or optionally upload it to another S3 system defined by the user.

You can find the github repo here: https://github.com/envlib/era5-download

It will download all of the files necessary to run the era5_to_int utility.

Usage

The required command-line arguments are the path to the local files and the start and end datetimes of ERA5 files to convert. For example:

era5_to_int /root/path/to/era5/ 2024-05-01_00 2024-05-02_00

Upon successful completion, an intermediate file with the prefix ERA5 is created in the current working directory; for example, ERA5:2024-05-01_00.

By default, fields are converted at a six-hourly interval, and a different interval may be specified with the option -h. For example, to convert data at a three-hourly interval for the month of May 2024:

era5_to_int -h 3 /root/path/to/era5/ 2024-05-01_00 2024-05-02_00

Also by default, all variables required to run WRF are processed. If only a selection of variables is required, then use the --variables option:

era5_to_int --variables LANDSEA,SEAICE,SKINTEMP /root/path/to/era5/ 2024-05-01_00 2024-05-02_00

If you want all variables except a few, use --skip-vars (composes with --variables if both are given). Skipped variables do not need their ERA5 NetCDF files on disk, so this is useful when sourcing a field from elsewhere — for example, providing SST and sea ice from a higher-resolution product:

era5_to_int --skip-vars SST,SEAICE /root/path/to/era5/ 2024-05-01_00 2024-05-02_00

Usage help is provided by running the era5_to_int with the --help argument.

Metadata

Release files for era5_to_int 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for era5_to_int 0.4.0
File Size Uploaded
era5_to_int-0.4.0.tar.gz 23.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for era5_to_int 0.4.0
File Interpreter ABI Platform
era5_to_int-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 45.9 kB

Release files / era5_to_int-0.4.0.tar.gz

Download URL era5_to_int-0.4.0.tar.gz
Size 23.4 kB
Tags Source
SHA-256 checksum
How to use checksums
1ca99dc1bd9943a914b5776dc5f87c7aefc590f8ec2888eeb4dfc3be9965359d
BLAKE2b-256 checksum
How to use checksums
043fbcc2b5ad4f5d151283171faf41e70f88368e464e78e5fa551a629c0126a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.7

Release files / era5_to_int-0.4.0-py3-none-any.whl

Download URL era5_to_int-0.4.0-py3-none-any.whl
Size 22.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1c678d5e1dcd6b845f532af321de63d84cd5369b05fd0d8070a354f5b17cb1ac
BLAKE2b-256 checksum
How to use checksums
a2ac4c80fd5a535d510142b95996600cb6a2961c2817cf2056946ddd8fb236d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.7

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page