mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-06-08 11:17:27 +00:00
solid brick wall external wall insulation
This commit is contained in:
parent
4e8735cf76
commit
2f333ad38c
1 changed files with 35 additions and 7 deletions
|
|
@ -11,7 +11,7 @@ external_wall_insulation_parts = [
|
|||
# -slab-ewi-render-fire/
|
||||
"type": "external_wall_insulation",
|
||||
"description": "Mineral Wool External Wall Insulation",
|
||||
"depths": [30, 50, 70, 80, 90, 100],
|
||||
"depths": [30, 50, 70, 80, 90, 100, 150, 200],
|
||||
"depth_unit": "mm",
|
||||
"cost": None,
|
||||
"cost_unit": None,
|
||||
|
|
@ -89,22 +89,24 @@ external_wall_insulation_parts = [
|
|||
}
|
||||
]
|
||||
|
||||
wall_parts = [
|
||||
internal_wall_insulation_parts = [
|
||||
{
|
||||
"id": 1,
|
||||
"type": "internal_wall_insulation",
|
||||
"description": "Internal wall insulation",
|
||||
"depth": None,
|
||||
"depths": [30, 50, 70, 80, 90, 100, 150],
|
||||
"depth_unit": "mm",
|
||||
"cost": None,
|
||||
"cost_unit": None,
|
||||
# The u-value here is just a placehoder for now and we probably want to have multiple
|
||||
# options for internal wall insulation (e.g. 50mm, 100mm, 150mm), with different material types
|
||||
# and costs
|
||||
"u_value": 0.3
|
||||
},
|
||||
|
||||
"r_value_per_mm": 0.0278,
|
||||
"r_value_unit": "m2K/W"
|
||||
}
|
||||
]
|
||||
|
||||
wall_parts = external_wall_insulation_parts + internal_wall_insulation_parts
|
||||
|
||||
|
||||
class WallRecommendations:
|
||||
YEAR_WALLS_BUILT_WITH_INSULATION = 1990
|
||||
|
|
@ -174,6 +176,32 @@ class WallRecommendations:
|
|||
}
|
||||
)
|
||||
|
||||
if is_solid_brick:
|
||||
|
||||
# This is an estimated figure based on industry standards
|
||||
u_value = self.DEFAULT_U_VALUES["solid_brick"]
|
||||
|
||||
# Recommend external and internal wall insulation
|
||||
parts = [
|
||||
part for part in wall_parts if part["type"] in ["external_wall_insulation", "internal_wall_insulation"]
|
||||
]
|
||||
for part in parts:
|
||||
|
||||
for depth in part["depths"]:
|
||||
part_u_value = self.r_value_per_mm_to_u_value(depth, part["r_value_per_mm"])
|
||||
|
||||
_, new_u_value = self.calculate_u_value_uplift(u_value, part_u_value)
|
||||
new_u_value = round(new_u_value, 2)
|
||||
|
||||
# We allow a small tolerance for error so we don't discount the recommendation entirely
|
||||
# if it's close, since this is an estimated new u-value
|
||||
if new_u_value - self.U_VALUE_ERROR <= self.BUILDING_REGULATIONS_PART_L_MAX_U_VALUE:
|
||||
self.recommendations.append(
|
||||
{
|
||||
**part, "new_u_value": new_u_value,
|
||||
}
|
||||
)
|
||||
|
||||
raise NotImplementedError("Not implemented yet")
|
||||
|
||||
@staticmethod
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue