Apply component-based retrofits to a building based on specified retrofit statuses.
This function applies retrofits to specific building elements (e.g., walls, windows)
based on the provided retrofit statuses.
Parameters:
buildingBuilding
The building object to be retrofitted.
element_retrofit_statsdict
A dictionary specifying the retrofit status for each
building element. Keys are element names (e.g., ‘outer_walls’),
and values are retrofit options (e.g., ‘standard’, ‘retrofit’).
Generate buildings for all possible combinations of
retrofit statuses for specified building elements.
This function creates multiple variations of a building based
on different retrofit options for specified building elements.
It’s designed to work with TABULA archetypes.
Parameters:
project_add_building_functioncallable
Function to add a building to the project.
add_building_function_kwargsdict
Keyword arguments for the add_building function.
elementslist, optional
List of building elements to consider for retrofit.
Defaults to [‘outer_walls’, ‘windows’, ‘rooftops’, ‘ground_floors’].
retrofit_choiceslist, optional
List of retrofit options to consider.
Defaults to [‘standard’, ‘retrofit’, ‘adv_retrofit’].
Returns:
list: A list of names of the generated buildings.
Raises:
ValueError: If unsupported elements or retrofit choices are provided, or if the