Three zones hydronic heating
The previous tutorials provided idealized, somewhat unrealistic examples. In this tutorial, we will simulate a three-zone building with a hydronic heating system, aiming for a more realistic house model. Below, we will outline and describe the configuration file, highlighting key points to consider:
Default Construction Values : Trano includes a set of predefined construction, glazing, and gas properties. You can incorporate these into your configuration file by adding the following line:
default : !include_default
Emission Systems : Each space is assigned a list of emission systems, with each linked to a radiator object (RADIATOR:001
) and a valve object (VALVE:001
). In this configuration, the valve is controlled instead of the radiator:
emissions :
- radiator :
id : RADIATOR:001
- valve :
id : VALVE:001
control :
emission_control :
Hydronic System Definition : A complete hydronic system must be defined, specifying the boiler, pump, and various valves in the system:
systems :
- boiler :
id : BOILER:001
control :
boiler_control :
- pump :
id : PUMP:001
control :
collector_control :
outlets :
- THREE_WAY_VALVE:001
- THREE_WAY_VALVE:002
inlets :
- BOILER:001
- split_valve :
id : SPLIT_VALVE:001
inlets :
- VALVE:003
- VALVE:001
outlets :
- BOILER:001
- three_way_valve :
id : THREE_WAY_VALVE:001
control :
three_way_valve_control :
outlets :
- TEMPERATURE_SENSOR:001
- SPLIT_VALVE:001
- temperature_sensor :
id : TEMPERATURE_SENSOR:001
outlets :
- RADIATOR:001
- RADIATOR:003
- split_valve :
id : SPLIT_VALVE:002
inlets :
- VALVE:002
outlets :
- BOILER:001
- three_way_valve :
id : THREE_WAY_VALVE:002
control :
three_way_valve_control :
outlets :
- TEMPERATURE_SENSOR:002
- SPLIT_VALVE:002
- temperature_sensor :
id : TEMPERATURE_SENSOR:002
inlets :
- THREE_WAY_VALVE:002
outlets :
- RADIATOR:002
The described configuration outlines a building that is likely a multi-room residential or commercial structure with distinct spaces. Key characteristics include:
Construction Materials : The building features walls composed of multiple layers of materials with low thermal conductivity (0.035), which suggests a focus on energy efficiency and insulation.
Room Occupancy and Size : It contains at least three separate spaces (likely rooms) with defined floor areas (ranging from 40 to 50 square meters) and an average room height of 2.5 meters.
Heating System : Each space is equipped with radiators for heating, supported by a centralized boiler with a nominal heating power of 20,000 Watts. There are also controlled valves for efficient heating distribution.
External Walls and Windows : The building's external walls are categorized into various configurations depending on surface azimuth and construction type, indicating attention to natural light and energy performance through the placement of windows.
Foundation : It's constructed on concrete slabs for ground floors, which provides durability and stability.
Based on these factors, the building is designed for efficient thermal performance, likely serving residential or small commercial purposes.
default : !include_default
material :
- id : MATERIAL:001
thermal_conductivity : 0.035
density : 2000.0
specific_heat_capacity : 1000.0
- id : MATERIAL:002
thermal_conductivity : 0.035
density : 2000.0
specific_heat_capacity : 1000.0
- id : MATERIAL:003
thermal_conductivity : 0.035
density : 2000.0
specific_heat_capacity : 1000.0
constructions :
- id : CONSTRUCTION:001
layers :
- material : MATERIAL:001
thickness : 0.1
- material : MATERIAL:002
thickness : 0.1
- material : MATERIAL:003
thickness : 0.1
spaces :
- occupancy :
parameters :
floor_area : 49.0
average_room_height : 2.5
id : SPACE:001
external_boundaries :
external_walls :
- surface : 20
azimuth : 0
tilt : wall
construction : CAVITYWALL:001
- surface : 30
azimuth : 90
tilt : wall
construction : CAVITYWALL:001
- surface : 50
azimuth : 180.0
tilt : wall
construction : CAVITYWALL:001
windows :
- surface : 5.0
construction : EPCDOUBLE:001
azimuth : 0
tilt : wall
- surface : 2.0
construction : EPCDOUBLE:001
azimuth : 180.0
tilt : wall
floor_on_grounds :
- surface : 49
construction : CONCRETESLAB:001
emissions :
- radiator :
parameters :
nominal_heating_power_positive_for_heating : 5000
dp_nominal : 100
id : RADIATOR:003
- valve :
id : VALVE:003
control :
emission_control :
- occupancy :
parameters :
gain : "[ 45; 90; 40 ]"
occupancy : 3600*{16, 21}
parameters :
floor_area : 40
average_room_height : 2.5
id : SPACE:002
external_boundaries :
external_walls :
- surface : 25
azimuth : 0
tilt : wall
construction : CAVITYWALLPARTIALFILL:001
- surface : 25
azimuth : 90
tilt : wall
construction : CAVITYWALLPARTIALFILL:001
- surface : 34
azimuth : 180
tilt : wall
construction : CAVITYWALLPARTIALFILL:001
windows :
- surface : 5.0
construction : INS2AR2020:001
azimuth : 0
tilt : wall
- surface : 2.0
construction : INS2AR2020:001
azimuth : 180
tilt : wall
floor_on_grounds :
- surface : 40
construction : CONCRETESLAB:001
emissions :
- radiator :
parameters :
nominal_heating_power_positive_for_heating : 5000
id : RADIATOR:001
- valve :
id : VALVE:001
control :
emission_control :
- occupancy :
parameters :
gain : "[35; 70; 30]"
occupancy : 3600*{10, 14}
parameters :
floor_area : 50.0
average_room_height : 2.5
id : SPACE:003
external_boundaries :
external_walls :
- surface : 22
azimuth : 180.0
tilt : wall
construction : CONSTRUCTION:001
- surface : 17
azimuth : 180.0
tilt : wall
construction : CONSTRUCTION:001
- surface : 36
azimuth : 180.0
tilt : wall
construction : CONSTRUCTION:001
floor_on_grounds :
- surface : 60.0
construction : CONCRETESLAB:001
emissions :
- radiator :
id : RADIATOR:002
- valve :
id : VALVE:002
control :
emission_control :
internal_walls :
- space_1 : SPACE:001
space_2 : SPACE:002
construction : CAVITYWALL:001
surface : 20
- space_1 : SPACE:002
space_2 : SPACE:001
construction : CONSTRUCTION:001
surface : 15
- space_1 : SPACE:002
space_2 : SPACE:003
construction : CAVITYWALLPARTIALFILL:001
surface : 22
systems :
- boiler :
parameters :
nominal_heating_power : 20000
id : BOILER:001
control :
boiler_control :
- pump :
id : PUMP:001
control :
collector_control :
outlets :
- THREE_WAY_VALVE:001
- THREE_WAY_VALVE:002
inlets :
- BOILER:001
- split_valve :
id : SPLIT_VALVE:001
inlets :
- VALVE:003
- VALVE:001
outlets :
- BOILER:001
- three_way_valve :
id : THREE_WAY_VALVE:001
control :
three_way_valve_control :
outlets :
- TEMPERATURE_SENSOR:001
- SPLIT_VALVE:001
- temperature_sensor :
id : TEMPERATURE_SENSOR:001
outlets :
- RADIATOR:001
- RADIATOR:003
- split_valve :
id : SPLIT_VALVE:002
inlets :
- VALVE:002
outlets :
- BOILER:001
- three_way_valve :
id : THREE_WAY_VALVE:002
control :
three_way_valve_control :
outlets :
- TEMPERATURE_SENSOR:002
- SPLIT_VALVE:002
- temperature_sensor :
id : TEMPERATURE_SENSOR:002
inlets :
- THREE_WAY_VALVE:002
outlets :
- RADIATOR:002
Code
The following code snippet demonstrates how to simulate a multizone model using Trano. This simulation will also generate a report containing a detailed description of the parameters and accompanying figures.
Test tutorials from trano.main import simulate_model
from trano.simulate.simulate import SimulationLibraryOptions
simulate_model (
path_to_yaml_configuration_folder / "three_zones_hydronic_heating.yaml" ,
SimulationLibraryOptions (
start_time = 0 ,
end_time = 2 * 3600 * 24 * 7 ,
tolerance = 1e-4 ,
library_name = "Buildings" ,
),
)
General Explanation
The code snippet imports a function and class necessary to simulate a model using a specified configuration file in YAML format. It executes the simulation over a defined time period with specific parameters.
Parameters Description
path_to_yaml_configuration_folder / "three_zones_hydronic_heating.yaml"
:
Type : String (Path)
Description : Path to the YAML file containing the model configuration.
SimulationLibraryOptions
:
Type : Class
Description : A collection of options for configuring the simulation library.
Parameters :
start_time
:
Type : Integer
Description : Simulation start time in seconds (0 indicates the beginning).
end_time
:
Type : Integer
Description : Simulation end time in seconds (2 weeks).
tolerance
:
Type : Float
Description : Numerical tolerance for convergence (1e-4).
library_name
:
Type : String
Description : Name of the simulation library being used (e.g., "Buildings").
Outputs
The following report is generated by Trano after simulating a three-zone building with an ideal heating system.
Spaces
External Boundaries Table
hRoo
AFlo
linearizeRadiation
m_flow_nominal
mSenFac
T_start
volume
2.5
49.0
true
0.01
1.0
294.15
122.5
gain
k
occupancy
name
[35; 70; 30]
1/6/4
3600 * {7, 19}
occupancy_1
Name
Azimuth
Construction Name
Surface
Tilt
externalwall_36
0.0
cavitywall_001
20.0
wall
externalwall_37
90.0
cavitywall_001
30.0
wall
externalwall_38
180.0
cavitywall_001
50.0
wall
window_13
0.0
epcdouble_001
5.0
wall
window_14
180.0
epcdouble_001
2.0
wall
flooronground_12
90.0
concreteslab_001
49.0
floor
internal_space_001_space_002_cavitywall
10.0
cavitywall_001
20.0
wall
internal_space_002_space_001_construction
10.0
construction_001
15.0
wall
TAir_nominal
dp_nominal
n
deltaM
fraRad
Q_flow_nominal
nEle
TRad_nominal
linearized
from_dp
T_a_nominal
T_b_nominal
mDry
VWat
name
293.15
100.0
1.24
0.01
0.3
5000.0
1
293.15
false
false
363.15
353.15
131.5
0.29
radiator_003
dpFixed_nominal
dpValve_nominal
deltaM
m_flow_nominal
delta0
R
linearized
from_dp
l
name
6000.0
6000.0
0.02
0.01
0.01
50.0
false
true
0.0001
valve_003
External Boundaries Table
hRoo
AFlo
linearizeRadiation
m_flow_nominal
mSenFac
T_start
volume
2.5
40.0
true
0.01
1.0
294.15
100.0
gain
k
occupancy
name
[ 45; 90; 40 ]
1/6/4
3600*{16, 21}
occupancy_2
Name
Azimuth
Construction Name
Surface
Tilt
externalwall_39
0.0
cavitywallpartialfill_001
25.0
wall
externalwall_40
90.0
cavitywallpartialfill_001
25.0
wall
externalwall_41
180.0
cavitywallpartialfill_001
34.0
wall
window_15
0.0
ins2ar2020_001
5.0
wall
window_16
180.0
ins2ar2020_001
2.0
wall
flooronground_13
90.0
concreteslab_001
40.0
floor
internal_space_001_space_002_cavitywall
10.0
cavitywall_001
20.0
wall
internal_space_002_space_001_construction
10.0
construction_001
15.0
wall
internal_space_002_space_003_cavitywallpartialfill
10.0
cavitywallpartialfill_001
22.0
wall
TAir_nominal
dp_nominal
n
deltaM
fraRad
Q_flow_nominal
nEle
TRad_nominal
linearized
from_dp
T_a_nominal
T_b_nominal
mDry
VWat
name
293.15
0.0
1.24
0.01
0.3
5000.0
1
293.15
false
false
363.15
353.15
131.5
0.29
radiator_001
dpFixed_nominal
dpValve_nominal
deltaM
m_flow_nominal
delta0
R
linearized
from_dp
l
name
6000.0
6000.0
0.02
0.01
0.01
50.0
false
true
0.0001
valve_001
External Boundaries Table
hRoo
AFlo
linearizeRadiation
m_flow_nominal
mSenFac
T_start
volume
2.5
50.0
true
0.01
1.0
294.15
125.0
gain
k
occupancy
name
[35; 70; 30]
1/6/4
3600*{10, 14}
occupancy_3
Name
Azimuth
Construction Name
Surface
Tilt
externalwall_42
180.0
construction_001
22.0
wall
externalwall_43
180.0
construction_001
17.0
wall
externalwall_44
180.0
construction_001
36.0
wall
flooronground_14
90.0
concreteslab_001
60.0
floor
internal_space_002_space_003_cavitywallpartialfill
10.0
cavitywallpartialfill_001
22.0
wall
TAir_nominal
dp_nominal
n
deltaM
fraRad
Q_flow_nominal
nEle
TRad_nominal
linearized
from_dp
T_a_nominal
T_b_nominal
mDry
VWat
name
293.15
0.0
1.24
0.01
0.3
2000.0
1
293.15
false
false
363.15
353.15
52.6
0.116
radiator_002
dpFixed_nominal
dpValve_nominal
deltaM
m_flow_nominal
delta0
R
linearized
from_dp
l
name
6000.0
6000.0
0.02
0.01
0.01
50.0
false
true
0.0001
valve_002
Construction
Layer Information Table
Layers for epcdouble_001
Name
c
epsLw
epsSw
k
rho
Thickness
glass_001
840.0
0.84
0.67
1.0
2500.0
0.0038
air_001
1006.0
0.0
0.0
0.0256
1.2
0.012
glass_001
840.0
0.84
0.67
1.0
2500.0
0.0038
Layer Information Table
Layers for ins2ar2020_001
Name
c
epsLw
epsSw
k
rho
Thickness
glass_001
840.0
0.84
0.67
1.0
2500.0
0.006
argon_001
522.0
0.0
0.0
0.0174
1.66
0.016
glass_001
840.0
0.84
0.67
1.0
2500.0
0.006
Layer Information Table
Layers for concreteslab_001
Name
c
epsLw
epsSw
k
rho
Thickness
concrete_001
900.0
0.88
0.55
1.4
2240.0
0.125
concrete_001
900.0
0.88
0.55
1.4
2240.0
0.125
Layer Information Table
Layers for construction_001
Name
c
epsLw
epsSw
k
rho
Thickness
material_001
1000.0
0.85
0.85
0.035
2000.0
0.1
material_002
1000.0
0.85
0.85
0.035
2000.0
0.1
material_003
1000.0
0.85
0.85
0.035
2000.0
0.1
Layer Information Table
Layers for cavitywall_001
Name
c
epsLw
epsSw
k
rho
Thickness
brick_001
800.0
0.88
0.55
0.89
1920.0
0.08
rockwool_001
800.0
0.8
0.8
0.035
100.0
0.1
brickhollow_001
880.0
0.88
0.55
0.3
850.0
0.14
gypsum_001
840.0
0.85
0.65
0.38
1120.0
0.015
Layer Information Table
Layers for cavitywallpartialfill_001
Name
c
epsLw
epsSw
k
rho
Thickness
brick_001
800.0
0.88
0.55
0.89
1920.0
0.08
air_001
1006.0
0.0
0.0
0.0256
1.2
0.03
rockwool_001
800.0
0.8
0.8
0.035
100.0
0.1
brickhollow_001
880.0
0.88
0.55
0.3
850.0
0.14
gypsum_001
840.0
0.85
0.65
0.38
1120.0
0.015
Systems
External Boundaries Table
coefficients_for_efficiency_curve
diff_pressure
dp_nominal
dt_boi_nominal
dt_rad_nominal
effcur
fraction_of_nominal_flow_rate_where_flow_transitions_to_laminar
height_of_tank_without_insulation
if_actual_temperature_at_port_is_computed
nominal_heating_power
number_of_volume_segments
sca_fac_rad
tank_volume
temperature_used_to_compute_nominal_efficiency
thickness_of_insulation
use_linear_relation_between_m_flow_and_dp_for_any_flow_rate
nominal_mass_flow_radiator_loop
nominal_mass_flow_rate_boiler
v_flow
name
{0.9}
5000*{2,1}
5000.0
20.0
10.0
Buildings.Fluid.Types.EfficiencyCurves.Constant
0.1
2.0
false
20000.0
4
1.5
0.2
353.15
0.002
false
0.7142857142857143
0.7142857142857143
0.7142857142857143/1000*{0.5,1}
boiler_001
Back to top