Skip to content

Historic (1995-2014) NDWS rasters saturated (~0.95 every pixel/month) — over-classifies dry hazard, breaks historic-vs-future comparability #19

Description

@peetmate

Summary

The historic (1995-2014) NDWS (number-of-water-stress-days) monthly rasters produced by this repo are saturated: mean/max ≈ 0.95 across essentially every pixel, every month, every year of 1995-2014 — i.e. nearly every land pixel reads as water-stressed ~29 of 30 days, all year, every year. The matching future ssp245 NDWS for the same GCM is normal (mean/max ≈ 0.70).

This is an input problem, not a classification problem: downstream classification in hazards_prototype/R/2_calculate_haz_freq.R is correct given these inputs.

Downstream impact (hazards_prototype CR-068)

In the Atlas hazard_exposure product the saturation makes the historic panel un-comparable to the future panels:

  • Historic heat, heat+wet, wet single-hazard categories come out 0 — that mass is bundled into dry+* combinations, because the saturated dry co-occurs with every other hazard (CR-068 finding (b)).
  • Residual NaN in the rebaked hazard_exposure parquet concentrate in Luanda admin1 (180/6,021 cells for AGO) — the saturation signature; the only remaining NaN cluster after the na.rm=TRUE ENSEMBLE-writer fix landed downstream (CR-068 finding (c), downstream of this).

Evidence

  • Historic monthly NDWS rasters: mean/max ≈ 0.95 uniform across pixels/months/years 1995-2014.
  • Same GCM, ssp245 future NDWS: mean/max ≈ 0.70 (normal spread).
  • Full root-cause walk in dispatch 2026-05-26_hazards-repo-ndws-historic-saturation.md (Stage 1 raster probe + Stage 2A NDWS root-cause, logs cr068_stage1_raster_probe_* + cr068_stage2a_ndws_root_cause_*).

Ask

Investigate the historic NDWS calculation in this repo (water-balance / PET inputs or the dry-day counting logic for the 1995-2014 window). Once fixed and the historic NDWS rasters are republished, the downstream Atlas hazard_exposure rebake clears CR-068 (b) + (c).

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions