Haor Flash-Flood Early Warning

Per-upazila Boro paddy harvest urgency, computed from a 72-hour rainfall forecast over the upper Meghna catchment (Meghalaya hills) and the haor basin. Source: Open-Meteo ECMWF IFS 0.25 deg, free for non-commercial use, no API key.

As of 2026-05-31 · Boro harvest window active

GREEN
Worst current state
17.9 mm
Upstream 72h forecast (Meghalaya)
5
Pilot upazilas covered

Harvest urgency, next 72 hours

State derived from upstream catchment-mean rainfall plus local haor rainfall. During Boro harvest window, concurrent local rain >25 mm/72h bumps the state up one level (labour delay).

Upazila District State Local 72h rain
Sunamganj Sadar Sunamganj GREEN 16.8 mm
Tahirpur Sunamganj GREEN 19.9 mm
Jamalganj Sunamganj GREEN 18.6 mm
Dharmapasha Sunamganj GREEN 18.1 mm
Habiganj Sadar Habiganj GREEN 22.4 mm
Thresholds (upstream 72h cumulative rainfall, mm): watch ≥ 60.0 · advisory ≥ 120.0 · warning ≥ 200.0

Daily rainfall, mean across grid points

Upstream column averages 4 Meghalaya grid points (Cherrapunji, Shillong south, Garo, Jaintia). Haor column averages 5 BD grid points across Sunamganj and Habiganj.

Date Upstream rainfall (mm) Haor rainfall (mm)
2026-05-31 3.6 2.2
2026-06-01 3.8 2.9
2026-06-02 4.5 5.2
2026-06-03 6.0 8.9
2026-06-04 5.6 14.3
2026-06-05 8.7 22.9
2026-06-06 9.6 24.7

How the state is computed

  1. Pull hourly rainfall forecast from api.open-meteo.com for 9 grid points (4 in the upper Meghna catchment, 5 in the haor basin), model = ECMWF IFS 0.25 deg.
  2. Aggregate to 24h cumulative rainfall per grid point per day.
  3. Sum the next 72 hours of upstream rainfall (catchment mean across Meghalaya points). This is the surge driver.
  4. Map the 72h upstream total to a four-state ladder: green / watch / advisory / warning. Thresholds: 60 / 120 / 200 mm.
  5. During Boro harvest window (April 15 to May 31), if local haor rainfall over the same window exceeds 25 mm, bump the state up one level. Local rain delays harvest labour.
  6. Refresh four times daily on the existing OVH VPS via the bdpolicylab collector scheduler.

Code: app/collectors/haor_weather.py (collector), app/analysis/haor_ews.py (analyzer), scripts/haor_ews.py (GEE / WeatherNext 2 pipeline skeleton for the v1 validation layer).

  • This is a v0 heuristic, not a calibrated hydrological model. Upstream-rainfall thresholds are rules of thumb; replace with BWDB-station-calibrated routing in v1.
  • Operational warnings should ride on FFWC and Google Flood Hub. This page is a complementary, haor-specific decision-support layer for upazila Krishi offices.
  • Forecast skill at 72h is probabilistic, not deterministic. Treat the state as "harvest urgency" not "flood guarantee."
  • Open-Meteo's ECMWF IFS is the same operational model behind ECMWF's own forecasts; updated 4x daily. WeatherNext 2 (the experimental DeepMind ensemble) plugs in as a v1 enhancement when GEE auth is wired.

Open-Meteo: free, no key. GEE: free for non-commercial users. VPS: existing. Telegram delivery: free. SMS gateway is the only line that scales: ~$0/yr for a Telegram-only pilot, ~$1,640/yr at 50,000 farmers with bulk SMS at BDT 0.30 per message.