mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-07-12 13:29:04 +00:00
Slice 2 of the Solar PV Recommendation Generator (ADR-0026). Adds the
strictly-typed `SolarPotential` domain projection over the raw Google Solar
`buildingInsights` JSON that Ingestion persists (SolarRepository): the
`solarPanelConfigs` ladder, each rung broken into its roof segments with
Google's continuous azimuth/tilt mapped to the SAP octant
(`azimuth_to_sap_octant`, 0°=N clockwise → 1=N..8=NW, matching the
calculator's ORIENTATION_BY_SAP10_CODE) and RdSAP §11.1 pitch code
(`pitch_to_sap_code`, snap to {0→1,30→2,45→3,60→4,90→5}).
Pinned against the real London buildingInsights example (mirrored into
fixtures from the user-provided RTF): 400 W panels, maxArrayPanelsCount 49,
46-rung ladder, per-segment SE/NW/NE/SW octants at ~32° → pitch code 2.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
||
|---|---|---|
| .. | ||
| fixtures | ||
| __init__.py | ||
| _elmhurst_recommendation.py | ||
| test_ashp_cost_inputs.py | ||
| test_elmhurst_cascade_pins.py | ||
| test_floor_recommendation.py | ||
| test_glazing_recommendation.py | ||
| test_heating_recommendation.py | ||
| test_lighting_recommendation.py | ||
| test_measure_dependency.py | ||
| test_optimiser.py | ||
| test_overlay_applicator.py | ||
| test_package_scorer.py | ||
| test_plan.py | ||
| test_plan_valuation.py | ||
| test_products.py | ||
| test_roof_recommendation.py | ||
| test_scoring.py | ||
| test_solar_potential.py | ||
| test_valuation.py | ||
| test_ventilation_recommendation.py | ||
| test_wall_recommendation.py | ||
| test_window_extraction_001431.py | ||