Model/domain/modelling/generators
Khalim Conn-Kowlessar c03f4ff123 feat(modelling): conservative PV config selection (5-config spread)
Slice 4 of the Solar PV Recommendation Generator (ADR-0026).
`select_conservative_configs` turns Google's full solarPanelConfigs ladder
into up to five competing array configs for the Optimiser: drop north-facing
planes (within 30° of due north, wrap-aware), cap usable panels at ~70% of
maxArrayPanelsCount (imagery misses obstructions; MCS edge setback), collapse
rungs that trim to the same usable size keeping the higher-generation layout,
then sample five spanning min→max by expected generation. Returns () when
nothing usable remains.

Real London example → 5 rungs at 4/12/19/26/34 panels (all ≤34.3 = 70% of
49); synthetic cases pin the north-drop and the 70% cap.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-08 10:02:15 +00:00
..
__init__.py refactor(modelling): group domain/modelling into generators/scoring/optimisation 2026-06-03 13:48:36 +00:00
floor_recommendation.py feat(modelling): persist recommendation.material_id from the catalogue 2026-06-04 08:26:58 +00:00
glazing_recommendation.py feat(modelling): detect single-glazing code 15 + glazing before/after pins 2026-06-05 11:23:57 +00:00
heating_recommendation.py feat(modelling): ASHP option carries the composite per-dwelling cost 2026-06-06 21:17:06 +00:00
lighting_recommendation.py feat(modelling): recommend_lighting upgrades all non-LED bulbs to LED 2026-06-05 12:23:27 +00:00
roof_recommendation.py feat(modelling): room-in-roof safety guard defers the roof generator 2026-06-05 10:06:08 +00:00
solar_recommendation.py feat(modelling): conservative PV config selection (5-config spread) 2026-06-08 10:02:15 +00:00
solid_wall_recommendation.py feat(modelling): explicit park-home guard in the solid-wall generator 2026-06-05 10:49:50 +00:00
ventilation_recommendation.py feat(modelling): persist recommendation.material_id from the catalogue 2026-06-04 08:26:58 +00:00
wall_recommendation.py feat(modelling): persist recommendation.material_id from the catalogue 2026-06-04 08:26:58 +00:00