= {'2m_temperature', 'sea_surface_temperature', 'total_precipitation', 'total_sky_direct_solar_radiation_at_surface', 'surface_net_solar_radiation', '10m_u_component_of_wind', '10m_v_component_of_wind'} iovars
Download Copernicus ERA5 Data from Google Cloud
The AWS bucket is currently off-line, but rumor is it will come back. In the meantime, the data are also on Google Cloud
In this notebook, we will download Copernicus ERA5 Data from a public Google Cloud bucket. Copernicus ERA5 is one of the most well-known reanalysis datasets on modern climate, providing a numerical assessment of the modern climate. The data are provided as an analysis ready (re-gridded) data set. repo on the data. The data.
Variables
There are many variables available; see full list below. For the Indian Ocean Zarr dataset, we collect air temperature at 2m (2m_temperature), sea surface temperature (sea_surface_temperature), total precipitation (total_precipitation), direct solar radiation (total_sky_direct_solar_radiation_at_surface), total thermal radiation (surface_net_solar_radiation) and u and v wind components (10m_u_component_of_wind and 10m_v_component_of_wind). The latter two are used to compute speed and direction later. In addition, we will process the winds into 3 time periods of the day: 0-8 UTC, 9-16 UTC, and 17-24 UTC. This is the capture the dirunal nature of the winds.
Install necessary libraries
import datetime
import matplotlib.pyplot as plt
import os
import xarray as xr
import numpy as np
import pandas as pd
import sys
# you don't need to import gcsfs but need to have it installed
Examine the dataset
This will be fast because we are only loading metadata. It is petabytes of data so we will not load the whole data set into memory.
= xr.open_zarr(
ds 'gs://gcp-public-data-arco-era5/ar/full_37-1h-0p25deg-chunk-1.zarr-v3',
=None,
chunks=dict(token='anon'),
storage_options )
This is hourly data.
ds
<xarray.Dataset> Size: 3PB Dimensions: ( time: 1089864, latitude: 721, longitude: 1440, level: 37) Coordinates: * latitude (latitude) float32 3kB ... * level (level) int64 296B ... * longitude (longitude) float32 6kB ... * time (time) datetime64[ns] 9MB ... Data variables: (12/273) 100m_u_component_of_wind (time, latitude, longitude) float32 5TB ... 100m_v_component_of_wind (time, latitude, longitude) float32 5TB ... 10m_u_component_of_neutral_wind (time, latitude, longitude) float32 5TB ... 10m_u_component_of_wind (time, latitude, longitude) float32 5TB ... 10m_v_component_of_neutral_wind (time, latitude, longitude) float32 5TB ... 10m_v_component_of_wind (time, latitude, longitude) float32 5TB ... ... ... wave_spectral_directional_width_for_swell (time, latitude, longitude) float32 5TB ... wave_spectral_directional_width_for_wind_waves (time, latitude, longitude) float32 5TB ... wave_spectral_kurtosis (time, latitude, longitude) float32 5TB ... wave_spectral_peakedness (time, latitude, longitude) float32 5TB ... wave_spectral_skewness (time, latitude, longitude) float32 5TB ... zero_degree_level (time, latitude, longitude) float32 5TB ...
Show a demo file.
= ds['10m_u_component_of_wind'].sel(latitude=slice(32, -12), longitude=slice(42, 102), time="2000-07-01")
tmp =1).plot() tmp.isel(time
Create a loop to process netCDF files
These are intermediary monthly files for our daily variables. The zarr file is too big to save all at once.
def download_era5_gc(vars, date_start, date_end, lat1=32, lat2=-12, lon1=42, lon2=102, path='/home/jovyan/shared/data/era5-gc'):
"""
vars: era5 variables to write
date_start: formatted as YYYY-MM-DD or numpy.datetime64(
date_end: formatted as YYYY-MM-DD (right-exclusive)
"""
= xr.open_zarr(
fullds 'gs://gcp-public-data-arco-era5/ar/full_37-1h-0p25deg-chunk-1.zarr-v3',
=None,
chunks=dict(token='anon'),
storage_options
)# Slice to lat lon box and time box
= fullds[vars].sel(latitude=slice(lat1, lat2), longitude=slice(lon1, lon2), time=slice(date_start, date_end))
ioera5
= pd.date_range(date_start, date_end, freq="ME")
months for month in months:
print(f'{month.year}-{month.month}', end =", ")
= ioera5.sel(time=month.strftime("%Y-%m"))
ds
# adding calculated variables (direction and speed)
= ds.assign(wind_speed = np.sqrt(ds['10m_u_component_of_wind']**2 + ds['10m_v_component_of_wind']**2))
ds = ds.assign(wind_dir = np.rad2deg(np.arctan2(ds['10m_v_component_of_wind'], ds['10m_u_component_of_wind'])))
ds # coarsen to daily via mean over the 24 hours; this only works because there are not missing hours
= ds.coarsen(time=24).mean(keep_attrs=True).compute()
ds # set to stop warning about serialization due to format of the time element
'units'] = 'minutes since 1900-01-01'
ds.time.encoding[
vars.update({'wind_speed', 'wind_dir'})
for var in vars:
# export
= f'{path}/{var}'
path_var_folder if not os.path.exists(path_var_folder):
os.makedirs(path_var_folder)
= os.path.join(path_var_folder, '{year}{month}.nc')
sliced_data_file_ptrn = sliced_data_file_ptrn.format(year = month.year, month = "{:02d}".format(month.month))
export_file ds[var].to_netcdf(export_file)
Run the function to download the data.
= {'2m_temperature', 'sea_surface_temperature', 'total_precipitation', 'total_sky_direct_solar_radiation_at_surface', 'surface_net_solar_radiation', '10m_u_component_of_wind', '10m_v_component_of_wind'}
iovars "1979-01-01", "2024-04-30") download_era5_gc(iovars,
Adding day versus night wind
There is a strong day versus night spatial pattern of wind. We can look at the total solar radiation to see when the sun is strongest. Note that time is UTC and India is +5:30 so the peak is around 1:30-2pm in India. The peak and shape does not shift much as we are close to the equator.
import xarray as xr
= xr.open_zarr(
ds 'gs://gcp-public-data-arco-era5/ar/full_37-1h-0p25deg-chunk-1.zarr-v3',
=None,
chunks=dict(token='anon'),
storage_options
)# Slice to lat lon box and time box
= ds.sel(latitude=slice(32, -12), longitude=slice(42, 102), time="2000-08-12")
ds1 'total_sky_direct_solar_radiation_at_surface'].mean(dim=["longitude", "latitude"]).plot() ds1[
If we look at the eastward wind, we see the day versus night difference and in particular the coastal winds off the southwest coast of India. Though shown for 2020, these winter and spring diurnal wind patterns are consistent across years. During the summer monsoon, the winds are very strong and we do not see the diurnal pattern.
= ds['10m_u_component_of_wind'].sel(latitude=slice(32, -12), longitude=slice(42, 102), time="2020-12-01").coarsen(time=8).mean()
ds1 ="longitude", y="latitude", col="time", col_wrap=3) ds1.plot(x
= ds['10m_u_component_of_wind'].sel(latitude=slice(32, -12), longitude=slice(42, 102), time="2020-03-12").coarsen(time=8).mean()
ds1 ="longitude", y="latitude", col="time", col_wrap=3) ds1.plot(x
= ds['10m_u_component_of_wind'].sel(latitude=slice(32, -12), longitude=slice(42, 102), time="2020-07-12").coarsen(time=8).mean()
ds1 ="longitude", y="latitude", col="time", col_wrap=3) ds1.plot(x
## Function to get winds at each 8hr block
def download_era5_gc_winds(date_start, date_end, lat1=32, lat2=-12, lon1=42, lon2=102, path='/home/jovyan/shared/data/era5-gc'):
"""
vars: era5 variables to write
date_start: formatted as YYYY-MM-DD or numpy.datetime64(
date_end: formatted as YYYY-MM-DD (right-exclusive)
"""
= xr.open_zarr(
fullds 'gs://gcp-public-data-arco-era5/ar/full_37-1h-0p25deg-chunk-1.zarr-v3',
=None,
chunks=dict(token='anon'),
storage_options
)# Slice to lat lon box and time box
vars = {'10m_u_component_of_wind', '10m_v_component_of_wind'}
= fullds[vars].sel(latitude=slice(lat1, lat2), longitude=slice(lon1, lon2), time=slice(date_start, date_end))
ioera5
= pd.date_range(date_start, date_end, freq="ME")
months for month in months:
print(f'{month.year}-{month.month}', end =", ")
= ioera5.sel(time=month.strftime("%Y-%m"))
ds
# adding calculated variables (direction and speed)
= ds.assign(wind_speed = np.sqrt(ds['10m_u_component_of_wind']**2 + ds['10m_v_component_of_wind']**2))
ds = ds.assign(wind_dir = np.rad2deg(np.arctan2(ds['10m_v_component_of_wind'], ds['10m_u_component_of_wind'])))
ds # coarsen to daily via mean over the 24 hours; this only works because there are not missing hours
= ds.coarsen(time=8).mean(keep_attrs=True).compute()
ds # set to stop warning about serialization due to format of the time element
'units'] = 'minutes since 1900-01-01'
ds.time.encoding[
for var in {'10m_u_component_of_wind', '10m_v_component_of_wind', 'wind_speed', 'wind_dir'}:
for hr in {3, 11, 19}:
= f'{path}/{var}_hr{hr}UTC'
path_var_folder if not os.path.exists(path_var_folder):
os.makedirs(path_var_folder)= os.path.join(path_var_folder, '{year}{month}.nc')
sliced_data_file_ptrn = sliced_data_file_ptrn.format(year = month.year, month = "{:02d}".format(month.month))
export_file =(ds.time.dt.hour == hr)).to_netcdf(export_file) ds[var].isel(time
# Get the data
min().to_pandas(), ioera5.time.max().to_pandas()) download_era5_gc_winds(ioera5.time.
# Get the data
"1979-01-01", "1999-12-31") download_era5_gc_winds(
Variables
name | short name | units | docs |
---|---|---|---|
100m_u_component_of_wind | u100 | m s**-1 | https://codes.ecmwf.int/grib/param-db/228246 |
100m_v_component_of_wind | v100 | m s**-1 | https://codes.ecmwf.int/grib/param-db/228247 |
10m_u_component_of_neutral_wind | u10n | m s**-1 | https://codes.ecmwf.int/grib/param-db/228131 |
10m_u_component_of_wind | u10 | m s**-1 | https://codes.ecmwf.int/grib/param-db/165 |
10m_v_component_of_neutral_wind | v10n | m s**-1 | https://codes.ecmwf.int/grib/param-db/228132 |
10m_v_component_of_wind | v10 | m s**-1 | https://codes.ecmwf.int/grib/param-db/166 |
10m_wind_gust_since_previous_post_processing | fg10 | m s**-1 | https://codes.ecmwf.int/grib/param-db/175049 |
2m_dewpoint_temperature | d2m | K | https://codes.ecmwf.int/grib/param-db/500018 |
2m_temperature | t2m | K | https://codes.ecmwf.int/grib/param-db/500013 |
air_density_over_the_oceans | p140209 | kg m**-3 | https://codes.ecmwf.int/grib/param-db/140209 |
angle_of_sub_gridscale_orography | anor | radians | https://codes.ecmwf.int/grib/param-db/162 |
anisotropy_of_sub_gridscale_orography | isor | ~ | https://codes.ecmwf.int/grib/param-db/161 |
benjamin_feir_index | bfi | dimensionless | https://codes.ecmwf.int/grib/param-db/140253 |
boundary_layer_dissipation | bld | J m**-2 | https://codes.ecmwf.int/grib/param-db/145 |
boundary_layer_height | blh | m | https://codes.ecmwf.int/grib/param-db/159 |
charnock | chnk | ~ | https://codes.ecmwf.int/grib/param-db/148 |
clear_sky_direct_solar_radiation_at_surface | cdir | J m**-2 | https://codes.ecmwf.int/grib/param-db/228022 |
cloud_base_height | cbh | m | https://codes.ecmwf.int/grib/param-db/228023 |
coefficient_of_drag_with_waves | cdww | dimensionless | https://codes.ecmwf.int/grib/param-db/140233 |
convective_available_potential_energy | cape | J kg**-1 | https://codes.ecmwf.int/grib/param-db/59 |
convective_inhibition | cin | J kg**-1 | https://codes.ecmwf.int/grib/param-db/228001 |
convective_precipitation | cp | m | https://codes.ecmwf.int/grib/param-db/228143 |
convective_rain_rate | crr | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/228218 |
convective_snowfall | csf | m of water equivalent | https://codes.ecmwf.int/grib/param-db/239 |
convective_snowfall_rate_water_equivalent | csfr | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/228220 |
downward_uv_radiation_at_the_surface | uvb | J m**-2 | https://codes.ecmwf.int/grib/param-db/57 |
duct_base_height | dctb | m | https://codes.ecmwf.int/grib/param-db/228017 |
eastward_gravity_wave_surface_stress | lgws | N m**-2 s | https://codes.ecmwf.int/grib/param-db/195 |
eastward_turbulent_surface_stress | ewss | N m**-2 s | https://codes.ecmwf.int/grib/param-db/180 |
evaporation | e | m of water equivalent | https://codes.ecmwf.int/grib/param-db/182 |
forecast_albedo | fal | (0 - 1) | https://codes.ecmwf.int/grib/param-db/243 |
forecast_logarithm_of_surface_roughness_for_heat | flsr | ~ | https://codes.ecmwf.int/grib/param-db/245 |
forecast_surface_roughness | fsr | m | https://codes.ecmwf.int/grib/param-db/244 |
fraction_of_cloud_cover | cc | (0 - 1) | https://codes.ecmwf.int/grib/param-db/248 |
free_convective_velocity_over_the_oceans | p140208 | m s**-1 | |
friction_velocity | zust | m s**-1 | https://codes.ecmwf.int/grib/param-db/228003 |
geopotential_at_surface | z | m2 s-2 | https://codes.ecmwf.int/grib/param-db/129 |
gravity_wave_dissipation | gwd | J m**-2 | https://codes.ecmwf.int/grib/param-db/197 |
high_cloud_cover | hcc | (0 - 1) | https://codes.ecmwf.int/grib/param-db/3075 |
high_vegetation_cover | cvh | (0 - 1) | https://codes.ecmwf.int/grib/param-db/28 |
ice_temperature_layer_1 | istl1 | K | https://codes.ecmwf.int/grib/param-db/35 |
ice_temperature_layer_2 | istl2 | K | https://codes.ecmwf.int/grib/param-db/36 |
ice_temperature_layer_3 | istl3 | K | https://codes.ecmwf.int/grib/param-db/37 |
ice_temperature_layer_4 | istl4 | K | https://codes.ecmwf.int/grib/param-db/38 |
instantaneous_10m_wind_gust | i10fg | m s**-1 | https://codes.ecmwf.int/grib/param-db/228029 |
instantaneous_eastward_turbulent_surface_stress | iews | N m**-2 | https://codes.ecmwf.int/grib/param-db/229 |
instantaneous_large_scale_surface_precipitation_fraction | ilspf | (0 - 1) | https://codes.ecmwf.int/grib/param-db/228217 |
instantaneous_moisture_flux | ie | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/232 |
instantaneous_northward_turbulent_surface_stress | inss | N m**-2 | https://codes.ecmwf.int/grib/param-db/230 |
instantaneous_surface_sensible_heat_flux | ishf | W m**-2 | https://codes.ecmwf.int/grib/param-db/231 |
k_index | kx | K | https://codes.ecmwf.int/grib/param-db/260121 |
lake_bottom_temperature | lblt | K | https://codes.ecmwf.int/grib/param-db/228010 |
lake_cover | cl | (0 - 1) | https://codes.ecmwf.int/grib/param-db/26 |
lake_depth | dl | m | https://codes.ecmwf.int/grib/param-db/228007 |
lake_ice_depth | licd | m | https://codes.ecmwf.int/grib/param-db/228014 |
lake_ice_temperature | lict | K | https://codes.ecmwf.int/grib/param-db/228013 |
lake_mix_layer_depth | lmld | m | https://codes.ecmwf.int/grib/param-db/228009 |
lake_mix_layer_temperature | lmlt | K | https://codes.ecmwf.int/grib/param-db/228008 |
lake_shape_factor | lshf | dimensionless | https://codes.ecmwf.int/grib/param-db/228012 |
lake_total_layer_temperature | ltlt | K | https://codes.ecmwf.int/grib/param-db/228011 |
land_sea_mask | lsm | (0 - 1) | https://codes.ecmwf.int/grib/param-db/172 |
large_scale_precipitation | lsp | m | https://codes.ecmwf.int/grib/param-db/3062 |
large_scale_precipitation_fraction | lspf | s | https://codes.ecmwf.int/grib/param-db/50 |
large_scale_rain_rate | lsrr | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/228219 |
large_scale_snowfall | lsf | m of water equivalent | https://codes.ecmwf.int/grib/param-db/240 |
large_scale_snowfall_rate_water_equivalent | lssfr | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/228221 |
leaf_area_index_high_vegetation | lai_hv | m2 m-2 | https://codes.ecmwf.int/grib/param-db/67 |
leaf_area_index_low_vegetation | lai_lv | m2 m-2 | https://codes.ecmwf.int/grib/param-db/66 |
low_cloud_cover | lcc | (0 - 1) | https://codes.ecmwf.int/grib/param-db/3073 |
low_vegetation_cover | cvl | (0 - 1) | https://codes.ecmwf.int/grib/param-db/27 |
maximum_2m_temperature_since_previous_post_processing | mx2t | K | https://codes.ecmwf.int/grib/param-db/201 |
maximum_individual_wave_height | hmax | m | https://codes.ecmwf.int/grib/param-db/140218 |
maximum_total_precipitation_rate_since_previous_post_processing | mxtpr | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/228226 |
mean_boundary_layer_dissipation | mbld | W m**-2 | https://codes.ecmwf.int/grib/param-db/235032 |
mean_convective_precipitation_rate | mcpr | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/235030 |
mean_convective_snowfall_rate | mcsr | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/235056 |
mean_direction_of_total_swell | mdts | degrees | https://codes.ecmwf.int/grib/param-db/140238 |
mean_direction_of_wind_waves | mdww | degrees | https://codes.ecmwf.int/grib/param-db/500072 |
mean_eastward_gravity_wave_surface_stress | megwss | N m**-2 | https://codes.ecmwf.int/grib/param-db/235045 |
mean_eastward_turbulent_surface_stress | metss | N m**-2 | https://codes.ecmwf.int/grib/param-db/235041 |
mean_evaporation_rate | mer | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/235043 |
mean_gravity_wave_dissipation | mgwd | W m**-2 | https://codes.ecmwf.int/grib/param-db/235047 |
mean_large_scale_precipitation_fraction | mlspf | Proportion | https://codes.ecmwf.int/grib/param-db/235026 |
mean_large_scale_precipitation_rate | mlspr | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/235029 |
mean_large_scale_snowfall_rate | mlssr | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/235057 |
mean_northward_gravity_wave_surface_stress | mngwss | N m**-2 | https://codes.ecmwf.int/grib/param-db/235046 |
mean_northward_turbulent_surface_stress | mntss | N m**-2 | https://codes.ecmwf.int/grib/param-db/235042 |
mean_period_of_total_swell | mpts | s | https://codes.ecmwf.int/grib/param-db/140239 |
mean_period_of_wind_waves | mpww | s | https://codes.ecmwf.int/grib/param-db/500074 |
mean_potential_evaporation_rate | mper | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/235070 |
mean_runoff_rate | mror | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/235048 |
mean_sea_level_pressure | msl | Pa | https://codes.ecmwf.int/grib/param-db/151 |
mean_snow_evaporation_rate | mser | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/235023 |
mean_snowfall_rate | msr | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/235031 |
mean_snowmelt_rate | msmr | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/235024 |
mean_square_slope_of_waves | msqs | dimensionless | https://codes.ecmwf.int/grib/param-db/140244 |
mean_sub_surface_runoff_rate | mssror | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/235021 |
mean_surface_direct_short_wave_radiation_flux | msdrswrf | W m**-2 | https://codes.ecmwf.int/grib/param-db/235058 |
mean_surface_direct_short_wave_radiation_flux_clear_sky | msdrswrfcs | W m**-2 | https://codes.ecmwf.int/grib/param-db/235059 |
mean_surface_downward_long_wave_radiation_flux | msdwlwrf | W m**-2 | https://codes.ecmwf.int/grib/param-db/235036 |
mean_surface_downward_long_wave_radiation_flux_clear_sky | msdwlwrfcs | W m**-2 | https://codes.ecmwf.int/grib/param-db/235069 |
mean_surface_downward_short_wave_radiation_flux | msdwswrf | W m**-2 | https://codes.ecmwf.int/grib/param-db/235035 |
mean_surface_downward_short_wave_radiation_flux_clear_sky | msdwswrfcs | W m**-2 | https://codes.ecmwf.int/grib/param-db/235068 |
mean_surface_downward_uv_radiation_flux | msdwuvrf | W m**-2 | https://codes.ecmwf.int/grib/param-db/235027 |
mean_surface_latent_heat_flux | mslhf | W m**-2 | https://codes.ecmwf.int/grib/param-db/235034 |
mean_surface_net_long_wave_radiation_flux | msnlwrf | W m**-2 | https://codes.ecmwf.int/grib/param-db/235038 |
mean_surface_net_long_wave_radiation_flux_clear_sky | msnlwrfcs | W m**-2 | https://codes.ecmwf.int/grib/param-db/235052 |
mean_surface_net_short_wave_radiation_flux | msnswrf | W m**-2 | https://codes.ecmwf.int/grib/param-db/235037 |
mean_surface_net_short_wave_radiation_flux_clear_sky | msnswrfcs | W m**-2 | https://codes.ecmwf.int/grib/param-db/235051 |
mean_surface_runoff_rate | msror | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/235020 |
mean_surface_sensible_heat_flux | msshf | W m**-2 | https://codes.ecmwf.int/grib/param-db/235033 |
mean_top_downward_short_wave_radiation_flux | mtdwswrf | W m**-2 | https://codes.ecmwf.int/grib/param-db/235053 |
mean_top_net_long_wave_radiation_flux | mtnlwrf | W m**-2 | https://codes.ecmwf.int/grib/param-db/235040 |
mean_top_net_long_wave_radiation_flux_clear_sky | mtnlwrfcs | W m**-2 | https://codes.ecmwf.int/grib/param-db/235050 |
mean_top_net_short_wave_radiation_flux | mtnswrf | W m**-2 | https://codes.ecmwf.int/grib/param-db/235039 |
mean_top_net_short_wave_radiation_flux_clear_sky | mtnswrfcs | W m**-2 | https://codes.ecmwf.int/grib/param-db/235049 |
mean_total_precipitation_rate | mtpr | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/235055 |
mean_vertical_gradient_of_refractivity_inside_trapping_layer | dndza | m**-1 | https://codes.ecmwf.int/grib/param-db/228016 |
mean_vertically_integrated_moisture_divergence | mvimd | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/235054 |
mean_wave_direction | mwd | Degree true | https://codes.ecmwf.int/grib/param-db/500185 |
mean_wave_direction_of_first_swell_partition | p140122 | degrees | https://codes.ecmwf.int/grib/param-db/140122 |
mean_wave_direction_of_second_swell_partition | p140125 | degrees | https://codes.ecmwf.int/grib/param-db/140125 |
mean_wave_direction_of_third_swell_partition | p140128 | degrees | https://codes.ecmwf.int/grib/param-db/140128 |
mean_wave_period | mwp | s | https://codes.ecmwf.int/grib/param-db/140232 |
mean_wave_period_based_on_first_moment | mp1 | s | https://codes.ecmwf.int/grib/param-db/140220 |
mean_wave_period_based_on_first_moment_for_swell | p1ps | s | https://codes.ecmwf.int/grib/param-db/140226 |
mean_wave_period_based_on_first_moment_for_wind_waves | p1ww | s | https://codes.ecmwf.int/grib/param-db/140223 |
mean_wave_period_based_on_second_moment_for_swell | p2ps | s | https://codes.ecmwf.int/grib/param-db/140227 |
mean_wave_period_based_on_second_moment_for_wind_waves | p2ww | s | https://codes.ecmwf.int/grib/param-db/140224 |
mean_wave_period_of_first_swell_partition | p140123 | s | https://codes.ecmwf.int/grib/param-db/140123 |
mean_wave_period_of_second_swell_partition | p140126 | s | https://codes.ecmwf.int/grib/param-db/140126 |
mean_wave_period_of_third_swell_partition | p140129 | s | https://codes.ecmwf.int/grib/param-db/140129 |
mean_zero_crossing_wave_period | mp2 | s | https://codes.ecmwf.int/grib/param-db/140221 |
medium_cloud_cover | mcc | (0 - 1) | https://codes.ecmwf.int/grib/param-db/3074 |
minimum_2m_temperature_since_previous_post_processing | mn2t | K | https://codes.ecmwf.int/grib/param-db/202 |
minimum_total_precipitation_rate_since_previous_post_processing | mntpr | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/228227 |
minimum_vertical_gradient_of_refractivity_inside_trapping_layer | dndzn | m**-1 | https://codes.ecmwf.int/grib/param-db/228015 |
model_bathymetry | wmb | m | https://codes.ecmwf.int/grib/param-db/140219 |
near_ir_albedo_for_diffuse_radiation | alnid | (0 - 1) | https://codes.ecmwf.int/grib/param-db/18 |
near_ir_albedo_for_direct_radiation | alnip | (0 - 1) | https://codes.ecmwf.int/grib/param-db/17 |
normalized_energy_flux_into_ocean | phioc | dimensionless | https://codes.ecmwf.int/grib/param-db/140212 |
normalized_energy_flux_into_waves | phiaw | dimensionless | https://codes.ecmwf.int/grib/param-db/140211 |
normalized_stress_into_ocean | tauoc | dimensionless | https://codes.ecmwf.int/grib/param-db/140214 |
northward_gravity_wave_surface_stress | mgws | N m**-2 s | https://codes.ecmwf.int/grib/param-db/196 |
northward_turbulent_surface_stress | nsss | N m**-2 s | https://codes.ecmwf.int/grib/param-db/181 |
ocean_surface_stress_equivalent_10m_neutral_wind_direction | dwi | degrees | https://codes.ecmwf.int/grib/param-db/140249 |
ocean_surface_stress_equivalent_10m_neutral_wind_speed | wind | m s**-1 | https://codes.ecmwf.int/grib/param-db/140245 |
ozone_mass_mixing_ratio | o3 | kg kg**-1 | https://codes.ecmwf.int/grib/param-db/500242 |
peak_wave_period | pp1d | s | https://codes.ecmwf.int/grib/param-db/500190 |
period_corresponding_to_maximum_individual_wave_height | tmax | s | https://codes.ecmwf.int/grib/param-db/140217 |
potential_evaporation | pev | m | https://codes.ecmwf.int/grib/param-db/228251 |
potential_vorticity | pv | K m2 kg-1 s**-1 | https://codes.ecmwf.int/grib/param-db/60 |
precipitation_type | ptype | code table (4.201) | https://codes.ecmwf.int/grib/param-db/260015 |
runoff | ro | m | https://codes.ecmwf.int/grib/param-db/228205 |
sea_ice_cover | siconc | (0 - 1) | https://codes.ecmwf.int/grib/param-db/262001 |
sea_surface_temperature | sst | K | https://codes.ecmwf.int/grib/param-db/151159 |
significant_height_of_combined_wind_waves_and_swell | swh | m | https://codes.ecmwf.int/grib/param-db/500071 |
significant_height_of_total_swell | shts | m | https://codes.ecmwf.int/grib/param-db/140237 |
significant_height_of_wind_waves | shww | m | https://codes.ecmwf.int/grib/param-db/500073 |
significant_wave_height_of_first_swell_partition | p140121 | m | https://codes.ecmwf.int/grib/param-db/140121 |
significant_wave_height_of_second_swell_partition | p140124 | m | https://codes.ecmwf.int/grib/param-db/140124 |
significant_wave_height_of_third_swell_partition | p140127 | m | https://codes.ecmwf.int/grib/param-db/140127 |
skin_reservoir_content | src | m of water equivalent | https://codes.ecmwf.int/grib/param-db/198 |
skin_temperature | skt | K | https://codes.ecmwf.int/grib/param-db/235 |
slope_of_sub_gridscale_orography | slor | ~ | https://codes.ecmwf.int/grib/param-db/163 |
snow_albedo | asn | (0 - 1) | https://codes.ecmwf.int/grib/param-db/228032 |
snow_density | rsn | kg m**-3 | https://codes.ecmwf.int/grib/param-db/33 |
snow_depth | sd | m of water equivalent | https://codes.ecmwf.int/grib/param-db/228141 |
snow_evaporation | es | m of water equivalent | https://codes.ecmwf.int/grib/param-db/44 |
snowfall | sf | m of water equivalent | https://codes.ecmwf.int/grib/param-db/228144 |
snowmelt | smlt | m of water equivalent | https://codes.ecmwf.int/grib/param-db/45 |
soil_temperature_level_1 | stl1 | K | https://codes.ecmwf.int/grib/param-db/139 |
soil_temperature_level_2 | stl2 | K | https://codes.ecmwf.int/grib/param-db/170 |
soil_temperature_level_3 | stl3 | K | https://codes.ecmwf.int/grib/param-db/183 |
soil_temperature_level_4 | stl4 | K | https://codes.ecmwf.int/grib/param-db/236 |
soil_type | slt | ~ | https://codes.ecmwf.int/grib/param-db/43 |
specific_cloud_ice_water_content | ciwc | kg kg**-1 | https://codes.ecmwf.int/grib/param-db/247 |
specific_cloud_liquid_water_content | clwc | kg kg**-1 | https://codes.ecmwf.int/grib/param-db/246 |
specific_humidity | q | kg kg**-1 | https://codes.ecmwf.int/grib/param-db/133 |
standard_deviation_of_filtered_subgrid_orography | sdfor | m | https://codes.ecmwf.int/grib/param-db/74 |
standard_deviation_of_orography | sdor | m | https://codes.ecmwf.int/grib/param-db/160 |
sub_surface_runoff | ssro | m | https://codes.ecmwf.int/grib/param-db/9 |
surface_latent_heat_flux | slhf | J m**-2 | https://codes.ecmwf.int/grib/param-db/147 |
surface_net_solar_radiation | ssr | J m**-2 | https://codes.ecmwf.int/grib/param-db/180176 |
surface_net_solar_radiation_clear_sky | ssrc | J m**-2 | https://codes.ecmwf.int/grib/param-db/210 |
surface_net_thermal_radiation | str | J m**-2 | https://codes.ecmwf.int/grib/param-db/180177 |
surface_net_thermal_radiation_clear_sky | strc | J m**-2 | https://codes.ecmwf.int/grib/param-db/211 |
surface_pressure | sp | Pa | https://codes.ecmwf.int/grib/param-db/500026 |
surface_runoff | sro | m | https://codes.ecmwf.int/grib/param-db/174008 |
surface_sensible_heat_flux | sshf | J m**-2 | https://codes.ecmwf.int/grib/param-db/146 |
surface_solar_radiation_downward_clear_sky | ssrdc | J m**-2 | https://codes.ecmwf.int/grib/param-db/228129 |
surface_solar_radiation_downwards | ssrd | J m**-2 | https://codes.ecmwf.int/grib/param-db/169 |
surface_thermal_radiation_downward_clear_sky | strdc | J m**-2 | https://codes.ecmwf.int/grib/param-db/228130 |
surface_thermal_radiation_downwards | strd | J m**-2 | https://codes.ecmwf.int/grib/param-db/175 |
temperature | t | K | https://codes.ecmwf.int/grib/param-db/500014 |
temperature_of_snow_layer | tsn | K | https://codes.ecmwf.int/grib/param-db/238 |
toa_incident_solar_radiation | tisr | J m**-2 | https://codes.ecmwf.int/grib/param-db/212 |
top_net_solar_radiation | tsr | J m**-2 | https://codes.ecmwf.int/grib/param-db/180178 |
top_net_solar_radiation_clear_sky | tsrc | J m**-2 | https://codes.ecmwf.int/grib/param-db/208 |
top_net_thermal_radiation | ttr | J m**-2 | https://codes.ecmwf.int/grib/param-db/180179 |
top_net_thermal_radiation_clear_sky | ttrc | J m**-2 | https://codes.ecmwf.int/grib/param-db/209 |
total_cloud_cover | tcc | (0 - 1) | https://codes.ecmwf.int/grib/param-db/228164 |
total_column_cloud_ice_water | tciw | kg m**-2 | https://codes.ecmwf.int/grib/param-db/79 |
total_column_cloud_liquid_water | tclw | kg m**-2 | https://codes.ecmwf.int/grib/param-db/78 |
total_column_ozone | tco3 | kg m**-2 | https://codes.ecmwf.int/grib/param-db/206 |
total_column_rain_water | tcrw | kg m**-2 | https://codes.ecmwf.int/grib/param-db/228089 |
total_column_snow_water | tcsw | kg m**-2 | https://codes.ecmwf.int/grib/param-db/228090 |
total_column_supercooled_liquid_water | tcslw | kg m**-2 | https://codes.ecmwf.int/grib/param-db/228088 |
total_column_water | tcw | kg m**-2 | https://codes.ecmwf.int/grib/param-db/136 |
total_column_water_vapour | tcwv | kg m**-2 | https://codes.ecmwf.int/grib/param-db/137 |
total_precipitation | tp | m | https://codes.ecmwf.int/grib/param-db/228228 |
total_sky_direct_solar_radiation_at_surface | fdir | J m**-2 | https://codes.ecmwf.int/grib/param-db/228021 |
total_totals_index | totalx | K | https://codes.ecmwf.int/grib/param-db/260123 |
trapping_layer_base_height | tplb | m | https://codes.ecmwf.int/grib/param-db/228018 |
trapping_layer_top_height | tplt | m | https://codes.ecmwf.int/grib/param-db/228019 |
type_of_high_vegetation | tvh | ~ | https://codes.ecmwf.int/grib/param-db/30 |
type_of_low_vegetation | tvl | ~ | https://codes.ecmwf.int/grib/param-db/29 |
u_component_of_wind | u | m s**-1 | https://codes.ecmwf.int/grib/param-db/500028 |
u_component_stokes_drift | ust | m s**-1 | https://codes.ecmwf.int/grib/param-db/140215 |
uv_visible_albedo_for_diffuse_radiation | aluvd | (0 - 1) | https://codes.ecmwf.int/grib/param-db/16 |
uv_visible_albedo_for_direct_radiation | aluvp | (0 - 1) | https://codes.ecmwf.int/grib/param-db/15 |
v_component_of_wind | v | m s**-1 | https://codes.ecmwf.int/grib/param-db/500030 |
v_component_stokes_drift | vst | m s**-1 | https://codes.ecmwf.int/grib/param-db/140216 |
vertical_integral_of_divergence_of_cloud_frozen_water_flux | p80.162 | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/162057 |
vertical_integral_of_divergence_of_cloud_liquid_water_flux | p79.162 | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/162056 |
vertical_integral_of_divergence_of_geopotential_flux | p85.162 | W m**-2 | https://codes.ecmwf.int/grib/param-db/162085 |
vertical_integral_of_divergence_of_kinetic_energy_flux | p82.162 | W m**-2 | https://codes.ecmwf.int/grib/param-db/162082 |
vertical_integral_of_divergence_of_mass_flux | p81.162 | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/162081 |
vertical_integral_of_divergence_of_moisture_flux | p84.162 | kg m-2 s-1 | |
vertical_integral_of_divergence_of_ozone_flux | p87.162 | kg m-2 s-1 | https://codes.ecmwf.int/grib/param-db/162087 |
vertical_integral_of_divergence_of_thermal_energy_flux | p83.162 | W m**-2 | https://codes.ecmwf.int/grib/param-db/162083 |
vertical_integral_of_divergence_of_total_energy_flux | p86.162 | W m**-2 | https://codes.ecmwf.int/grib/param-db/162086 |
vertical_integral_of_eastward_cloud_frozen_water_flux | p90.162 | kg m-1 s-1 | |
vertical_integral_of_eastward_cloud_liquid_water_flux | p88.162 | kg m-1 s-1 | |
vertical_integral_of_eastward_geopotential_flux | p73.162 | W m**-1 | https://codes.ecmwf.int/grib/param-db/162073 |
vertical_integral_of_eastward_heat_flux | p69.162 | W m**-1 | https://codes.ecmwf.int/grib/param-db/162069 |
vertical_integral_of_eastward_kinetic_energy_flux | p67.162 | W m**-1 | https://codes.ecmwf.int/grib/param-db/162067 |
vertical_integral_of_eastward_mass_flux | p65.162 | kg m-1 s-1 | https://codes.ecmwf.int/grib/param-db/162065 |
vertical_integral_of_eastward_ozone_flux | p77.162 | kg m-1 s-1 | https://codes.ecmwf.int/grib/param-db/162077 |
vertical_integral_of_eastward_total_energy_flux | p75.162 | W m**-1 | https://codes.ecmwf.int/grib/param-db/162075 |
vertical_integral_of_eastward_water_vapour_flux | p71.162 | kg m-1 s-1 | https://codes.ecmwf.int/grib/param-db/162071 |
vertical_integral_of_energy_conversion | p64.162 | W m**-2 | https://codes.ecmwf.int/grib/param-db/162064 |
vertical_integral_of_kinetic_energy | p59.162 | J m**-2 | |
vertical_integral_of_mass_of_atmosphere | p53.162 | kg m**-2 | |
vertical_integral_of_mass_tendency | p92.162 | kg m-2 s-1 | |
vertical_integral_of_northward_cloud_frozen_water_flux | p91.162 | kg m-1 s-1 | |
vertical_integral_of_northward_cloud_liquid_water_flux | p89.162 | kg m-1 s-1 | |
vertical_integral_of_northward_geopotential_flux | p74.162 | W m**-1 | https://codes.ecmwf.int/grib/param-db/162074 |
vertical_integral_of_northward_heat_flux | p70.162 | W m**-1 | https://codes.ecmwf.int/grib/param-db/162070 |
vertical_integral_of_northward_kinetic_energy_flux | p68.162 | W m**-1 | https://codes.ecmwf.int/grib/param-db/162068 |
vertical_integral_of_northward_mass_flux | p66.162 | kg m-1 s-1 | https://codes.ecmwf.int/grib/param-db/162066 |
vertical_integral_of_northward_ozone_flux | p78.162 | kg m-1 s-1 | https://codes.ecmwf.int/grib/param-db/162078 |
vertical_integral_of_northward_total_energy_flux | p76.162 | W m**-1 | https://codes.ecmwf.int/grib/param-db/162076 |
vertical_integral_of_northward_water_vapour_flux | p72.162 | kg m-1 s-1 | https://codes.ecmwf.int/grib/param-db/162072 |
vertical_integral_of_potential_and_internal_energy | p61.162 | J m**-2 | |
vertical_integral_of_potential_internal_and_latent_energy | p62.162 | J m**-2 | https://codes.ecmwf.int/grib/param-db/162062 |
vertical_integral_of_temperature | p54.162 | K kg m**-2 | https://codes.ecmwf.int/grib/param-db/162054 |
vertical_integral_of_thermal_energy | p60.162 | J m**-2 | |
vertical_integral_of_total_energy | p63.162 | J m**-2 | |
vertical_velocity | w | Pa s**-1 | https://codes.ecmwf.int/grib/param-db/500032 |
vertically_integrated_moisture_divergence | vimd | kg m**-2 | https://codes.ecmwf.int/grib/param-db/213 |
volumetric_soil_water_layer_1 | swvl1 | m3 m-3 | https://codes.ecmwf.int/grib/param-db/39 |
volumetric_soil_water_layer_2 | swvl2 | m3 m-3 | https://codes.ecmwf.int/grib/param-db/40 |
volumetric_soil_water_layer_3 | swvl3 | m3 m-3 | https://codes.ecmwf.int/grib/param-db/41 |
volumetric_soil_water_layer_4 | swvl4 | m3 m-3 | https://codes.ecmwf.int/grib/param-db/42 |
wave_spectral_directional_width | wdw | radians | https://codes.ecmwf.int/grib/param-db/140222 |
wave_spectral_directional_width_for_swell | dwps | radians | https://codes.ecmwf.int/grib/param-db/140228 |
wave_spectral_directional_width_for_wind_waves | dwww | radians | https://codes.ecmwf.int/grib/param-db/140225 |
wave_spectral_kurtosis | wsk | dimensionless | https://codes.ecmwf.int/grib/param-db/140252 |
wave_spectral_peakedness | wsp | dimensionless | https://codes.ecmwf.int/grib/param-db/140254 |
wave_spectral_skewness | wss | dimensionless | https://codes.ecmwf.int/grib/param-db/140207 |
zero_degree_level | deg0l | m | https://codes.ecmwf.int/grib/param-db/228024 |