Skip to content

Use different libraries

ifctrano generates models for four Modelica libraries:

LIBRARY Library Zone model
Buildings (default) Buildings Detailed: every surface, layer and window
IDEAS IDEAS Detailed: every surface, layer and window
reduced_order AixLib Reduced order: resistance–capacitance network
iso_13790 AixLib ISO 13790 5R1C simple hourly method

The library is given to save_model:

from pathlib import Path

from ifctrano.building import Building

building = Building.from_ifc(Path("TwoZones.ifc"))
building.save_model(library="IDEAS")

or as the second argument of ifctrano create:

ifctrano create TwoZones.ifc IDEAS

The IDEAS model of the two zones, as opened in OpenModelica (taken with an earlier version; the layout may differ):

Generated model

Results

The same configuration of the two zones model simulated with Buildings and IDEAS, for the first ten days of January, without heating. The figure shows the mean air temperature of the two zones.

AixLib models

The reduced_order and iso_13790 models simulate with --simulate-model since trano 0.43.0, which loads AixLib and installs it in the OpenModelica container. CI simulates the two zones model in all four libraries (tests/test_simulation.py); this comparison shows the two detailed libraries.

Days 3 to 10 of the year (the first 2 simulated days are a warm-up and are left out).

Case Zone Mean [°C] Minimum [°C] Maximum [°C]
Buildings Mean of the zones 8.9 6.0 13.9
IDEAS Mean of the zones 8.8 5.8 13.8

What to expect. Both libraries describe each wall, window and floor with the same constructions, so free-floating temperatures should be close; differences come from the models of the convection, the radiation exchange, the windows and the ground.

What the simulation shows. Over days 3 to 10, the mean temperature of the zones is 8.9 °C with Buildings and 8.8 °C with IDEAS, with minima of 6.0 and 5.8 °C and maxima of 13.9 and 13.8 °C: the two detailed libraries agree within 0.2 K on this building.