US-GHG-Center / veda-config-ghg

Veda config for GHG
https://ghg-demo.netlify.app
Other
3 stars 15 forks source link

Configure selected datasets to use area-weighted statistics #336

Closed j08lue closed 2 months ago

j08lue commented 2 months ago

Acceptance criteria

j08lue commented 2 months ago

Datasets that should use area-weighted statistics:

  1. Large-scale coverage (~more than 100 km / 1 degree in meridional direction)
  2. Non-equal-area projection (probably geographic coordinates, epsg:4326)

Turns out this includes all our datasets:

from pystac_client import Client
import rasterio
from rasterio.crs import CRS

STAC_API_URL = "https://ghg.center/api/stac"
catalog = Client.open(STAC_API_URL)

collections = list(catalog.get_collections())
for collection in sorted(collections, key=lambda x: x.title):
    print(collection.title)
    item = next(collection.get_all_items())
    for asset_name in item.assets:
        with rasterio.open(item.assets[asset_name].href) as ds:
            if ds.profile["crs"] == CRS.from_epsg(4326):
                if (ds.bounds.top - ds.bounds.bottom) > 1:
                    print((asset_name, ds.profile["crs"], ds.bounds.bottom, ds.bounds.top))

yields

Air-Sea CO2 Flux, ECCO-Darwin Model v5
('co2', CRS.from_epsg(4326), -90.124826629681, 89.875173370319)
CASA GFED3 Land Carbon Flux
('rh', CRS.from_epsg(4326), -90.0, 90.0)
('nee', CRS.from_epsg(4326), -90.0, 90.0)
('npp', CRS.from_epsg(4326), -90.0, 90.0)
('fire', CRS.from_epsg(4326), -90.0, 90.0)
('fuel', CRS.from_epsg(4326), -90.0, 90.0)
GOSAT-based Top-down Methane Budgets.
('post-gas', CRS.from_epsg(4326), -90.5, 89.5)
('post-geo', CRS.from_epsg(4326), -90.5, 89.5)
('post-oil', CRS.from_epsg(4326), -90.5, 89.5)
('post-coal', CRS.from_epsg(4326), -90.5, 89.5)
('post-fire', CRS.from_epsg(4326), -90.5, 89.5)
('post-rice', CRS.from_epsg(4326), -90.5, 89.5)
('prior-gas', CRS.from_epsg(4326), -90.5, 89.5)
('prior-geo', CRS.from_epsg(4326), -90.5, 89.5)
('prior-oil', CRS.from_epsg(4326), -90.5, 89.5)
('post-total', CRS.from_epsg(4326), -90.5, 89.5)
('post-waste', CRS.from_epsg(4326), -90.5, 89.5)
('prior-coal', CRS.from_epsg(4326), -90.5, 89.5)
('prior-fire', CRS.from_epsg(4326), -90.5, 89.5)
('prior-rice', CRS.from_epsg(4326), -90.5, 89.5)
('prior-total', CRS.from_epsg(4326), -90.5, 89.5)
('prior-waste', CRS.from_epsg(4326), -90.5, 89.5)
('post-wetland', CRS.from_epsg(4326), -90.5, 89.5)
('prior-wetland', CRS.from_epsg(4326), -90.5, 89.5)
('post-livestock', CRS.from_epsg(4326), -90.5, 89.5)
('prior-livestock', CRS.from_epsg(4326), -90.5, 89.5)
('post-gas-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('post-geo-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('post-oil-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('post-coal-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('post-fire-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('post-rice-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('prior-gas-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('prior-geo-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('prior-oil-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('post-waste-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('prior-coal-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('prior-rice-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('prior-waste-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('post-wetland-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('prior-wetland-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('post-livestock-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
('prior-livestock-uncertainty', CRS.from_epsg(4326), -90.5, 89.5)
Gridded annual U.S. anthropogenic methane emissions 2012-2020
('dwtd-waste', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('iwtd-waste', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('post-meter', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('refining-ps', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('total-other', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('total-waste', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('surface-coal', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('transport-ps', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('abn-ong-other', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('field-burning', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('production-ps', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('total-methane', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('exploration-ps', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('processing-ngs', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('production-ngs', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('exploration-ngs', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('composting-waste', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('distribution-ngs', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('rice-cultivation', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('total-coal-mines', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('underground-coal', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('manure-management', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('total-agriculture', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('msw-landfill-waste', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('abn-underground-coal', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('enteric-fermentation', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('petro-production-other', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('mobile-combustion-other', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('total-petroleum-systems', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('transmission-storage-ngs', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('industrial-landfill-waste', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('total-natural-gas-systems', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('ferroalloy-production-other', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
('stationary-combustion-other', CRS.from_epsg(4326), 19.99999923487448, 55.00000076512553)
Methane Point Source Plume Complexes
OCO-2 GEOS Assimilated CO2 Concentrations
('xco2', CRS.from_epsg(4326), -90.25, 90.25)
('xco2prec', CRS.from_epsg(4326), -90.25, 90.25)
ODIAC Fossil Fuel CO₂ Emissions
('co2-emissions', CRS.from_epsg(4326), -90.0, 90.0)
Pilot top-down CO2 Budget constrained by the v10 OCO-2 MIP Version 1
('ff', CRS.from_epsg(4326), -90.0, 90.0)
('crop', CRS.from_epsg(4326), -90.0, 90.0)
('wood', CRS.from_epsg(4326), -90.0, 90.0)
('river', CRS.from_epsg(4326), -90.0, 90.0)
('ff-std', CRS.from_epsg(4326), -90.0, 90.0)
('is-nbe', CRS.from_epsg(4326), -90.0, 90.0)
('is-nce', CRS.from_epsg(4326), -90.0, 90.0)
('crop-std', CRS.from_epsg(4326), -90.0, 90.0)
('lnlg-nbe', CRS.from_epsg(4326), -90.0, 90.0)
('lnlg-nce', CRS.from_epsg(4326), -90.0, 90.0)
('wood-std', CRS.from_epsg(4326), -90.0, 90.0)
('river-std', CRS.from_epsg(4326), -90.0, 90.0)
('is-dc-loss', CRS.from_epsg(4326), -90.0, 90.0)
('is-nbe-std', CRS.from_epsg(4326), -90.0, 90.0)
('is-nce-std', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgis-nbe', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgis-nce', CRS.from_epsg(4326), -90.0, 90.0)
('lnlg-dc-loss', CRS.from_epsg(4326), -90.0, 90.0)
('lnlg-nbe-std', CRS.from_epsg(4326), -90.0, 90.0)
('lnlg-nce-std', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgogis-nbe', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgogis-nce', CRS.from_epsg(4326), -90.0, 90.0)
('is-dc-loss-std', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgis-dc-loss', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgis-nbe-std', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgis-nce-std', CRS.from_epsg(4326), -90.0, 90.0)
('lnlg-dc-loss-std', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgogis-dc-loss', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgogis-nbe-std', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgogis-nce-std', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgis-dc-loss-std', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgogis-dc-loss-std', CRS.from_epsg(4326), -90.0, 90.0)
Pilot top-down CO2 Budget constrained by the v10 OCO-2 MIP Version 1 mean for all the years
('ff-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('crop-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('wood-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('river-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('ff-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('is-nbe-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('is-nce-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('crop-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlg-nbe-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlg-nce-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('wood-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('river-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('is-dc-loss-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('is-nbe-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('is-nce-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgis-nbe-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgis-nce-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlg-dc-loss-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlg-nbe-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlg-nce-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgogis-nbe-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgogis-nce-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('is-dc-loss-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgis-dc-loss-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgis-nbe-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgis-nce-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlg-dc-loss-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgogis-dc-loss-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgogis-nbe-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgogis-nce-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgis-dc-loss-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
('lnlgogis-dc-loss-std-meanyear', CRS.from_epsg(4326), -90.0, 90.0)
SEDAC Gridded World Population Data
('population-density', CRS.from_epsg(4326), -90.0, 89.99999999999991)
TM5-4DVar Isotopic CH4 Inverse Fluxes
('total', CRS.from_epsg(4326), -90.0, 90.0)
('fossil', CRS.from_epsg(4326), -90.0, 90.0)
('microbial', CRS.from_epsg(4326), -90.0, 90.0)
('pyrogenic', CRS.from_epsg(4326), -90.0, 90.0)
TM5-4DVar Isotopic CH4 Inverse Fluxes
('total', CRS.from_epsg(4326), -90.0, 90.0)
('fossil', CRS.from_epsg(4326), -90.0, 90.0)
('microbial', CRS.from_epsg(4326), -90.0, 90.0)
('pyrogenic', CRS.from_epsg(4326), -90.0, 90.0)
Wetland Methane Emissions, LPJ-wsl Model (Daily)
('ch4-wetlands-emissions', CRS.from_epsg(4326), -90.0, 90.0)
Wetland Methane Emissions, LPJ-wsl Model (Monthly)
('ch4-wetlands-emissions', CRS.from_epsg(4326), -90.0, 90.0)