Coverage for bim2sim/plugins/PluginTEASER/bim2sim_teaser/sim_settings.py: 0%
6 statements
« prev ^ index » next coverage.py v7.6.12, created at 2025-03-12 17:09 +0000
« prev ^ index » next coverage.py v7.6.12, created at 2025-03-12 17:09 +0000
1from bim2sim.sim_settings import BuildingSimSettings, ChoiceSetting, \
2 PathSetting
3from bim2sim.utilities.types import LOD, ZoningCriteria
6class TEASERSimSettings(BuildingSimSettings):
7 """Defines simulation settings for TEASER Plugin.
9 This class defines the simulation settings for the TEASER Plugin. It
10 inherits all choices from the BuildingSimulation settings. TEASER
11 specific settings are added here.
12 """
13 sim_results = ChoiceSetting(
14 default=[
15 "heat_demand_total", "cool_demand_total",
16 "heat_demand_rooms", "cool_demand_rooms",
17 "heat_energy_total", "cool_energy_total",
18 "heat_energy_rooms", "cool_energy_rooms",
19 "air_temp_out", "operative_temp_rooms", "air_temp_rooms",
20 "internal_gains_machines_rooms", "internal_gains_persons_rooms",
21 "internal_gains_lights_rooms", "n_persons_rooms",
22 "infiltration_rooms", "mech_ventilation_rooms",
23 "heat_set_rooms", "cool_set_rooms", "cpu_time"
25 ],
26 choices={
27 "heat_demand_total":
28 "Total heating demand (power) as time series data",
29 "cool_demand_total":
30 "Total cooling demand (power) as time series data",
31 "heat_demand_rooms":
32 "Zone based heating demand (power) as time series data",
33 "cool_demand_rooms":
34 "Zone based cooling demand (power) as time series data",
35 "heat_energy_total":
36 "Total heating energy as time series data",
37 "cool_energy_total":
38 "Total cooling energy as time series data",
39 "heat_energy_rooms":
40 "Zone based heating energy as time series data",
41 "cool_energy_rooms":
42 "Zone cooling heating energy as time series data",
43 "air_temp_out":
44 "Outdoor air temperature as time series data",
45 "operative_temp_rooms":
46 "Zone based operative temperature as time series data",
47 "air_temp_rooms":
48 "Zone based indoor air temperature as time series data",
49 "internal_gains_machines_rooms":
50 "Internal gains through machines in W as time series data",
51 "internal_gains_persons_rooms":
52 "Internal gains through persons in W as time series data",
53 "internal_gains_lights_rooms":
54 "Internal gains through lights in W as time series data",
55 "n_persons_rooms":
56 "Total amount of occupying persons as time series data",
57 "infiltration_rooms":
58 "Infiltration into room in 1/h as time series data",
59 "mech_ventilation_rooms":
60 "Mechanical ventilation flow in m³/h as time series data",
61 "heat_set_rooms":
62 "Heating set point in °C time series data",
63 "cool_set_rooms":
64 "Cooling set point in °C time series data",
65 "cpu_time": "Computational time taken for simulation."
66 },
67 multiple_choice=True,
68 )
70 zoning_criteria = ChoiceSetting(
71 default=ZoningCriteria.individual_spaces,
72 choices={
73 ZoningCriteria.external:
74 'Group all thermal zones that have contact to the exterior'
75 ' together and all thermal zones that do not have contact to'
76 ' exterior.',
77 ZoningCriteria.external_orientation:
78 'Like external, but takes orientation '
79 '(North, East, South, West)'
80 ' into account as well',
81 ZoningCriteria.usage:
82 'Group all thermal zones that have the same usage.',
83 ZoningCriteria.external_orientation_usage:
84 'Combines grouping based on exterior contact, '
85 'orientation, and usage.',
86 ZoningCriteria.all_criteria:
87 'Uses all criteria including exterior contact, orientation, '
88 'usage, glass percentage, and only groups physically adjacent '
89 'rooms.',
90 ZoningCriteria.individual_spaces:
91 'Creates individual thermal zones for each space.',
92 ZoningCriteria.combined_single_zone:
93 'Combines all spaces into a single thermal zone.'
94 },
95 for_frontend=True
96 )
98 path_aixlib = PathSetting(
99 default=None,
100 description='Path to the local AixLib`s repository. This needs to '
101 'point to the root level package.mo file. If not'
102 ' provided, the version for regression testing will be '
103 'used if it was already downloaded using the '
104 'prepare_regression_tests.py script.',
105 for_frontend=False,
106 mandatory=False
107 )