teaser package

teaser

Tool for Energy Analysis and Simulation for Efficient Retrofit

Subpackages

Submodules

teaser.project module

This module includes the Project class, which is the API for TEASER.

class teaser.project.Project(load_data=False)[source]

Bases: object

Top class for TEASER projects it serves as an API

The Project class is the top class for all TEASER projects and serves as an API for script based interface. It is highly recommended to always instantiate the Project class before starting to work with TEASER. It contains functions to generate archetype buildings, to export models and to save information for later use.

Parameters
load_databoolean

boolean if data bases for materials, type elements and use conditions should be loaded. default = False but will be automatically loaded once you add a archetype building. For building generation from scratch, set to True

Attributes
namestr

Name of the Project (default is ‘Project’)

modelica_infoinstance of ModelicaInfo

TEASER instance of ModelicaInfo to store Modelica related information, like used compiler, start and stop time, etc.

buildingslist

List of all buildings in one project, instances of Building()

datainstance of DataClass

TEASER instance of DataClass containing JSON binding classes

weather_file_pathstr

Absolute path to weather file used for Modelica simulation. Default weather file can be find in inputdata/weatherdata.

number_of_elements_calcint

Defines the number of elements, that are aggregated (1, 2, 3 or 4), default is 2

merge_windows_calcbool

True for merging the windows into the outer walls, False for separate resistance for window, default is False (only supported for IBPSA)

used_library_calcstr

used library (AixLib and IBPSA are supported)

dir_reference_resultsstr

Path to reference results in BuildingsPy format. If not None, the results will be copied into the model output directories so that the exported models can be regression tested against these results with BuildingsPy.

add_non_residential(method, usage, name, year_of_construction, number_of_floors, height_of_floors, net_leased_area, with_ahu=True, internal_gains_mode=1, office_layout=None, window_layout=None, construction_type=None)[source]

Add a non-residential building to the TEASER project.

This function adds a non-residential archetype building to the TEASER project. You need to specify the method of the archetype generation. Currently TEASER supports only method according to Lichtmess and BMVBS for non-residential buildings. Further the type of usage needs to be specified. Currently TEASER supports four different types of non-residential buildings (‘office’, ‘institute’, ‘institute4’, ‘institute8’). For more information on specific archetype buildings and methods, please read the docs of archetype classes.

This function also calculates the parameters of the buildings directly with the settings set in the project (e.g. used_library_calc or number_of_elements_calc).

Parameters
methodstr

Used archetype method, currently only ‘bmvbs’ is supported

usagestr

Main usage of the obtained building, currently only ‘office’, ‘institute’, ‘institute4’, institute8’ are supported

namestr

Individual name

year_of_constructionint

Year of first construction

height_of_floorsfloat [m]

Average height of the buildings’ floors

number_of_floorsint

Number of building’s floors above ground

net_leased_areafloat [m2]

Total net leased area of building. This is area is NOT the footprint of a building

with_ahuBoolean

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.

office_layoutint

Structure of the floor plan of office buildings, default is 1, which is representative for one elongated floor.

  1. elongated 1 floor

  2. elongated 2 floors

  3. compact (e.g. for a square base building)

window_layoutint

Structure of the window facade type, default is 1, which is representative for a punctuated facade.

  1. punctuated facade (individual windows)

  2. banner facade (continuous windows)

  3. full glazing

construction_typestr

Construction type of used wall constructions default is “heavy”)

  • heavy: heavy construction

  • light: light construction

Returns
type_bldgInstance of Office()
add_residential(method, usage, name, year_of_construction, number_of_floors, height_of_floors, net_leased_area, with_ahu=False, internal_gains_mode=1, residential_layout=None, neighbour_buildings=None, attic=None, cellar=None, dormer=None, construction_type=None, number_of_apartments=None)[source]

Add a residential building to the TEASER project.

This function adds a residential archetype building to the TEASER project. You need to specify the method of the archetype generation. Currently TEASER supports only method according ‘iwu’, ‘urbanrenet’, ‘tabula_de’ and ‘tabula_dk’ for residential buildings. Further the type of usage needs to be specified. Currently TEASER supports one type of residential building for ‘iwu’ and eleven types for ‘urbanrenet’. For more information on specific archetype buildings and methods, please read the docs of archetype classes. This function also calculates the parameters of the buildings directly with the settings set in the project (e.g. used_library_calc or number_of_elements_calc).

Parameters
methodstr

Used archetype method, currently only ‘iwu’ or ‘urbanrenet’ are supported, ‘tabula_de’ to follow soon

usagestr

Main usage of the obtained building, currently only ‘single_family_dwelling’ is supported for iwu and ‘est1a’, ‘est1b’, ‘est2’, ‘est3’, ‘est4a’, ‘est4b’, ‘est5’ ‘est6’, ‘est7’, ‘est8a’, ‘est8b’ for urbanrenet.

namestr

Individual name

year_of_constructionint

Year of first construction

height_of_floorsfloat [m]

Average height of the buildings’ floors

number_of_floorsint

Number of building’s floors above ground

net_leased_areafloat [m2]

Total net leased area of building. This is area is NOT the footprint of a building

with_ahuBoolean

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.

residential_layoutint

Structure of floor plan (default = 0) CAUTION only used for iwu

  1. compact

  2. elongated/complex

neighbour_buildingsint

