modelThermalZoneAdapter

Block that interacts with this EnergyPlus zone

Extends from Modelica.Blocks.Icons.Block (Basic graphical layout of input/output block), Buildings.ThermalZones.EnergyPlus_24_2_0.BaseClasses.Synchronize.ObjectSynchronizer (Block that synchronizes an object).

Information

Block that exchanges data between Modelica and EnergyPlus. This block is calling the C functions to initialize EnergyPlus, exchange data with EnergyPlus, and free the memory, through the destructor of its class adapter, of EnergyPlus.

Parameters

TypeNameDefaultDescription
StringmodelicaNameBuildingName of the building to which this thermal zone belongs to
StringmodelicaInstanceNamegetInstanceName()Name of this instance
StringspawnExeName of the spawn executable, without extension, such as spawn-0.2.0-d7f1e095f3
StringidfVersionIDF version with underscore, used for error report
StringidfNameName of the IDF file that contains this zone
StringepwNameName of the Energyplus weather file including the epw extension
RealrelativeSurfaceToleranceRelative tolerance of surface temperature calculations
StringzoneNameName of the thermal zone as specified in the EnergyPlus input
IntegernFluPorNumber of fluid ports (Set to 2 for one inlet and one outlet)
Modelica.Units.SI.AreaAFloFloor area
Modelica.Units.SI.VolumeVZone volume
RealmSenFacFactor for scaling the sensible thermal mass of the zone air volume
Run period
Buildings.ThermalZones.EnergyPlus_24_2_0.Data.RunPeriodrunPeriodEnergyPlus RunPeriod configuration
Debug
BooleanusePrecompiledFMUfalseSet to true to use pre-compiled FMU with name specified by fmuName
StringfmuName""Specify if a pre-compiled FMU should be used instead of EnergyPlus (mainly for development)
Buildings.ThermalZones.EnergyPlus_24_2_0.Types.LogLevelslogLevelBuildings.ThermalZones.EnergyPlus_24_2_0.Types.LogLevels.WarningLogLevels of EnergyPlus output
Advanced
BooleansetInitialRadiativeHeatGainToZeroIf true, then the radiative heat gain sent from Modelica to EnergyPlus is zero during the model initialization

Connectors

TypeNameDefaultDescription
Modelica.Blocks.Interfaces.RealInputTZone air temperature
Modelica.Blocks.Interfaces.RealInputX_wZone air mass fraction in kg/kg total air
Modelica.Blocks.Interfaces.RealInput[nFluPor]m_flowMass flow rate
Modelica.Blocks.Interfaces.RealInput[nFluPor]TInletAir inlet temperatures
Modelica.Blocks.Interfaces.RealInputQGaiRad_flowRadiative heat gain
Modelica.Blocks.Interfaces.RealOutputTRadRadiative temperature
Modelica.Blocks.Interfaces.RealOutputQCon_flowConvective sensible heat to be added to zone air
Modelica.Blocks.Interfaces.RealOutputQLat_flowLatent heat to be added to zone air
Modelica.Blocks.Interfaces.RealOutputQPeo_flowTotal heat gain from people, to be used for optional computation of CO2 released
Modelica.Blocks.Interfaces.RealInputpAbsolute pressure of room air

Components

TypeNameDefaultDescription
Buildings.ThermalZones.EnergyPlus_24_2_0.Buildingbuilding (from ObjectSynchronizer)Reference to outer building model
SynchronizeBuildingsynBui (from ObjectSynchronizer)Model that synchronize the Spawn objects

Contents

NameDescription
roundprotected

Revisions

  • April 22, 2026, by Michael Wetter:
    Corrected miss-placed bracket in the computation of the average inlet temperature to the zone.
    This is for #4559.
  • March 30, 2026, by Michael Wetter:
    Added check for air pressure to be within reasonable limits.
    This is for #3319.
  • March 22, 2024, by Michael Wetter:
    Changed radiative heat flow rate sent to EnergyPlus to be the average over the last synchronization time step rather than the instantaneuous value, and set the initial value to zero. This avoids a nonlinear system of equation during the time integration for models in which the radiative heat gain is a function of the room radiative temperature, such as when a radiator is connected to the room model.
    This is for Buildings, #3707.
  • February 14, 2024, by Michael Wetter:
    Added pre() operator for inlet mass flow rate and for convective heat gain to avoid an algebraic loop on discrete variables.
    This is for Buildings, #3659.
  • February 18, 2021, by Michael Wetter:
    Refactor synchronization of constructors.
    This is for #2360.
  • December 6, 2020, by Michael Wetter:
    Reformulated when condition to avoid using not initial(). Per the Modelica language definition, when clauses are not meant to contain not initial().
    This is for #2068.
  • April 04, 2018, by Thierry S. Nouidui:
    Added additional parameters for parametrizing the EnergyPlus model.
  • March 21, 2018, by Thierry S. Nouidui:
    Revised implementation for efficiency.
  • February 14, 2018, by Michael Wetter:
    First implementation.