finishing implementing solar

This commit is contained in:
Khalim Conn-Kowlessar 2025-08-18 16:38:00 +01:00
parent 1579d010ee
commit dba33be174
2 changed files with 3 additions and 30 deletions

View file

@ -168,28 +168,14 @@ class Costs:
# We assume a conservative 10% contingency for all works which is a rate defined by SPONs
CONTINGENCY = 0.1
# For flat roof, we assume it's a high risk project as it's very weather dependent and also is heavily
# dependent on the quality of the existing roof
FLAT_ROOF_CONTINGENCY = 0.15
# We use a higher contingency rate for internal wall insulation because of the potential for issues with moving
# fittings and trimming doors, as well as scope for damage to the existing wall during preparation.
IWI_CONTINGENCY = 0.2
# For air source heat pumps, we inflate the assume cost by quite a bit to account for design and installation
ASHP_CONTINGENCY = 0.25
# Where there is more uncertainty, a higher contingency rate is used
HIGH_RISK_CONTINGENCY = 0.2
# When there is less uncertainty, a lower contingency rate is used
LOW_RISK_CONTINGENCY = 0.05
# Measure level contingency
CONTINGENCIES = {
"cavity_wall_insulation": 0.1,
"internal_wall_insulation": 0.26,
"external_wall_insulation": 0.26,
"loft_insulation": 0.1,
"solar_pv": 0.15,
"air_source_heat_pump": 0.2,
"air_source_heat_pump": 0.25,
"flat_roof_insulation": 0.26,
"suspended_floor_insulation": 0.2,
"solid_floor_insulation": 0.26,
@ -202,13 +188,6 @@ class Costs:
# rate, on the total cost before VAT, as recommended by SPONs
PRELIMINARIES = 0.1
# For higher risk projects, a higher preliminaries rate is used. SPONs indicates that a higher risk project might
# have a preliminaries of 12-14% so we use 12% as the median for the preliminaries rate.
# For External wall insulation (EWI), we use 15% as the preliminaries rate if we think the property might
# need scaffolding, otherwise we use 12%. This is to account for any site preparation that might be required
EWI_NO_SCAFFOLDING_PRELIMINARIES = 0.2
EWI_SCAFFOLDING_PRELIMINARIES = 0.25
VAT_RATE = 0.2
PROFIT_MARGIN = 0.2

View file

@ -231,13 +231,7 @@ class SolarPvRecommendations:
scaffolding_options=self.scaffolding_options,
n_floors=self.property.number_of_floors
)
kw = np.floor(recommendation_config["array_wattage"] / 100) / 10
if has_battery:
description = (
f"Install a {kw} kilowatt-peak (kWp) solar panel system, with a battery."
)
else:
description = f"Install a {kw} kilowatt-peak (kWp) solar panel system."
description = f"Install a {solar_pv_product['description']}"
if self.property.in_conservation_area:
description += " Property is in a consevation area - please check with local planning authority."