{
  "title": "Observed May 2025 case: timing and surface-wind audit",
  "prepared": "2026-09-05",
  "source_files": [
    {
      "file": "howe-sound-surface-weather-2025-05-01-to-03.csv",
      "sha256": "27de7b919e3872642b2f2c0d136f64037bb18457e64b8d989e143d8586082142"
    },
    {
      "file": "squamish-elementary-verified-calendar-days-2025-05-01-to-03.csv",
      "sha256": "2c71061e69699ee1a6a557fbaf3b56a049e930017d6e991e0b9a77b749eb1d1f"
    }
  ],
  "checks": {
    "weather_rows": 285,
    "weather_utc_pst_pairs_checked": 285,
    "ambient_rows": 432,
    "ambient_native_hour_end_matches": 432,
    "ambient_numeric_values": 417,
    "duplicate_keys": 0
  },
  "weather_by_station": [
    {
      "climate_identifier": "10459NN",
      "station": "HOWE SOUND - PAM ROCKS",
      "rows": 71,
      "reported_calm_rows": 3
    },
    {
      "climate_identifier": "10476F0",
      "station": "SQUAMISH AIRPORT",
      "rows": 70,
      "reported_calm_rows": 20
    },
    {
      "climate_identifier": "1086081",
      "station": "PEMBERTON AIRPORT (WIND)",
      "rows": 72,
      "reported_calm_rows": 37
    },
    {
      "climate_identifier": "1086082",
      "station": "PEMBERTON AIRPORT CS",
      "rows": 72,
      "reported_calm_rows": 0
    }
  ],
  "ambient_native_calendar_day_counts": [
    {
      "date_pst": "2025-05-01",
      "parameter": "NO",
      "rows": 24,
      "numeric": 23
    },
    {
      "date_pst": "2025-05-01",
      "parameter": "NO2",
      "rows": 24,
      "numeric": 23
    },
    {
      "date_pst": "2025-05-01",
      "parameter": "NOx",
      "rows": 24,
      "numeric": 23
    },
    {
      "date_pst": "2025-05-01",
      "parameter": "O3",
      "rows": 24,
      "numeric": 23
    },
    {
      "date_pst": "2025-05-01",
      "parameter": "PM25",
      "rows": 24,
      "numeric": 24
    },
    {
      "date_pst": "2025-05-01",
      "parameter": "SO2",
      "rows": 24,
      "numeric": 23
    },
    {
      "date_pst": "2025-05-02",
      "parameter": "NO",
      "rows": 24,
      "numeric": 23
    },
    {
      "date_pst": "2025-05-02",
      "parameter": "NO2",
      "rows": 24,
      "numeric": 23
    },
    {
      "date_pst": "2025-05-02",
      "parameter": "NOx",
      "rows": 24,
      "numeric": 23
    },
    {
      "date_pst": "2025-05-02",
      "parameter": "O3",
      "rows": 24,
      "numeric": 23
    },
    {
      "date_pst": "2025-05-02",
      "parameter": "PM25",
      "rows": 24,
      "numeric": 24
    },
    {
      "date_pst": "2025-05-02",
      "parameter": "SO2",
      "rows": 24,
      "numeric": 23
    },
    {
      "date_pst": "2025-05-03",
      "parameter": "NO",
      "rows": 24,
      "numeric": 23
    },
    {
      "date_pst": "2025-05-03",
      "parameter": "NO2",
      "rows": 24,
      "numeric": 23
    },
    {
      "date_pst": "2025-05-03",
      "parameter": "NOx",
      "rows": 24,
      "numeric": 23
    },
    {
      "date_pst": "2025-05-03",
      "parameter": "O3",
      "rows": 24,
      "numeric": 23
    },
    {
      "date_pst": "2025-05-03",
      "parameter": "PM25",
      "rows": 24,
      "numeric": 24
    },
    {
      "date_pst": "2025-05-03",
      "parameter": "SO2",
      "rows": 24,
      "numeric": 23
    }
  ],
  "station_pair_comparison": {
    "paired_top_of_hour_observations": 69,
    "mean_wind_vector_difference_m_s": 3.9035613603730224,
    "root_mean_square_wind_vector_difference_m_s": 4.636590041146402,
    "airport_reported_calm_with_pam_at_least_5_m_s": 9,
    "direction_cutoff_sensitivity": [
      {
        "both_station_speed_cutoff_m_s": 0.5,
        "pairs": 47,
        "median_circular_difference_degrees": 30.0,
        "pairs_at_least_90_degrees_apart": 4,
        "interpretation": "Analyst sensitivity cutoffs, not instrument thresholds or outflow classifications"
      },
      {
        "both_station_speed_cutoff_m_s": 1,
        "pairs": 40,
        "median_circular_difference_degrees": 20.0,
        "pairs_at_least_90_degrees_apart": 3,
        "interpretation": "Analyst sensitivity cutoffs, not instrument thresholds or outflow classifications"
      },
      {
        "both_station_speed_cutoff_m_s": 2,
        "pairs": 28,
        "median_circular_difference_degrees": 15.0,
        "pairs_at_least_90_degrees_apart": 0,
        "interpretation": "Analyst sensitivity cutoffs, not instrument thresholds or outflow classifications"
      }
    ],
    "interpretation": "Differences between observed stations, NOT model error or a source-site validation"
  },
  "temporal_interpretation": {
    "ambient": "Hour-ending means; original DATE/TIME24:00 becomes next-day DATE_PST00:00. Interval end converted PST+8h to UTC; interval start is one hour earlier.",
    "weather": "Observation timestamp preserved. Near-hour wind averaging interval depends on network/station metadata; do not represent this as a full hourly mean.",
    "calendar_boundary": "The original seed sample contained one April30 hour and only23 May3 hours. Six boundary records were retrieved,426 overlapping records reconfirmed, and this processed selection now covers all24 native hourly records for each May1\u20133 calendar day. Missing numeric values remain missing; complete timestamps do not mean24 valid readings.",
    "join_rule": "UTC interval endpoints and observation timestamps are distinct fields. Matching endpoint labels alone does not establish identical temporal averaging."
  },
  "limits": [
    "Three-day convenience sample, not seasonal representativeness or an independent model evaluation.",
    "No source-site wind or vertical temperature profiles in this pack.",
    "No inversion classification, inferred plume path, pollution attribution, background distribution or objective-attainment claim.",
    "Calm direction remains undefined; missing observations are never interpolated."
  ],
  "primary_method_sources": [
    "https://www2.gov.bc.ca/assets/gov/environment/air-land-water/air/reports-pub/aqhi_network_review.pdf",
    "https://open.canada.ca/data/en/dataset/1b36a356-defd-4813-acea-47bc3abd859b?lang=en",
    "https://essd.copernicus.org/articles/14/5253/2022/"
  ]
}