Number of neighbour buildings. CAUTION: this will not change the orientation of the buildings wall, but just the overall exterior wall and window area(!) (default = 0)

  1. no neighbour

  2. one neighbour

  3. two neighbours

atticint

Design of the attic. CAUTION: this will not change the orientation or tilt of the roof instances, but just adapt the roof area(!) ( default = 0) CAUTION only used for iwu

  1. flat roof

  2. non heated attic

  3. partly heated attic

  4. heated attic

cellarint

Design of the of cellar CAUTION: this will not change the orientation, tilt of GroundFloor instances, nor the number or area of ThermalZones, but will change GroundFloor area(!) (default = 0) CAUTION only used for iwu

  1. no cellar

  2. non heated cellar

  3. partly heated cellar

  4. heated cellar

dormerstr

Is a dormer attached to the roof? CAUTION: this will not change roof or window orientation or tilt, but just adapt the roof area(!) (default = 0) CAUTION only used for iwu

  1. no dormer

  2. dormer

construction_typestr

Construction type of used wall constructions default is “heavy”)

  • heavy: heavy construction

  • light: light construction

number_of_apartmentsint

number of apartments inside Building (default = 1). CAUTION only used for urbanrenet

Returns
type_bldgInstance of Archetype Building
calc_all_buildings(raise_errors=False)[source]

Calculates values for all project buildings

You need to set the following parameters in the Project class.

number_of_elements_calcint

defines the number of elements, that area aggregated, between 1 and 4, default is 2 For AixLib you should always use 2 elements!!!

merge_windows_calcbool

True for merging the windows into the outer walls, False for separate resistance for window, default is False For AixLib vdi calculation is True, ebc calculation is False

used_library_calcstr

used library (AixLib and IBPSA are supported)

export_aixlib(building_model=None, zone_model=None, corG=None, internal_id=None, path=None)[source]

Exports values to a record file for Modelica simulation

Exports one (if internal_id is not None) or all buildings for AixLib.ThermalZones.ReducedOrder.Multizone.MultizoneEquipped models using the ThermalZoneEquipped model with a correction of g-value ( double pane glazing) and supporting models, like tables and weather model. In contrast to versions < 0.5 TEASER now does not support any model options, as we observed no need, since single ThermalZones are identically with IBPSA models. If you miss one of the old options please contact us.

Parameters
internal_idfloat

setter of a specific building which will be exported, if None then all buildings will be exported

pathstring

if the Files should not be stored in default output path of TEASER, an alternative path can be specified as a full path

export_ibpsa(library='AixLib', internal_id=None, path=None)[source]

Exports values to a record file for Modelica simulation

For Annex 60 Library

Parameters
librarystr

Used library within the framework of IBPSA library. The models are identical in each library, but IBPSA Modelica library is just a core set of models and should not be used standalone. Valid values are ‘AixLib’ (default), ‘Buildings’, ‘BuildingSystems’ and ‘IDEAS’.

internal_idfloat

setter of a specific building which will be exported, if None then all buildings will be exported

pathstring

if the Files should not be stored in default output path of TEASER, an alternative path can be specified as a full path

static instantiate_data_class()[source]

Initialization of DataClass

Returns
DataClassInstance of DataClass()
load_project(path)[source]

Load the project from a json file (new format).

Calls the function load_teaser_json.

Parameters
pathstring

full path to a json file

property merge_windows_calc
property name
property number_of_elements_calc
retrofit_all_buildings(year_of_retrofit=None, type_of_retrofit=None, window_type=None, material=None)[source]

Retrofits all buildings in the project.

Depending on the used Archetype approach this function will retrofit the building. If you have archetypes of both typologies (tabula and iwu/BMBVS) you need to pass all keywords (see also Parameters section).

If TABULA approach is used, it will replace the current construction with the construction specified in ‘type_of_retrofit’, where ‘retrofit’ and ‘adv_retrofit’ are allowed.

‘iwu’ or ‘BMVBS’ Buildings in the project are retrofitted in the following manner:

  • replace all windows of the building to retrofitted window according to the year of retrofit.

  • add an additional insulation layer to all outer walls (including roof, and ground floor). The thickness of the insulation layer is calculated that the U-Value of the wall corresponds to the retrofit standard of the year of retrofit.

The needed parameters for the Modelica Model are calculated automatically, using the calculation_method specified in the first scenario.

Note: To Calculate U-Value, the standard TEASER coefficients for outer and inner heat transfer are used.

Parameters
year_of_retrofitint

the year the buildings are retrofitted, only ‘iwu’/’bmbvs’ archetype approach.

type_of_retrofitstr

The classification of retrofit, if the archetype building approach of TABULA is used.

window_typestr

Default: EnEv 2014, only ‘iwu’/’bmbvs’ archetype approach.

materialstr

Default: EPS035, only ‘iwu’/’bmbvs’ archetype approach.

save_project(file_name=None, path=None)[source]

Saves the project to a JSON file

Calls the function save_teaser_json in data.output.teaserjson_output

Parameters
file_namestring

name of the new file

pathstring

if the Files should not be stored in OutputData, an alternative can be specified

set_default(load_data=None)[source]

Sets all attributes to default

Caution: this will delete all buildings.

Parameters
load_databoolean, None-type

boolean if data bindings for type elements and use conditions should be loaded (default = True), in addition it could be a None- type to use the already used data bindings

property used_library_calc
property weather_file_path