self.api_url = '[https://developer.nrel.gov/api/pvwatts/v6.json](https://developer.nrel.gov/api/pvwatts/v6.json)'
self.house_size = house_size # Size of the house in square feet
self.address = address # Address of the house
self.orientation = orientation # Orientation of the house
self.roof_slope = roof_slope # Roof slope in degrees
self.has_pool = has_pool # Presence of a swimming pool
self.has_shade = has_shade # Presence of shading elements like trees
self.system_capacity = self.estimate_system_capacity() # Estimated system capacity
self.module_type = module_type
self.losses = losses
self.array_type = array_type
self.tilt = tilt
self.azimuth = azimuth
self.panel_wattage = panel_wattage
self.api_key = api_key
def estimate_system_capacity(self):
# Base estimation: 1 kW per 1000 square feet
capacity = self.house_size / 1000
# Orientation efficiency factors
# TODO: Find more accurate average efficiency factors per orientation
orientation_efficiency = {
'south': 1.0,...
Estimate system capacity of solar panel based on house size and orientation @ said: