modelLinWindow
Extension of the window model to allow linearization
Extends from IDEAS.Buildings.Components.Window (Multipane window).
Information
This model extends the IDEAS.Building.Components.Window model
and it adds two propsBusses. The propsBusses are used to transform the heat flows
through the windows due to solar radiation into inputs (for linearization purposes)
and into outputs (to pre-compute the inputs of the linearized model).
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | incOpt (from PartialSurface) | 4 | Tilt angle option from simInfoManager, or custom using inc |
| Modelica.Units.SI.Angle | inc (from PartialSurface) | sim.incOpts[incOpt] | Custom inclination (tilt) angle of the wall, default wall |
| Integer | aziOpt (from PartialSurface) | 5 | Azimuth angle option from simInfoManager, or custom using azi |
| Modelica.Units.SI.Angle | azi (from PartialSurface) | sim.aziOpts[aziOpt] | Custom azimuth angle of the wall, default south |
| Modelica.Units.SI.Area | A (from PartialSurface) | Component surface area | |
| Real | nWin (from PartialSurface) | 1 | Use this factor to scale the component to nWin identical components |
| Real | q50_internal (from PartialSurface) | Surface air tightness | |
| Modelica.Units.SI.Length | hzone_a (from PartialSurface) | ||
| Modelica.Units.SI.Length | hAbs_floor_a (from PartialSurface) | ||
| Modelica.Units.SI.Length | Habs_surf (from PartialSurface) | hAbs_floor_a + hRelSurfBot_a + (hVertical/2) | Absolute height of the middle of the surface, can be used to check the heights after initialisation |
| Modelica.Units.SI.Length | hWin (from Window) | max(0.1, sqrt(A)) | Window height, including frame |
| Real | frac (from Window) | 0.15 | Area fraction of the window frame |
| IDEAS.Buildings.Data.Frames.None | fraType (from Window) | ||
| IDEAS.Buildings.Data.WindPressureCoeff.Lowrise_Square_Exposed | Cp_table (from Window) | ||
| Advanced › Design power | |||
| Modelica.Units.SI.Power | QTra_design (from PartialSurface) | Design heat losses at reference temperature of the boundary space | |
| Dynamics › Initial condition | |||
| Modelica.Units.SI.Temperature | T_start (from PartialSurface) | 293.15 | Start temperature for each of the layers |
| Convection | |||
| Boolean | linIntCon_a (from PartialSurface) | sim.linIntCon | = true, if convective heat transfer should be linearised |
| Modelica.Units.SI.TemperatureDifference | dT_nominal_a (from PartialSurface) | 1 | Nominal temperature difference used for linearisation, negative temperatures indicate the solid is colder |
| Boolean | linExtCon (from Window) | sim.linExtCon | = true, if exterior convective heat transfer should be linearised (uses average wind speed) |
| Dynamics › Equations | |||
| Modelica.Fluid.Types.Dynamics | energyDynamics (from PartialSurface) | Modelica.Fluid.Types.Dynamics.FixedInitial | Static (steady state) or transient (dynamic) thermal conduction model |
| IDEAS.Buildings.Components.Interfaces.WindowDynamicsType | windowDynamicsType (from Window) | IDEAS.Buildings.Components.Interfaces.WindowDynamicsType.Two | Type of dynamics for glazing and frame: using zero, one combined or two states |
| Real | fraC (from Window) | frac | Ratio of frame and glazing thermal masses |
| Airflow › Airtightness | |||
| Boolean | use_custom_q50 (from PartialSurface) | false | check to disable the default q50 computation and to assign a custom q50 value |
| Real | custom_q50 (from PartialSurface) | 2 | Surface air tightness |
| Vertical position (important if interZonalAirFlowType is TwoPorts) | |||
| Modelica.Units.SI.Length | hVertical (from PartialSurface) | 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 (from PartialSurface) | 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.) |
| Radiation | |||
| Boolean | linExtRad (from Window) | sim.linExtRadWin | = true, if exterior radiative heat transfer should be linearised |
| Advanced › Icon | |||
| Boolean | controlled (from Window) | shaType.controlled | = true if shaType has a control input (see e.g. screen). Can be set to false manually to force removal of input icon. |
| Airflow › Wind Pressure | |||
| Real[:,:] | coeffsCp (from Window) | if incInt <= Modelica.Constants.pi/18 then Cp_table.Cp_Roof_0_10 elseif incInt <= Modelica.Constants.pi/6 then Cp_table.Cp_Roof_11_30 elseif inc <= Modelica.Constants.pi/4 then Cp_table.Cp_Roof_30_45 elseif IDEAS.Utilities.Math.Functions.isAngle(incInt, Modelica.Constants.pi) then Cp_table.Cp_Floor else Cp_table.Cp_Wall | Cp at different angles of attack, default the correct table will be selected from Cp_table based on the surface tilt |
| Boolean | use_custom_Cs (from Window) | false | if checked, Cs will be used in stead of the default related to the interzonal airflow type |
| Boolean | use_sim_Cs (from Window) | sim.use_sim_Cs | if checked, the default Cs of each surface in the building is sim.Cs |
| Real | Cs (from Window) | sim.Cs | Wind speed modifier |
| Airflow › Wind | |||
| Real | Habs (from Window) | Absolute height at the middle of the window | |
| Airflow › Operable window | |||
| Boolean | use_operable_window (from Window) | false | = true, to enable window control input when using sim.interZonalAirFlowType == IDEAS.BoundaryConditions.Types.InterZonalAirFlow.TwoPorts |
| Airflow › Trickle vent | |||
| Boolean | use_trickle_vent (from Window) | false | = true, to enable trickle vent |
| Modelica.Units.SI.MassFlowRate | m_flow_nominal (from Window) | 0 | Nominal mass flow rate of trickle vent |
| Modelica.Units.SI.PressureDifference | dp_nominal (from Window) | 5 | Pressure drop at nominal mass flow rate of trickle vent |
| Boolean | use_trickle_vent_control (from Window) | false | =true, to enable trickle vent control input |
| Modelica.Units.SI.Length | hTrickleVent (from Window) | hVertical + hRelSurfBot_a | vertical distance between the floor of the zone (top) and the trickle vent |
| Advanced › Frame | |||
| Modelica.Units.SI.Length | briLen (from Window) | 2*hWin + 2*A/hWin | Thermal bridge length, if present |
| Linearisation | |||
| Integer | indexWindow | 1 | Index of this window |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| IDEAS.Buildings.Components.Interfaces.ZoneBus | propsBus_a (from PartialSurface) | 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. | |
| Modelica.Blocks.Interfaces.RealInput | Ctrl (from Window) | Control signal for screen between 0 and 1, 1 is fully closed | |
| Modelica.Blocks.Interfaces.RealInput | y_trickleVent (from Window) | Control signal for trickle vent between 0 and 1, 1 is fully opened | |
| Modelica.Blocks.Interfaces.RealInput | y_window (from Window) | Control signal for window opening between 0 and 1, i.e. 1 is fully opened |
Components
Revisions
-
August 21, 2018 by Damien Picard:
Added documentation.