prop/lib/microwaveprop/weather/grib2
Graham McIntire 57578dff4d Add native HRRR duct detection to hourly propagation scoring
The PropagationGridWorker now fetches native hybrid-sigma levels
(TMP, SPFH, HGT, PRES × 50 levels) alongside the standard surface
and pressure products. Native data provides 10-50m vertical spacing
vs 250m from pressure levels, detecting thin surface ducts invisible
to the standard product.

Key design: cell-by-cell reducer in Wgrib2.extract_grid_from_file_mapped
processes each of the 95k CONUS cells through a duct analysis function
inline, keeping only scalar metrics per cell. Peak memory ~86 MB
instead of ~1.8 GB for the full grid map.

Per-cell output: native_min_gradient, best_duct_freq_ghz,
max_duct_thickness_m, duct_count. The scorer prefers the native
gradient over the pressure-level gradient when available.

Native fetch is optional — if it fails, scoring continues with
pressure-level data only.
2026-04-11 13:30:48 -05:00
..
complex_packing.ex Add batch GRIB2 extraction for multi-point grid queries 2026-03-30 16:50:03 -05:00
extractor.ex Use wgrib2 for HRRR grid extraction (7s vs 80+ minutes) 2026-03-31 08:33:29 -05:00
lambert_conformal.ex Replace wgrib2 with pure Elixir GRIB2 decoder for HRRR pipeline 2026-03-29 18:43:43 -05:00
section.ex Fix native-level GRIB2 decoding and add wgrib2 extraction path 2026-04-10 07:54:08 -05:00
simple_packing.ex Add batch GRIB2 extraction for multi-point grid queries 2026-03-30 16:50:03 -05:00
wgrib2.ex Add native HRRR duct detection to hourly propagation scoring 2026-04-11 13:30:48 -05:00