modelPartialSurface
Information
Partial model for all surfaces and windows that contains common building blocks such as material layers and parameters.
Main equations
Submodel layMul contains equations
for simulating conductive (and sometimes radiative) heat transfer
inside material layers.
Assumption and limitations
This model assumes 1D heat transfer, i.e. edge effects are neglected. Mass exchange (moisture) is not modelled.
Typical use and important parameters
Parameters inc and azi may be
used to specify the inclination and azimuth/tilt angle of the surface.
Variables in IDEAS.Types.Azimuth
and IDEAS.Types.Tilt
may be used for this purpose or custom variables may be defined.
Numerical values can be used directly.
Azimuth angles should be in radians relative to the south orientation, clockwise.
Tilt angles should be in radians where an angle of 0 is the ceiling (upward) orientation
and an angle of Pi is the floor (downward) orientation.
Preferably the azimuth angle is set to zero for horizontal tilt angles,
since this leads to more efficient code,
although the model results will not change.
The parameter nWin is used in the window model to scale
the window to nWin identical window using the single window
model.
Options
Convection equations may be simplified (linearised) by setting linIntCon_a = true.
Dynamics
This model contains multiple state variables for describing the temperature state of the component.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | incOpt | 4 | Tilt angle option from simInfoManager, or custom using inc |
| Modelica.Units.SI.Angle | inc | sim.incOpts[incOpt] | Custom inclination (tilt) angle of the wall, default wall |
| Integer | aziOpt | 5 | Azimuth angle option from simInfoManager, or custom using azi |
| Modelica.Units.SI.Angle | azi | sim.aziOpts[aziOpt] | Custom azimuth angle of the wall, default south |
| Modelica.Units.SI.Area | A | Component surface area | |
| Real | nWin | 1 | Use this factor to scale the component to nWin identical components |
| Real | q50_internal | Surface air tightness | |
| Modelica.Units.SI.Length | hzone_a | ||
| Modelica.Units.SI.Length | hAbs_floor_a | ||
| Modelica.Units.SI.Length | Habs_surf | hAbs_floor_a + hRelSurfBot_a + (hVertical/2) | Absolute height of the middle of the surface, can be used to check the heights after initialisation |
| Advanced › Design power | |||
| Modelica.Units.SI.Power | QTra_design | Design heat losses at reference temperature of the boundary space | |
| Dynamics › Initial condition | |||
| Modelica.Units.SI.Temperature | T_start | 293.15 | Start temperature for each of the layers |
| Convection | |||
| Boolean | linIntCon_a | sim.linIntCon | = true, if convective heat transfer should be linearised |
| Modelica.Units.SI.TemperatureDifference | dT_nominal_a | 1 | Nominal temperature difference used for linearisation, negative temperatures indicate the solid is colder |
| Dynamics › Equations | |||
| Modelica.Fluid.Types.Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamics.FixedInitial | Static (steady state) or transient (dynamic) thermal conduction model |
| Airflow › Airtightness | |||
| Boolean | use_custom_q50 | false | check to disable the default q50 computation and to assign a custom q50 value |
| Real | custom_q50 | 2 | Surface air tightness |
| Vertical position (important if interZonalAirFlowType is TwoPorts) | |||
| Modelica.Units.SI.Length | hVertical | if IDEAS.Utilities.Math.Functions.isAngle(incInt, IDEAS.Types.Tilt.Floor) or IDEAS.Utilities.Math.Functions.isAngle(incInt, IDEAS.Types.Tilt.Ceiling) then 0 else hzone_a | Vertical surface height, height of the surface projected to the vertical (e.g. 0 for floors and ceilings) |
| Modelica.Units.SI.Length | hRelSurfBot_a | if IDEAS.Utilities.Math.Functions.isAngle(incInt, IDEAS.Types.Tilt.Ceiling) then hzone_a else 0 | Height between the lowest point of the surface (bottom) and the floor level of the zone connected at propsBus_a (e.g. 0 for walls at floor level and floors.) |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| IDEAS.Buildings.Components.Interfaces.ZoneBus | propsBus_a | If inc = Floor, then propsbus_a should be connected to the zone above this floor. If inc = ceiling, then propsbus_a should be connected to the zone below this ceiling. If component is an outerWall, porpsBus_a should be connect to the zone. |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| IDEAS.BoundaryConditions.SimInfoManager | sim | Simulation information manager for climate data | |
| IDEAS.Buildings.Components.BaseClasses.ConvectiveHeatTransfer.InteriorConvection | intCon_a | Convective heat transfer correlation for port_a | |
| IDEAS.Buildings.Components.BaseClasses.ConductiveHeatTransfer.MultiLayer | layMul | Multilayer component for simulating walls, windows and other surfaces | |
| Modelica.Units.SI.MassFlowRate | mBA_flow_1 | crackOrOperableDoor.m1_flow | Flow outwards relative to propsBus_a, part 1 |
| Modelica.Units.SI.MassFlowRate | mBA_flow_2 | -crackOrOperableDoor.m2_flow | Flow outwards relative to propsBus_a, part 2 |
| Q50_parameterToConnector | q50_zone | ||
| IDEAS.Airflow.Multizone.CrackOrOperableDoor | crackOrOperableDoor | ||
| Modelica.Blocks.Sources.RealExpression | AExp | Area expression | |
| Modelica.Blocks.Routing.BooleanPassThrough | use_custom_q50PassThrough | ||
| Modelica.Blocks.Routing.RealPassThrough | v50PassThrough |
Contents
| Name | Description |
|---|---|
| Medium in the component | |
| Converts parameter values into connectors for propsBus |
Revisions
-
August 18, 2025, by Klaas De Jonge:
ChangedinctoincIntwhere nececarry. -
January 24, 2025, by Klaas De Jonge:
Addition of BooleanPassThrough and RealPassThrough block for v50 and use_custom_q50 and parameter for number of dummy connections inQ50_parameterToConnectorto avoid translation warnings. See #1402 -
November 7, 2024, by Anna Dell'Isola and Jelger Jansen:
Add variableTRefZonto be used when calculatingQTra_design. See #1337
October 30, 2024, by Klaas De Jonge and Filip Jorissen: -
October 23, 2023, by Filip Jorissen:
Using real expression to set area of propsBusInt. To add some flexibility for ensuring n50 computation is correct. -
August 10, 2020, by Filip Jorissen:
Modifications for supporting interzonal airflow. See #1066 -
October 13, 2019, by Filip Jorissen:
Refactored the parameter definition ofincandaziby adding the option to use radio buttons. See #1067 -
August 10, 2018 by Damien Picard:
Add scaling to propsBus_a to allow simulation of nWin windows instead of 1 See #888. This factor is not useful for wall and it is set final to 1 for them. -
January 26, 2018, by Filip Jorissen:
Extended documentation. -
March 21, 2017, by Filip Jorissen:
Changed bus declarations for JModelica compatibility. See issue #559. -
January 10, 2017, by Filip Jorissen:
Declared parameterAinstead of usingAWallin IDEAS.Buildings.Components.Interfaces.PartialOpaqueSurface. This is for #609. -
November 15, 2016, by Filip Jorissen:
Revised documentation for IDEAS 1.0. -
March 8, 2016, by Filip Jorissen:
Added energyDynamics parameter. -
February 10, 2016, by Filip Jorissen and Damien Picard:
Revised implementation: cleaned up connections and partials. -
February 6, 2016 by Damien Picard:
First implementation.
Additions for supporting interzonal airflow: use of crackoroperabledoor model, default column height implementation for stack-effect.