Source code for teaser.logic.archetypebuildings.residential

# created June 2015
# by TEASER4 Development Team


from teaser.logic.buildingobjects.building import Building


[docs]class Residential(Building): """Base class for each residential archetype. This is the base class for all residential archetype buildings (BMVBS, UrbanReNet, Tabula, etc.). It is a subclass of Building and introduces several parameters to be obligatory (parent, name, year_of_construction, net_leased_area) Please use this class to create new archetype methodologies. Parameters ---------- parent: Project() The parent class of this object, the Project the Building belongs to. Allows for better control of hierarchical structures. If not None it adds this Building instance to Project.buildings. (default: None) name : str Individual name year_of_construction : int Year of first construction net_leased_area : float [m2] Total net leased area of building. This is area is NOT the footprint of a building with_ahu : Boolean If set to True, an empty instance of BuildingAHU is instantiated and assigned to attribute central_ahu. This instance holds information for central Air Handling units. Default is False. internal_gains_mode: int [1, 2, 3] mode for the internal gains calculation done in AixLib: 1. Temperature and activity degree dependent heat flux calculation for persons. The calculation is based on SIA 2024 (default) 2. Temperature and activity degree independent heat flux calculation for persons, the max. heatflowrate is prescribed by the parameter fixed_heat_flow_rate_persons. 3. Temperature and activity degree dependent calculation with consideration of moisture and co2. The moisture calculation is based on SIA 2024 (2015) and regards persons and non-persons, the co2 calculation is based on Engineering ToolBox (2004) and regards only persons. Attributes ---------- central_ahu : instance of BuildingAHU Teaser Instance of BuildingAHU if a central AHU is embedded into the building (currently mostly needed for AixLib simulation). number_of_floors : int number of floors above ground (default: None) height_of_floors : float [m] Average height of the floors (default: None) internal_id : float Random id for the distinction between different buildings. year_of_retrofit : int Year of last retrofit. type_of_building : string Type of a Building (e.g. Building (unspecified), Office etc.). building_id : None ID of building, can be set by the user to keep track of a building even outside of TEASER, e.g. in a simulation or in post-processing. This is not the same as internal_id, as internal_id is e.g. not exported to Modelica models! street_name : string Name of the street the building is located at. (optional) city : string Name of the city the building is located at. (optional) longitude : float [degree] Longitude of building location. latitude : float [degree] Latitude of building location. thermal_zones : list List with instances of ThermalZone(), that are located in this building. outer_area : dict [degree: m2] Dictionary with orientation as key and sum of outer wall areas of that direction as value. window_area : dict [degree: m2] Dictionary with orientation as key and sum of window areas of that direction as value. bldg_height : float [m] Total building height. volume : float [m3] Total volume of all thermal zones. sum_heat_load : float [W] Total heating load of all thermal zones. sum_cooling_load : float [W] Total heating load of all thermal zones. (currently not supported) number_of_elements_calc : int Number of elements that are used for thermal zone calculation in this building. 1. OneElement 2. TwoElement 3. ThreeElement 4. FourElement merge_windows_calc : boolean True for merging the windows into the outer wall's RC-combination, False for separate resistance for window, default is False used_library_calc : str 'AixLib' for https://github.com/RWTH-EBC/AixLib 'IBPSA' for https://github.com/ibpsa/modelica library_attr : Annex() or AixLib() instance Classes with specific functions and attributes for building models in IBPSA and AixLib. Python classes can be found in calculation package. """ def __init__( self, parent, name, year_of_construction, net_leased_area, with_ahu=False, internal_gains_mode=1, ): """Constructor of Residential archetype building """ super(Residential, self).__init__( parent, name, year_of_construction, net_leased_area, with_ahu, internal_gains_mode, )
[docs] def generate_archetype(self): """Generates an archetype building. If you want to define you own archetype methodology please use this function call to do so. """ pass