prop/docs/goes-r-research.md
Graham McIntire e82e631135
HRRR forecast hours (f00-f18) with timeline map UI
- HrrrClient.hrrr_url accepts forecast_hour param (wrfsfcfHH.grib2)
- PropagationGridWorker fetches all 19 forecast hours per run
- Propagation.scores_at/3 queries scores at specific valid_time
- Propagation.available_valid_times/1 returns all forecast times for timeline
- Pruning keeps scores with valid_time >= now - 2h (forecast-aware)
- MapLive: select_time event, timeline data pushed to JS
- JS: forecast timeline bar at bottom of map with clickable hour buttons
- PubSub broadcast sends list of valid_times instead of single time
2026-03-31 16:44:47 -05:00

5.3 KiB

GOES-R Satellite Data for Propagation Prediction

Summary

Verdict: Low priority. GOES-R data is already baked into HRRR, and the satellite cannot resolve the vertical gradients that cause ducting.

What is "GOES-R Rapid Refresh"?

There is no product called "GOES-R Rapid Refresh" or "GRR." These are two separate systems:

  • GOES-R — geostationary satellite series (GOES-16, 17, 18, 19) with the Advanced Baseline Imager (ABI)
  • HRRR — High-Resolution Rapid Refresh, a ground-based NWP model

They are complementary: NOAA assimilates GOES-R satellite observations (cloud-top data, satellite winds) into the HRRR model. By consuming HRRR output, we are already indirectly consuming GOES-R data — processed through full 3D physics.

Relevant GOES-R Products

Product Resolution Cadence Clear Sky Only? Relevance
Derived Stability Indices (K-Index, LI, CAPE) 10 km 5 min Yes Moderate — but K-index inversely correlated with ducting per our analysis
Total Precipitable Water 10 km 5 min Yes Low — our analysis found PWAT is NOT a ducting discriminator
Vertical Temperature Profile 10 km 5 min Yes Very low — see critical caveat below
Vertical Moisture Profile 10 km 5 min Yes Same limitation as temperature
Land Surface Temperature 2 km 5 min Yes Minor — land-sea contrasts drive coastal ducting
Sea Surface Temperature 2 km hourly Yes Same — coastal ducting indicator
Rain Rate 2 km 5 min No Redundant — HRRR already provides precip
Derived Motion Winds varies 5 min Partially Redundant — HRRR already provides wind fields
Cloud Imagery (water vapor) 2 km 1-5 min No Visual supplement only — moisture plume tracking

Critical Limitation: Cannot Resolve Ducting

The ABI is an imager with 16 spectral bands, not a hyperspectral sounder. Key problems:

  1. The "vertical profiles" lean heavily on the NWP model first guess. The ABI lacks the spectral resolution to independently resolve temperature/moisture structure. The 54-level temperature profile sounds impressive, but with only 16 IR bands, the independent information content is very low. The retrieved profiles "retain features of the first guess" — meaning they're essentially a slightly nudged version of the same NWP model we're already using.

  2. Ducting requires detecting gradients over 50-200m vertical scales. The ABI simply cannot resolve this. A 100m-thick temperature inversion looks identical to a smooth profile from the satellite's perspective.

  3. Clear-sky only. All the useful derived products (TPW, stability indices, profiles) only work under cloud-free conditions. HRRR gives us data everywhere, always.

Comparison: What GOES-R Adds vs. What We Have

What We Need HRRR (current) GOES-R (proposed)
Surface temp/dewpoint 3 km, hourly, all-sky 10 km, 5 min, clear-sky only
Vertical profiles 8 pressure levels with T/Td/height, all-sky 54 levels but low information content, clear-sky only
Refractivity gradient Computed from HRRR profiles — our key ducting indicator Cannot resolve the vertical structure needed
Boundary layer depth HPBL from model physics No direct product
Wind 10m wind components, all-sky Cloud-tracked winds at various levels
Precipitation Model physics + radar assimilation IR-only rain rate (less accurate)
Forecast capability 18-48 hours ahead None — observation only

Where GOES-R Could Help (Minor)

Real-time nowcasting between HRRR cycles: HRRR updates hourly with ~60 min latency, meaning displayed data can be up to 2+ hours old. GOES-R's 5-minute cadence could fill the gap for:

  • Cloud cover changes (water vapor imagery)
  • Rapid destabilization (stability indices flagging convective onset)
  • Land-sea temperature contrasts (coastal ducting indicator)

These would be supplementary monitoring products, not improvements to the core scoring algorithm.

Data Access

All GOES-R data is freely available on AWS S3 (no auth):

  • s3://noaa-goes19/ (current GOES-East, operational since April 2025)
  • s3://noaa-goes18/ (current GOES-West)
  • Path: ABI-L2-{PRODUCT}{REGION}/{YEAR}/{DOY}/{HOUR}/{filename}.nc
  • Format: NetCDF4
  • Also available on Microsoft Planetary Computer (Azure)

Future: GeoXO Hyperspectral Sounder

The upcoming GeoXO satellite series (late 2020s/early 2030s) will carry a true hyperspectral IR sounder (GXS) with ~1,550 spectral bands. This would dramatically improve vertical temperature/moisture profiling from geostationary orbit and could genuinely detect inversion layers relevant to ducting. Worth revisiting when GeoXO data becomes available.

Recommendation

Don't integrate GOES-R now. The HRRR-based approach already consumes better data for ducting prediction than GOES-R can provide directly. The complexity cost (S3 polling, NetCDF parsing, spatial interpolation, handling clear-sky gaps) is not justified by the marginal benefit.

Priority order for improving predictions:

  1. HRRR forecast hours (f01-f18) — already designed in prediction.md
  2. Radiosonde data (already partially ingested — better vertical profiles than any satellite)
  3. GeoXO hyperspectral sounder (when available, late 2020s)
  4. GOES-R products (low value-add given HRRR already assimilates them)