EDGAR_v81
EDGAR v8.1 monthly global air pollutant emissions data loader. Provides surface-layer volumetric emission rate (kg m⁻³ s⁻¹) for lev < 2 (first vertical layer), and zero above. Configured per substance (species) and emission sector at instantiation time via {species} and {sector} URL template substitutions.
Description
EDGAR v8.1 monthly global air pollutant emissions data loader. Provides surface-layer volumetric emission rate (kg m⁻³ s⁻¹) for lev < 2 (first vertical layer), and zero above. Configured per substance (species) and emission sector at instantiation time via {species} and {sector} URL template substitutions.
Supported substances: BC, CO, NH3, NMVOC, NOx, OC, PM10, PM2.5, SO2. Data spans 2000–2022 at 0.1°×0.1° global resolution, with monthly temporal resolution.
The gt-p3ep (@register_symbolic interp_unsafe) blocking gap is resolved by the data_loaders §8 mechanism: the runtime handles file download, temporal interpolation, and spatial regridding to the model domain; the model equation references the loader variable directly via EDGAR_v81.flx. No registered functions remain in the migrated component.
Equation: emission = ifelse(lev < 2, EDGAR_v81.flx / Δz * scale, 0) where EDGAR_v81.flx is the emission flux (kg m⁻² s⁻¹) regridded by the runtime from the 0.1°×0.1° EDGAR grid to the model domain, and Δz (default 60 m) is the first-layer height that converts the surface flux to a volumetric rate.
Migrated from EarthSciData.jl@830435a src/edgar_v81_monthly.jl:277 (EDGARv81MonthlyEmis, esm-yp9q).
[esm-3nc.3] Split at 0.7.0 into a pure-I/O loader (edgar_v81_monthly_loader.esm) + this regridding model per RFC pure-io-data-loaders §6/§7; at esm 1.0.0 that file is merged BACK into this one, which now holds both the model and the EDGAR_v81 data source it consumes. The loader is referenced as the subsystem EDGAR_v81; the surface flux is regridded conservatively (cell-centered emissions).
Reference
Crippa, M. et al. (2023). EDGAR v8.1 Global Air Pollutant Emissions (1970–2022). European Commission, Joint Research Centre (JRC). Available: https://edgar.jrc.ec.europa.eu/dataset_ap81
Data source
| Kind | grid |
| URL template | https://jeodpp.jrc.ec.europa.eu/ftp/jrc-opendata/EDGAR/datasets/v81_FT2022_AP_new/monthly/{species}/bkl_{sector}/bkl_{sector}_flx_nc.zip |
| Coverage | 2000-01-01T00:00:00Z → 2022-12-31T23:59:59Z |
| File period | P1Y |
| Sample frequency | P1M |
| Records per file | 12 |
Raw .esm
Raw .esm JSON (this component)
{
"kind": "grid",
"source": {
"url_template": "https://jeodpp.jrc.ec.europa.eu/ftp/jrc-opendata/EDGAR/datasets/v81_FT2022_AP_new/monthly/{species}/bkl_{sector}/bkl_{sector}_flx_nc.zip"
},
"temporal": {
"start": "2000-01-01T00:00:00Z",
"end": "2022-12-31T23:59:59Z",
"file_period": "P1Y",
"frequency": "P1M",
"records_per_file": 12,
"time_variable": "time"
},
"reference": {
"citation": "Crippa, M. et al. (2023). EDGAR v8.1 Global Air Pollutant Emissions (1970–2022). European Commission, Joint Research Centre (JRC). Available: https://edgar.jrc.ec.europa.eu/dataset_ap81",
"url": "https://edgar.jrc.ec.europa.eu/dataset_ap81"
},
"metadata": {
"tags": [
"emissions",
"anthropogenic",
"edgar",
"monthly",
"gridded"
],
"earthscidata_source": "src/edgar_v81_monthly.jl::EDGARv81MonthlyEmisFileSet",
"valid_species": [
"BC",
"CO",
"NH3",
"NMVOC",
"NOx",
"OC",
"PM10",
"PM2.5",
"SO2"
],
"packaging": "zip-of-netcdf",
"unit_note": "Raw NC file may declare units 'kg m-2 s-1'; the loadmetadata function reads var.attrib['units'] and applies to_unit() conversion — default assumed if attribute absent.",
"native_resolution_deg": {
"lon": 0.1,
"lat": 0.1
},
"native_extent": {
"lon": [
-180.0,
180.0
],
"lat": [
-90.0,
90.0
]
},
"proj4_string": "+proj=longlat +datum=WGS84 +no_defs",
"former_regridding": "Pre-migration per-loader regridding block was {fill_value: 0.0, extrapolation: clamp}; at 0.7.0 regridding became a per-variable model `regrid` map; 0.8.0 removed that too — the kernel is now a coupling expression (esm-spec §8.6), and edgar_v81_monthly.esm keeps the per-variable choice verbatim in Model.reference.notes.",
"native_grid_family": "cartesian",
"native_crs_epsg": "EPSG:4326 (geographic longlat / WGS84). At esm 0.8.0 the crs is documentation only — a data source no longer carries a `grid`/crs descriptor; the longlat identity reprojection is applied at the coupling edge via ESD reprojection/longlat.esm (esd-47z.1).",
"native_crs_descriptor": {
"projection": "longlat",
"datum": "WGS84"
},
"native_dimensions": [
"lon",
"lat"
],
"native_dimension_extents": {
"lon": {
"n": 3600,
"spacing": "uniform"
},
"lat": {
"n": 1800,
"spacing": "uniform"
}
},
"native_staggering": "Cell-centered (lon 'center', lat 'center') — the native EDGAR v8.1 0.1°×0.1° lattice is a regular non-staggered raster (the former `grid.description`, preserved verbatim in native_grid_description, said 'cell-centered'). At esm 0.8.0 the regridding kernel is a coupling expression, not a model `regrid` block; the per-variable kernel choice is recorded verbatim in edgar_v81_monthly.esm's Model.reference.notes.",
"native_grid_description": "Native EDGAR v8.1 grid: regular global 0.1°×0.1° longitude/latitude lattice, cell-centered. Geographic (unprojected) crs — the regridding model applies the longlat identity reprojection (ESD reprojection/longlat.esm, esd-47z.1). Migrated from the loader's former DataLoaderSpatial block (proj4 +proj=longlat +datum=WGS84); the loader describes this grid but performs no reprojection or regridding. Documented native geometry: lon ∈ [-180°, 180°] (3600 cells), lat ∈ [-90°, 90°] (1800 cells).",
"migration_note": "esm 0.7.0 -> 0.8.0: removed the `grid` block (family/crs/dimensions/extents/description), which no schema at or after 0.8.0 permits — 0.8.0 deleted the native-grid descriptor outright (esm-spec §8.4; the 1.0.0 DataSource is additionalProperties:false over {kind, source, temporal, determinism, reader_options, select, record_filter, extent, reference, metadata}, with no `grid` key). Nothing was dropped: `family` → native_grid_family; `crs` → native_crs_epsg + native_crs_descriptor (verbatim); `dimensions` → native_dimensions; `extents` (per-dimension cell count + spacing) → native_dimension_extents; `description` → native_grid_description (verbatim). Native grid geometry is now ordinary data — a source exposes its coordinates/connectivity/metric arrays as ordinary `file_variable`s bound to consuming parameters, and reprojection/regridding are ordinary `aggregate` coupling expressions (esm-spec §8.6), not a loader `grid` or a model `regrid` block. No other field changed.",
"merged_from": "components/earthsci_data/edgar_v81_monthly_loader.esm",
"merge_note": "Merged from the standalone pure-I/O file components/earthsci_data/edgar_v81_monthly_loader.esm, which is deleted by the same commit. The 0.x `X.esm` + `X_loader.esm` split existed only because a loader was a COMPONENT and a {\"ref\"} target had to contain exactly one component. At esm 1.0.0 a data source is NOT a component, not a coupling endpoint and not a scoped-name path root, and `data_sources` no longer counts toward a file's top-level system count — so one file may hold a model AND the data_sources that model consumes and still be mountable by {\"ref\"}. This registry entry is byte-identical to the one the deleted file declared (it was already mirrored here so this document would validate), and the deleted file's own top-level metadata — name, description, tags, created, authors, references — is preserved verbatim in `merged_file_metadata` so no provenance, citation or migration note is lost.",
"merged_file_metadata": {
"name": "EDGAR_v81_loader",
"description": "Pure-I/O data loader for EDGAR v8.1 monthly global air-pollutant emissions. Supplies the surface emission flux (kg m⁻² s⁻¹) for one substance/sector (selected at instantiation via {species}/{sector} URL-template substitution) on the native 0.1°×0.1° global longitude/latitude grid, monthly, 2000–2022.\n\nThis is the loader half of the edgar_v81_monthly loader+regridding-model split (RFC pure-io-data-loaders §4.1/§7; bead esm-3nc.3). It is PURE I/O: it declares its source (url_template), the file variable it reads (flx, with units), and its temporal cadence. It declares NO grid: esm 0.8.0 removed the loader `grid`/GDD-Grid descriptor outright, so the native 0.1°×0.1° longlat/WGS84 lattice is recorded as documentation in the data source's metadata and is materialized downstream by `aggregate` coupling expressions. It performs NO reprojection and NO regridding — those are per-variable concerns of the regridding model (components/earthsci_data/edgar_v81_monthly.esm), which references this file as a subsystem via {\"ref\": \"./edgar_v81_monthly_loader.esm\"}.\n\nThe removed co-located blocks: the old DataLoaderSpatial block (proj4 crs string / grid_type / staggering / resolution / extent) became the GDD `grid` at 0.7.0 and, at 0.8.0, metadata documentation (see metadata.migration_note on the data source); the old per-loader `regridding` block (fill_value / extrapolation) is gone, and so is the model-level `regrid` map that briefly replaced it — at 0.8.0 the regridding kernel is a coupling expression, and edgar_v81_monthly.esm keeps the per-variable kernel choice verbatim in Model.reference.notes. Because a `temporal` block is present, this loader seeds DISCRETE cadence (ess-v9a.5): the runtime refreshes the monthly file buffers.\n\nMigrated from EarthSciData.jl@830435a src/edgar_v81_monthly.jl:91-338 (EDGARv81MonthlyEmisFileSet). Split out of the pre-migration components/earthsci_data/edgar_v81_monthly.esm (esm-yp9q).",
"tags": [
"earthsci_data",
"emissions",
"anthropogenic",
"edgar",
"monthly",
"data_loader",
"surface_flux",
"pure-io",
"longlat"
],
"created": "2026-06-25T00:00:00Z",
"authors": [
"EarthSciData.jl contributors",
"EarthSciModels migration (esm-3nc.3)"
],
"references": [
{
"citation": "Crippa, M., Guizzardi, D., Butler, T., Keating, T., Wu, R., Rosenveld, M., Jonescu, M., Muntean, M., Schaaf, E., Oreggioni, G., Gonzalez Ortiz, A., Textor, R., Sarigiannis, D., Muntean, M. (2023). EDGAR v8.1 Global Air Pollutant Emissions (1970–2022). European Commission, Joint Research Centre (JRC). Available: https://edgar.jrc.ec.europa.eu/dataset_ap81",
"url": "https://edgar.jrc.ec.europa.eu/dataset_ap81"
},
{
"citation": "Source: EarthSciData.jl@830435a065f27e99f10bba91107ca1730322cc6b:src/edgar_v81_monthly.jl:91-338 (EDGARv81MonthlyEmisFileSet, EDGARv81MonthlyEmis constructor). Test: test/edgar_v81_monthly_test.jl."
}
]
}
}
}