{"generated_at":"2026-10-06T05:03:57.253953+00:00","bbox":{"west":-76.75791,"south":36.75145,"east":-75.6882,"north":39.57368},"cell_deg":0.1,"n_cells":348,"train_window":{"start":"2018-01-01","end":"2024-12-31"},"test_window":{"start":"2026-01-01","end":"2026-03-31"},"forecast_window":{"start":"2026-04-01","end":"2026-10-05"},"model_version":"o3_surface_v1","units":{"no2":"\u00b5g/m\u00b3","o3":"\u00b5g/m\u00b3"},"models":{"improved":{"label":"LSTM","preset":"pandora_aeronet_viirs","feature_columns":["AERONET_AOD","AERONET_Angstrom","AERONET_Precip_Water","ERA5_BLH_clim","PANDORA_NO2","PANDORA_O3","SPATIAL_LAG_DIST_KM","SPATIAL_LAG_NO2","VIIRS_AOD550","dayofyear_cos","dayofyear_sin","dow_cos","dow_sin","elevation_m","frac_agriculture","frac_developed","frac_forest","frac_other","frac_water","frac_wetland","hour_cos","hour_sin","is_weekend","loc_lat_cos","loc_lat_norm","loc_lat_sin","loc_lon_cos","loc_lon_norm","loc_lon_sin","population_density_mean","road_km_motorway_trunk_primary","road_km_secondary","road_km_total"],"test_metrics":{"n":0,"no2":{"r2":0.8781764775832891,"rmse":5.69549605522163,"mae":3.431440155890462},"o3":{"r2":0.9297047398656658,"rmse":6.2243339114584755,"mae":4.1244177382782095}},"seq_length":24,"notes":"Dual-head LSTM (o3_surface_v1): Pandora + AERONET + VIIRS inputs with boundary-layer, day-of-week, land-use and spatial-lag features; NO2 target blends real EPA AQS readings, O3 target is TEMPO tropospheric O3 plus EPA AQS (surface \u00b5g/m\u00b3)."},"linear":{"label":"Linear Regression","preset":"pandora_aeronet_viirs","feature_columns":["AERONET_AOD","AERONET_Angstrom","AERONET_Precip_Water","ERA5_BLH_clim","PANDORA_NO2","PANDORA_O3","SPATIAL_LAG_DIST_KM","SPATIAL_LAG_NO2","VIIRS_AOD550","dayofyear_cos","dayofyear_sin","dow_cos","dow_sin","elevation_m","frac_agriculture","frac_developed","frac_forest","frac_other","frac_water","frac_wetland","hour_cos","hour_sin","is_weekend","loc_lat_cos","loc_lat_norm","loc_lat_sin","loc_lon_cos","loc_lon_norm","loc_lon_sin","population_density_mean","road_km_motorway_trunk_primary","road_km_secondary","road_km_total"],"test_metrics":{"n":12163,"no2":{"r2":0.8677236801099781,"rmse":5.934812885945425,"mae":3.7492536899613884},"o3":{"r2":0.9051950190105653,"rmse":7.228454295050317,"mae":5.1846751013827035}},"seq_length":24,"notes":"Linear regression on last-timestep tabular features (same data and splits as the LSTM)."},"rf":{"label":"Random Forest","preset":"pandora_aeronet_viirs","feature_columns":["AERONET_AOD","AERONET_Angstrom","AERONET_Precip_Water","ERA5_BLH_clim","PANDORA_NO2","PANDORA_O3","SPATIAL_LAG_DIST_KM","SPATIAL_LAG_NO2","VIIRS_AOD550","dayofyear_cos","dayofyear_sin","dow_cos","dow_sin","elevation_m","frac_agriculture","frac_developed","frac_forest","frac_other","frac_water","frac_wetland","hour_cos","hour_sin","is_weekend","loc_lat_cos","loc_lat_norm","loc_lat_sin","loc_lon_cos","loc_lon_norm","loc_lon_sin","population_density_mean","road_km_motorway_trunk_primary","road_km_secondary","road_km_total"],"test_metrics":{"n":12163,"no2":{"r2":0.8727559238039233,"rmse":5.820827988645101,"mae":3.597350508321002},"o3":{"r2":0.9156634713611186,"rmse":6.817697412539821,"mae":4.727187317293454}},"seq_length":24,"notes":"Random forest on last-timestep tabular features (same data and splits as the LSTM)."},"xgboost":{"label":"XGBoost","preset":"pandora_aeronet_viirs","feature_columns":["AERONET_AOD","AERONET_Angstrom","AERONET_Precip_Water","ERA5_BLH_clim","PANDORA_NO2","PANDORA_O3","SPATIAL_LAG_DIST_KM","SPATIAL_LAG_NO2","VIIRS_AOD550","dayofyear_cos","dayofyear_sin","dow_cos","dow_sin","elevation_m","frac_agriculture","frac_developed","frac_forest","frac_other","frac_water","frac_wetland","hour_cos","hour_sin","is_weekend","loc_lat_cos","loc_lat_norm","loc_lat_sin","loc_lon_cos","loc_lon_norm","loc_lon_sin","population_density_mean","road_km_motorway_trunk_primary","road_km_secondary","road_km_total"],"test_metrics":{"n":12163,"no2":{"r2":0.8705804195568848,"rmse":5.870376730164864,"mae":3.553039433611235},"o3":{"r2":0.9185017890105267,"rmse":6.701991911000651,"mae":4.626806430665463}},"seq_length":24,"notes":"XGBoost on last-timestep tabular features (same data and splits as the LSTM)."}},"stations":[{"lat":39.0046,"lon":-76.8755,"kind":"Pandora","name":"greenbeltmd"},{"lat":37.0203,"lon":-76.3366,"kind":"Pandora","name":"hamptonva-hu"},{"lat":37.3431,"lon":-77.0733,"kind":"Pandora","name":"charlescityva"},{"lat":37.9403,"lon":-75.4664,"kind":"Pandora","name":"wallopsisland"},{"lat":39.3097,"lon":-76.4744,"kind":"Pandora","name":"essexmd"},{"lat":39.0553,"lon":-76.8783,"kind":"Pandora","name":"beltsvillemd"},{"lat":38.888901,"lon":-76.555795,"kind":"AERONET","name":"serc"},{"lat":38.794972,"lon":-76.08425,"kind":"AERONET","name":"easton"},{"lat":39.28123,"lon":-76.612052,"kind":"AERONET","name":"md_science_center"},{"lat":37.1037,"lon":-76.3869,"kind":"AERONET","name":"nasa_larc"},{"lat":39.12351,"lon":-76.3489,"kind":"AERONET","name":"chesapeake_bay"},{"lat":37.036667,"lon":-76.0766,"kind":"AERONET","name":"cbbt"}]}