Outer Sunset, San Francisco
How much sun hits every roof in the neighbourhood
Annual sunlight, usable roof area and a rough system size for 3,700 buildings, worked out from open USGS LiDAR, DataSF footprints and a typical weather year from PVGIS.
Roofs worth a system
-
- of - buildings
Possible capacity
- MWp
median - kWp per roof
Yearly generation
- GWh
- kWh per kWp
CO₂ avoided
- t/yr
at the California grid average
Roof sunlight
Average yearly sunlight on the usable part of each roof. Tap a building for its numbers.
kWh/m² per year
Not enough usable roof
No building selected.
How it works
A python pipeline, from point cloud to per-building numbers. Once the data is downloaded it runs on a laptop in under a minute.
- Surface model. USGS 3DEP LiDAR (2023) points, minus noise, gridded to a 0.5 m surface model by taking the highest point in each cell.
- Roofs. DataSF footprints, shrunk by 0.5 m so walls drop out, cut the surface model down to roof pixels.
- Slope and aspect. A Sobel filter on the surface gives each pixel its tilt and which way it faces.
- Shading. For every roof pixel the horizon angle is found in 16 directions out to 100 m. Direct sun is cut when the sun is below that horizon, and diffuse light is scaled by how much sky the pixel can see.
- Sunlight. A typical year of hourly weather (PVGIS, NSRDB satellite data) is put through pvlib's Perez model for every 5° tilt and 15° direction bin, then summed to kWh/m² per year.
- Per building. Usable roof is tilt ≤ 45°, not north facing, and at least - kWh/m² (70% of an open flat roof). A roof needs 10 m² of that to count. Panels cover 65% of it at 20% efficiency with an 80% performance ratio, and CO₂ uses - kg/kWh (EPA eGRID 2023, California).
Checks
The numbers are rough, so they are compared with published figures for the same place.
| Measure | This model | Reference |
|---|
Top roofs
The ten buildings with the most yearly generation. Click one to find it on the map.
| Building | Usable m² | kWp | kWh/yr |
|---|