Example 1: Generate archetype buildings using TEASER API
This module contains an example how to generate archetype buildings
using TEASER API functions.
You can run this example using the jupyter-notebook
First step: Import the TEASER API (called Project) into your Python
module
from teaser.project import Project
To use the API instantiate the Project class and rename the Project. The
parameter load_data=True indicates that we load iwu
typology archetype
data into our Project (e.g. for Material properties and typical wall
constructions. This can take a few seconds, depending on the size of the
used data base). Be careful: Dymola does not like whitespaces in names and
filenames, thus we will delete them anyway in TEASER.
prj = Project(load_data=True)
prj.name = "ArchetypeExample"
There are two different types of archetype groups: residential and
non-residential buildings. Two API functions offer the opportunity to
generate specific archetypes.
To generate residential archetype buildings the function
Project.add_residential() is used. Seven parameters are compulsory,
additional parameters can be set according to the used method. method
and usage
are used to distinguish between different archetype
methods. The name, year_of_construction, number and height of floors
and net_leased_area need to be set to provide enough information for
archetype generation. For specific information on the parameters please
read the docs.
prj.add_residential(
method='iwu',
usage='single_family_dwelling',
name="ResidentialBuilding",
year_of_construction=1988,
number_of_floors=2,
height_of_floors=3.2,
net_leased_area=200.0)
To generate non-residential archetype buildings (in this case an
office and a laboratory (a.k.a. institute)) the function
Project.add_residential() is used. The meaning of compulsory parameters
does not differ from the residential archetype building.
prj.add_non_residential(
method='bmvbs',
usage='office',
name="OfficeBuilding",
year_of_construction=1988,
number_of_floors=4,
height_of_floors=3.5,
net_leased_area=4500.0)
prj.add_non_residential(
method='bmvbs',
usage='institute',
name="InstituteBuilding",
year_of_construction=1952,
number_of_floors=5,
height_of_floors=4.0,
net_leased_area=3400.0)
prj.add_non_residential(
method='bmvbs',
usage='institute',
name="InstituteBuildingMoisture",
year_of_construction=1980,
number_of_floors=3,
height_of_floors=4.2,
net_leased_area=3600.0,
internal_gains_mode=3)
Besides iwu
and bmvbs
there is a third option for archetype
generation. We integrated the typology of TABULA Germany
(http://webtool.building-typology.eu/#bm) and other countries are about to
follow. To use TABULA archetype simple choose tabula_de
as the method
and single_family_house
, multi_family_house
, terraced_house
or
apartment_block
as the usage. In addition you can specify the
construction type of TABULA, chose between tabula_standard
(default),
tabula_retrofit
or tabula_adv_retrofit
. In this case we generate one
single and one multi family house with TABULA typology.
Please not: as we need to load the construction information which are
rather big for TABULA, switching from one typology to another in the same
Project takes some seconds. If you know from beginning you will only use
TABULA typology you should instantiate you Project class without loading
data. Project(load_data=False).
prj.add_residential(
method='tabula_de',
usage='single_family_house',
name="ResidentialBuildingTabula",
year_of_construction=1988,
number_of_floors=3,
height_of_floors=3.2,
net_leased_area=280.0,
construction_type='tabula_standard')
prj.add_residential(
method='tabula_de',
usage='multi_family_house',
name="ResidentialBuildingTabulaMulti",
year_of_construction=1960,
number_of_floors=4,
height_of_floors=3.2,
net_leased_area=600.0,
construction_type='tabula_retrofit')