Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Getting ready for test implementation #1

Open
j08lue opened this issue Nov 7, 2024 · 0 comments
Open

Getting ready for test implementation #1

j08lue opened this issue Nov 7, 2024 · 0 comments

Comments

@j08lue
Copy link

j08lue commented Nov 7, 2024

What is needed to get this extension spec into a state that is ready for a first spin with OS-C Hazard model runs and STAC export in a format our application can build against?

My ideas:

  1. Review spec for completeness? That would be against the current OS-C Hazard model output (see below) or any authoritative external reference about climate hazard taxonomy
  2. Add examples - easier to read than JSON Schema 😅
  3. Distinguish between information that should be part of the spec and those that may be too implementation specific but are still needed for clients to make sense of the described data, e.g. simulated years or scenarios?

Sample OS-C Hazard model generated STAC w/o extension

{
    "type": "Feature",
    "stac_version": "1.0.0",
    "stac_extensions": [],
    "id": "chronic_heat_osc_v2_days_tas_above_20c_ukcp18_rcp85_2030",
    "geometry": {
        "type": "Polygon",
        "coordinates": [
            [
                [
                    -180.0,
                    85.0
                ],
                [
                    180.0,
                    85.0
                ],
                [
                    180.0,
                    -60.0
                ],
                [
                    -180.0,
                    -60.0
                ],
                [
                    -180.0,
                    85.0
                ]
            ]
        ]
    },
    "bbox": [
        -180.0,
        -60.0,
        180.0,
        85.0
    ],
    "properties": {
        "osc-hazard:hazard_type": "ChronicHeat",
        "osc-hazard:group_id": "",
        "osc-hazard:path": "chronic_heat/osc/v2/days_tas_above_20c_ukcp18_rcp85_2030",
        "osc-hazard:indicator_id": "days_tas/above/20c",
        "osc-hazard:indicator_model_id": null,
        "osc-hazard:indicator_model_gcm": "ukcp18",
        "osc-hazard:params": {
            "temp_c": [
                "20",
                "25",
                "28",
                "30",
                "32",
                "35",
                "40",
                "45",
                "50",
                "55"
            ],
            "gcm": [
                "ukcp18"
            ]
        },
        "osc-hazard:display_name": "Days with average temperature above 20\u00b0C/ukcp18",
        "osc-hazard:display_groups": [
            "Days with average temperature above"
        ],
        "osc-hazard:description": "Days per year for which the average near-surface temperature 'tas' is above a threshold specified in \u00b0C.\n\n$$\nI =  \\frac{365}{n_y} \\sum_{i = 1}^{n_y} \\boldsymbol{\\mathbb{1}}_{\\; \\, T^{avg}_i > T^\\text{ref}} \\nonumber\n$$\n\n$I$ is the indicator, $T^\\text{avg}_i$ is the daily average near-surface temperature for day index $i$ in \u00b0C, $n_y$ is the number of days in the year\nand $T^\\text{ref}$ is the reference temperature.\n\nUK Climate Projections (UKCP) by the [Met Office Hadley Centre](https://www.metoffice.gov.uk/research/approach/collaboration/ukcp), sourced from the [Centre for Environmental Data Analysis (CEDA)](http://catalogue.ceda.ac.uk/?q=ukcp18&record_types=Observation&sort_by=relevance). Projections until 2100 on global (60km), 2080 on regional (12km) and local (5km and 2.2km) scales, for a high emissions scenario, RCP8.5.\n\nIndicators are generated for periods: 2030 (2020-2040), 2040 (2030-2050), 2050 (2040-2060), 2060 (2050-2070), 2070 (2060-2080), 2080 (2070-2090), and 2090 (2080-2100).",
        "osc-hazard:map": {
            "colormap": {
                "min_index": 1,
                "min_value": 0.0,
                "max_index": 255,
                "max_value": 100.0,
                "name": "heating",
                "nodata_index": 0,
                "units": "days/year"
            },
            "path": "days_tas_above_20c_ukcp18_rcp85_2030_map",
            "bounds": [
                [
                    -180.0,
                    85.0
                ],
                [
                    180.0,
                    85.0
                ],
                [
                    180.0,
                    -60.0
                ],
                [
                    -180.0,
                    -60.0
                ]
            ],
            "bbox": [
                -180.0,
                -60.0,
                180.0,
                85.0
            ],
            "index_values": null,
            "source": "map_array"
        },
        "osc-hazard:scenarios": [
            {
                "id": "rcp85",
                "years": [
                    2030,
                    2040,
                    2050,
                    2060,
                    2070,
                    2080,
                    2090
                ]
            }
        ],
        "osc-hazard:units": "days/year",
        "start_datetime": "2000-01-01T00:00:00Z",
        "end_datetime": "2100-01-01T00:00:00Z",
        "datetime": null
    },
    "links": [
        {
            "rel": "collection",
            "href": "./collection.json",
            "type": "application/json"
        }
    ],
    "assets": {
        "data": {
            "href": "./chronic_heat/osc/v2/days_tas_above_20c_ukcp18_rcp85_2030",
            "type": "application/vnd+zarr",
            "title": "zarr directory",
            "description": "directory containing indicators data as zarr arrays",
            "roles": [
                "data"
            ]
        }
    },
    "collection": "osc-hazard-indicators"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant