CR_035: NZ rooftop PV diurnal GENERATION shape 2026 (PVGIS-ERA5 hourly, 4 NZ cities → 3-slice fractions…

NZ rooftop PV diurnal GENERATION shape (2026, PVGIS-derived)

Resolves RT_221 — the NI engine's PV generation-availability shape (E2)

The fraction of a rooftop PV array’s DAILY output in each 3-slice window — solar_day 0.63 / evening_peak 0.12 / night_base 0.25 (annual, north-facing NZ). Replaces the model’s illustrative 0.9375/0.0625/0. Used as a single national constant — the shape is stable across NZ (the magnitude/yield regionalises, not the shape). Derived from authoritative PVGIS-ERA5 hourly data; the raw PVGIS CSV is filed as the primary. data_quality medium (AI-derived binning; reproducible from the filed CSV).

Source verification (audit 2026-06-22) — VERIFIED

The 3-slice PV shape 0.63/0.12/0.25 was reproduced by re-binning the filed PVGIS-ERA5 hourly CSV (Nelson → 0.630/0.118/0.252; winter evening ≈ 0.002 ≈ the claimed ~0.00), and the live PVGIS v5.2 API returned byte-identical raw data. A reproducible computation, not a published figure — authentic. (Verified Nelson run; per-city stability per the page.)

Summary

NZ rooftop PV generation timing across the model’s three daily slices, derived from PVGIS-ERA5 hourly output for four NZ cities (Auckland, Wellington, Nelson, Christchurch), 1 kWp north-facing 30° tilt, with correct UTC→NZ-local-time conversion before binning. The annual-average split is solar_day 0.63 / evening_peak 0.12 / night_base 0.25 (4-site mean 0.632/0.116/0.252), and it is stable across all four cities (solar_day 0.61–0.65), so a single national constant is defensible — the magnitude of PV yield regionalises (north ≈ 2× south), but the within-day shape does not. Two important refinements: the shape is strongly seasonal (winter evening_peak ≈ 0.00 — a north-facing array contributes nothing to the 5–9pm peak when the sun is down), and the “night_base” 0.25 is almost entirely daylight shoulders (07–09, 15–16) just outside the 6-hour solar_day window, not genuine overnight output (which is zero). PVGIS-ERA5 under-reads NZ annual yield, so only the shape is used, not the kWh/kWp magnitude.

Key claims

- claim: "NZ rooftop PV diurnal GENERATION shape (annual average, north-facing fixed array): solar_day 0.63 / evening_peak 0.12 / night_base 0.25 (4-site PVGIS-ERA5 mean 0.632/0.116/0.252, Auckland/Wellington/Nelson/Christchurch, 1 kWp, 30° tilt, 2019–2020). The shape is STABLE across the four cities (solar_day 0.61–0.65; evening 0.10–0.13), so a single NATIONAL constant is defensible — the magnitude (kWh/kWp) regionalises with latitude, the within-day shape does not. Replaces the model's illustrative 0.9375/0.0625/0. Generation timing only (whether it is useful depends on demand + storage, handled separately)."
  source_location: "PVGIS v5.2 seriescalc, PVGIS-ERA5; own derivation (4 NZ cities)"
- claim: "Strong seasonality — the evening_peak generation share COLLAPSES to ~0.00 in winter. Annual blend ≈ 0.63/0.12/0.25 decomposes to summer ≈ 0.59/0.14/0.27 and winter ≈ 0.84/0.00/0.16: in JJA the sun has set before the 5–9pm peak, so a north-facing array delivers essentially nothing to the evening window exactly when demand is highest, and winter generation is more midday-concentrated (short compressed day). A model that runs seasonally or stress-tests winter self-sufficiency should use the seasonal shapes, not the annual blend."
  source_location: "PVGIS-ERA5 hourly, seasonal binning (Wellington/Auckland)"
- claim: "The model's 'night_base' generation slice (~0.25) is almost ENTIRELY daylight shoulder generation (07–09 morning + 15–16 afternoon) that falls outside the 6-hour solar_day window — NOT nocturnal output, which is zero. Treating night_base PV as genuine overnight generation is wrong. Orientation effect: north-facing maximises annual yield; a west-leaning or split array lifts the evening_peak share to ~0.15–0.18 but never rescues winter evenings (PVGIS v5.2 east/west magnitudes are unreliable, but the direction of the effect is sound). PVGIS-ERA5 under-reads NZ annual yield (~750–860 vs ~1,100–1,400 kWh/kWp) — use the SHAPE only, not these yield magnitudes."
  source_location: "PVGIS-ERA5 hourly; EECA NZ residential-solar study (qualitative corroboration)"

Neobiome Intelligence relevance

Resolves RT_221 — sources the PV generation-availability shape (E2 gen_solar/gen_eve/gen_night). The model previously used an illustrative 0.9375 / 0.0625 / 0; CR_035 replaces it with a PVGIS-derived 0.63 / 0.12 / 0.25, applied as a single national constant (the shape is NZ-stable; the regional pv_yield magnitude already lives in p_regional_table). Two material corrections to the temporal balance:

  • Evening-peak PV is ~12%, not ~6% — the model was under-counting how much rooftop solar reaches the 5–9pm window (a Tier-1 driver of temporal SSI).
  • A quarter of output sits in the morning/afternoon shoulders (currently bundled into a zero-value “night_base”) — real daylight generation, not nocturnal.

Caveats for the build: shape only (ERA5 under-reads yield — keep pv_yield magnitude from RD_013); the 0.12 annual evening figure is misleading for winter (≈0.00) — if/when the engine seasonalises, swap in summer/winter shapes. Pairs with the demand-shape source (RT_224) to give a fully-sourced temporal engine.

Retrieval provenance

Shape derived by the agent from PVGIS-ERA5 hourly data; reproducible from the filed primary CSV. The agent queried PVGIS v5.2 seriescalc for 4 NZ cities, applied the UTC→NZ+12/+13 conversion (the critical step — without it the profile peaks at “midnight”), and binned to the 3 windows. data_quality medium: the binning is the agent’s own (not independently re-run here), but the raw PVGIS hourly CSV is filed in the store so the derivation is reproducible. PVGIS-ERA5 is an authoritative open primary.

Research targets

Research gaps

  • Regional generation-shape layer — a 16-region diurnal-shape table (small latitude effect: evening_peak slightly larger further south), parallel to the regional rainfall_mm/PED layers. Low priority — the shape is NZ-stable, so the national constant suffices for now.
  • Seasonal generation shapes — summer ≈ 0.59/0.14/0.27 and winter ≈ 0.84/0.00/0.16, for when the engine runs seasonally / stress-tests winter (the winter evening_peak ≈ 0.00 is the load-bearing case). Pairs with the model’s P50/P90 bad-year logic.

Connections

Referenced by

Sources (1): OT_076

EDT domains (1): D01: Renewable Energy & Storage Systems