Collection of models that illustrate model use and test models
Information
This package contains examples for the use of models that can be found in
Buildings.Rooms.BaseClasses.
Extends from Modelica.Icons.ExamplesPackage (Icon for packages containing runnable examples).
Package Content
Name |
Description |
AirHeatMassBalance
|
Test model for air heat and mass balance |
CFDHeatGain
|
Test model for the CFDHeatGain model |
InfraredRadiationExchange
|
Test model for infrared radiation exchange |
InfraredRadiationGainDistribution
|
Test model for infrared radiation gain |
MixedAirHeatGain
|
Test model for the MixedAirHeatGain model |
MixedAirHeatMassBalance
|
Test model for air heat and mass balance |
RadiationTemperature
|
Test model for the radiation temperature |
BaseClasses
|
Package with base classes for Buildings.Rooms.BaseClasses.Examples |
Test model for air heat and mass balance
Information
This model test the heat and mass balance of the room air, which should
stay at 20°C.
Extends from Modelica.Icons.Example (Icon for runnable examples), Buildings.Rooms.BaseClasses.Examples.BaseClasses.PartialInfraredRadiation (Partial model to test infrared radiation inside the room).
Parameters
Type | Name | Default | Description |
ParameterConstruction | datConExt[NConExt] | datConExt(each A=1) | Data for exterior construction |
ParameterConstructionWithWindow | datConExtWin[NConExtWin] | datConExtWin(each A=1, each ... | Data for exterior construction with window |
ParameterConstruction | datConPar[NConPar] | datConPar(each A=1) | Data for partition construction |
ParameterConstruction | datConBou[NConBou] | datConBou(each A=1) | Data for construction boundary |
OpaqueSurface | surBou[NSurBou] | surBou(each A=1) | Record for data of surfaces whose heat conduction is modeled outside of this room |
Brick120 | dummyCon | | Dummy construction to assign a parameter to the instance |
SingleClear3 | dummyGlaSys | | Dummy construction to assign a parameter to the instance |
Exterior constructions |
Integer | nConExt | 1 | Number of exterior constructions |
Integer | nConExtWin | 0 | Number of window constructions |
Partition constructions |
Integer | nConPar | 0 | Number of partition constructions |
Boundary constructions |
Integer | nConBou | 0 | Number of constructions that have their outside surface exposed to the boundary of this room |
Integer | nSurBou | 0 | Number of surface heat transfer models that connect to constructions that are modeled outside of this room |
Modelica definition
model AirHeatMassBalance
extends Modelica.Icons.Example;
extends Buildings.Rooms.BaseClasses.Examples.BaseClasses.PartialInfraredRadiation
(
nConExt=1, nConExtWin=0, nConBou=0, nSurBou=0, nConPar=0);
Buildings.Rooms.BaseClasses.AirHeatMassBalanceMixed air(
nConExt=nConExt,
nConExtWin=nConExtWin,
nConPar=nConPar,
nConBou=nConBou,
nSurBou=nSurBou,
final datConExt=datConExt,
final datConExtWin=datConExtWin,
final datConPar=datConPar,
final datConBou=datConBou,
final surBou=surBou,
redeclare package Medium =
Buildings.Media.Air,
m_flow_nominal=0.1,
V=10,
conMod=Buildings.HeatTransfer.Types.InteriorConvection.Fixed,
hFixed=3,
haveShade=datConExtWin[1].glaSys.haveShade,
energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial) ;
protected
Modelica.Thermal.HeatTransfer.Components.ThermalConductor conGlaSha[
NConExtWin](
each G=100) ;
Buildings.HeatTransfer.Sources.FixedTemperature bouConGlaSha[NConExtWin](
each T=293.15) ;
Modelica.Thermal.HeatTransfer.Components.ThermalConductor conGlaUns[
NConExtWin](
each G=100) ;
Buildings.HeatTransfer.Sources.FixedTemperature bouConGlaUns[NConExtWin](
each T=293.15) ;
public
Modelica.Thermal.HeatTransfer.Sources.FixedHeatFlow QCon_flow(Q_flow=0) ;
Modelica.Blocks.Sources.Constant uSha[NConExtWin](
each k=0) ;
Modelica.Blocks.Sources.Constant QRadAbs_flow[NConExtWin](
each k=0) ;
equation
connect(conConExt.port_a, air.conExt);
connect(conConExtWin.port_a, air.conExtWin);
connect(conConExtWinFra.port_a, air.conExtWinFra);
connect(conConPar_a.port_a, air.conPar_a);
connect(conConPar_b.port_a, air.conPar_b);
connect(conConBou.port_a, air.conBou);
connect(conSurBou.port_a, air.conSurBou);
connect(bouConGlaUns.port, conGlaUns.port_b);
connect(conGlaUns.port_a, air.glaUns);
connect(bouConGlaSha.port, conGlaSha.port_b);
connect(conGlaSha.port_a, air.glaSha);
connect(air.heaPorAir, QCon_flow.port);
connect(uSha.y, air.uSha);
connect(QRadAbs_flow.y, air.QRadAbs_flow);
end AirHeatMassBalance;
Test model for the CFDHeatGain model
Information
This example tests the model for the internal heat gain that is used in the CFD model.
Extends from Modelica.Icons.Example (Icon for runnable examples).
Parameters
Type | Name | Default | Description |
Area | AFlo | 50 | Floor area [m2] |
Modelica definition
Test model for infrared radiation exchange
Information
Test model for the infrared radiation exchange.
Extends from Modelica.Icons.Example (Icon for runnable examples), Buildings.Rooms.BaseClasses.Examples.BaseClasses.PartialInfraredRadiation (Partial model to test infrared radiation inside the room).
Parameters
Type | Name | Default | Description |
ParameterConstruction | datConExt[NConExt] | datConExt(each A=1) | Data for exterior construction |
ParameterConstructionWithWindow | datConExtWin[NConExtWin] | datConExtWin(each A=1, each ... | Data for exterior construction with window |
ParameterConstruction | datConPar[NConPar] | datConPar(each A=1) | Data for partition construction |
ParameterConstruction | datConBou[NConBou] | datConBou(each A=1) | Data for construction boundary |
OpaqueSurface | surBou[NSurBou] | surBou(each A=1) | Record for data of surfaces whose heat conduction is modeled outside of this room |
Brick120 | dummyCon | | Dummy construction to assign a parameter to the instance |
SingleClear3 | dummyGlaSys | | Dummy construction to assign a parameter to the instance |
Exterior constructions |
Integer | nConExt | 1 | Number of exterior constructions |
Integer | nConExtWin | 1 | Number of window constructions |
Partition constructions |
Integer | nConPar | 1 | Number of partition constructions |
Boundary constructions |
Integer | nConBou | 1 | Number of constructions that have their outside surface exposed to the boundary of this room |
Integer | nSurBou | 1 | Number of surface heat transfer models that connect to constructions that are modeled outside of this room |
Modelica definition
model InfraredRadiationExchange
extends Modelica.Icons.Example;
extends Buildings.Rooms.BaseClasses.Examples.BaseClasses.PartialInfraredRadiation;
Buildings.Rooms.BaseClasses.InfraredRadiationExchange irRadExc(
nConExt=nConExt,
nConExtWin=nConExtWin,
nConPar=nConPar,
nConBou=nConBou,
nSurBou=nSurBou,
final datConExt=datConExt,
final datConExtWin=datConExtWin,
final datConPar=datConPar,
final datConBou=datConBou,
final surBou=surBou,
linearizeRadiation=true) ;
Buildings.HeatTransfer.Radiosity.Constant radSou[NConExtWin](
each k=187) ;
equation
connect(conConExt.port_a, irRadExc.conExt);
connect(conConExtWin.port_a, irRadExc.conExtWin);
connect(conConExtWinFra.port_a, irRadExc.conExtWinFra);
connect(conConPar_a.port_a, irRadExc.conPar_a);
connect(conConPar_b.port_a, irRadExc.conPar_b);
connect(conConBou.port_a, irRadExc.conBou);
connect(conSurBou.port_a, irRadExc.conSurBou);
connect(radSou.JOut, irRadExc.JInConExtWin);
end InfraredRadiationExchange;
Test model for infrared radiation gain
Information
Test model for the distribution of the infrared radiation heat gain.
Extends from Modelica.Icons.Example (Icon for runnable examples), Buildings.Rooms.BaseClasses.Examples.BaseClasses.PartialInfraredRadiation (Partial model to test infrared radiation inside the room).
Parameters
Type | Name | Default | Description |
ParameterConstruction | datConExt[NConExt] | datConExt(each A=1) | Data for exterior construction |
ParameterConstructionWithWindow | datConExtWin[NConExtWin] | datConExtWin(each A=1, each ... | Data for exterior construction with window |
ParameterConstruction | datConPar[NConPar] | datConPar(each A=1) | Data for partition construction |
ParameterConstruction | datConBou[NConBou] | datConBou(each A=1) | Data for construction boundary |
OpaqueSurface | surBou[NSurBou] | surBou(each A=1) | Record for data of surfaces whose heat conduction is modeled outside of this room |
Brick120 | dummyCon | | Dummy construction to assign a parameter to the instance |
SingleClear3 | dummyGlaSys | | Dummy construction to assign a parameter to the instance |
Exterior constructions |
Integer | nConExt | 1 | Number of exterior constructions |
Integer | nConExtWin | 1 | Number of window constructions |
Partition constructions |
Integer | nConPar | 1 | Number of partition constructions |
Boundary constructions |
Integer | nConBou | 1 | Number of constructions that have their outside surface exposed to the boundary of this room |
Integer | nSurBou | 1 | Number of surface heat transfer models that connect to constructions that are modeled outside of this room |
Modelica definition
model InfraredRadiationGainDistribution
extends Modelica.Icons.Example;
extends Buildings.Rooms.BaseClasses.Examples.BaseClasses.PartialInfraredRadiation;
Buildings.Rooms.BaseClasses.InfraredRadiationGainDistribution irRadGai(
nConExt=nConExt,
nConExtWin=nConExtWin,
nConPar=nConPar,
nConBou=nConBou,
nSurBou=nSurBou,
final datConExt=datConExt,
final datConExtWin=datConExtWin,
final datConPar=datConPar,
final datConBou=datConBou,
final surBou=surBou,
haveShade=true) ;
protected
Modelica.Blocks.Sources.Constant QRad_flow(k=1) ;
Modelica.Blocks.Sources.Constant zer[NConExtWin](
each k=0) ;
equation
connect(conConExt.port_a, irRadGai.conExt);
connect(conConExtWin.port_a, irRadGai.conExtWin);
connect(conConExtWinFra.port_a, irRadGai.conExtWinFra);
connect(conConPar_a.port_a, irRadGai.conPar_a);
connect(conConPar_b.port_a, irRadGai.conPar_b);
connect(conConBou.port_a, irRadGai.conBou);
connect(conSurBou.port_a, irRadGai.conSurBou);
connect(QRad_flow.y, irRadGai.Q_flow);
connect(zer.y, irRadGai.uSha);
end InfraredRadiationGainDistribution;
Test model for the MixedAirHeatGain model
Information
This example tests the model for the internal heat gain that is used in the mixed air room model.
Extends from Modelica.Icons.Example (Icon for runnable examples).
Parameters
Type | Name | Default | Description |
Area | AFlo | 50 | Floor area [m2] |
Modelica definition
model MixedAirHeatGain
extends Modelica.Icons.Example;
package MediumA =
Buildings.Media.Air ;
Buildings.Rooms.BaseClasses.MixedAirHeatGain heatGain(
redeclare package
Medium =
MediumA, AFlo=AFlo);
Modelica.Blocks.Sources.Constant qConGai_flow(k=10) ;
Modelica.Blocks.Sources.Constant qRadGai_flow1(k=0) ;
Modelica.Blocks.Routing.Multiplex3 multiplex3_1;
Modelica.Blocks.Sources.Constant qLatGai_flow(k=10) ;
Buildings.Fluid.Sensors.SensibleEnthalpyFlowRate QSen_flow(
redeclare package
Medium = MediumA, m_flow_nominal=2E-4,
tau=0);
Buildings.Fluid.Sensors.LatentEnthalpyFlowRate QLat_flow(
redeclare package
Medium = MediumA, m_flow_nominal=2E-4,
tau=0);
Buildings.Fluid.Sources.Boundary_pT boundary(
redeclare package
Medium = MediumA, nPorts=1);
Buildings.Utilities.Diagnostics.AssertEquality assertEquality;
parameter Modelica.SIunits.Area AFlo=50 ;
Modelica.Blocks.Math.Gain gainLat(k=AFlo);
Buildings.Utilities.Diagnostics.AssertEquality assertEquality1;
Buildings.Fluid.MixingVolumes.MixingVolume vol(
nPorts=2,
redeclare package Medium = MediumA,
V=AFlo*2.5,
m_flow_nominal=1E-3,
energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial);
Modelica.Blocks.Sources.Constant qSenAir_flow(k=0) ;
equation
connect(qRadGai_flow1.y,multiplex3_1. u1[1]);
connect(qConGai_flow.y,multiplex3_1. u2[1]);
connect(qLatGai_flow.y, multiplex3_1.u3[1]);
connect(multiplex3_1.y, heatGain.qGai_flow);
connect(heatGain.QLat_flow, QSen_flow.port_a);
connect(QSen_flow.port_b, QLat_flow.port_a);
connect(assertEquality.u2, QSen_flow.H_flow);
connect(assertEquality1.u2, QLat_flow.H_flow);
connect(gainLat.y, assertEquality1.u1);
connect(qLatGai_flow.y, gainLat.u);
connect(boundary.ports[1], vol.ports[1]);
connect(vol.ports[2], QLat_flow.port_b);
connect(qSenAir_flow.y, assertEquality.u1);
connect(heatGain.QCon_flow, vol.heatPort);
end MixedAirHeatGain;
Test model for air heat and mass balance
Information
Test model for the heat and mass balance of the room air.
Extends from Modelica.Icons.Example (Icon for runnable examples), Buildings.Rooms.BaseClasses.Examples.BaseClasses.PartialInfraredRadiation (Partial model to test infrared radiation inside the room).
Parameters
Type | Name | Default | Description |
ParameterConstruction | datConExt[NConExt] | datConExt(each A=1) | Data for exterior construction |
ParameterConstructionWithWindow | datConExtWin[NConExtWin] | datConExtWin(each A=1, each ... | Data for exterior construction with window |
ParameterConstruction | datConPar[NConPar] | datConPar(each A=1) | Data for partition construction |
ParameterConstruction | datConBou[NConBou] | datConBou(each A=1) | Data for construction boundary |
OpaqueSurface | surBou[NSurBou] | surBou(each A=1) | Record for data of surfaces whose heat conduction is modeled outside of this room |
Brick120 | dummyCon | | Dummy construction to assign a parameter to the instance |
SingleClear3 | dummyGlaSys | | Dummy construction to assign a parameter to the instance |
Exterior constructions |
Integer | nConExt | 1 | Number of exterior constructions |
Integer | nConExtWin | 0 | Number of window constructions |
Partition constructions |
Integer | nConPar | 0 | Number of partition constructions |
Boundary constructions |
Integer | nConBou | 0 | Number of constructions that have their outside surface exposed to the boundary of this room |
Integer | nSurBou | 0 | Number of surface heat transfer models that connect to constructions that are modeled outside of this room |
Modelica definition
model MixedAirHeatMassBalance
extends Modelica.Icons.Example;
extends Buildings.Rooms.BaseClasses.Examples.BaseClasses.PartialInfraredRadiation
(
nConExt=1, nConExtWin=0, nConBou=0, nSurBou=0, nConPar=0);
package Medium =
Buildings.Media.Air ;
Buildings.Rooms.BaseClasses.MixedAirHeatMassBalance air(
nConExt=nConExt,
nConExtWin=nConExtWin,
nConPar=nConPar,
nConBou=nConBou,
nSurBou=nSurBou,
final datConExt=datConExt,
final datConExtWin=datConExtWin,
final datConPar=datConPar,
final datConBou=datConBou,
final surBou=surBou,
m_flow_nominal=0.1,
V=10,
conMod=Buildings.HeatTransfer.Types.InteriorConvection.Fixed,
hFixed=3,
haveShade=datConExtWin[1].glaSys.haveShade,
redeclare package Medium = Medium,
nPorts=1,
energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial) ;
protected
Modelica.Thermal.HeatTransfer.Components.ThermalConductor conGlaSha[
NConExtWin](
each G=100) ;
Buildings.HeatTransfer.Sources.FixedTemperature bouConGlaSha[NConExtWin](
each T=293.15) ;
Modelica.Thermal.HeatTransfer.Components.ThermalConductor conGlaUns[
NConExtWin](
each G=100) ;
Buildings.HeatTransfer.Sources.FixedTemperature bouConGlaUns[NConExtWin](
each T=293.15) ;
public
Modelica.Blocks.Sources.Constant uSha[NConExtWin](
each k=0) ;
protected
Buildings.Rooms.BaseClasses.MixedAirHeatGain heaGai(
redeclare package Medium = Medium,
final AFlo=5) ;
public
Modelica.Blocks.Sources.Constant qRadGai_flow(k=0) ;
Modelica.Blocks.Sources.Constant qConGai_flow(k=0) ;
Modelica.Blocks.Sources.Constant qLatGai_flow(k=0) ;
Modelica.Blocks.Routing.Multiplex3 multiplex3_1;
Modelica.Blocks.Sources.Constant QRadAbs_flow[NConExtWin](
each k=0) ;
Buildings.Fluid.Sources.FixedBoundary
boundary(
nPorts=1,
redeclare package Medium = Medium,
T=293.15) ;
equation
connect(conConExt.port_a, air.conExt);
connect(conConExtWin.port_a, air.conExtWin);
connect(conConExtWinFra.port_a, air.conExtWinFra);
connect(conConPar_a.port_a, air.conPar_a);
connect(conConPar_b.port_a, air.conPar_b);
connect(conConBou.port_a, air.conBou);
connect(conSurBou.port_a, air.conSurBou);
connect(bouConGlaUns.port, conGlaUns.port_b);
connect(conGlaUns.port_a, air.glaUns);
connect(bouConGlaSha.port, conGlaSha.port_b);
connect(conGlaSha.port_a, air.glaSha);
connect(uSha.y, air.uSha);
connect(heaGai.QCon_flow, air.heaPorAir);
connect(heaGai.QLat_flow, air.QLat_flow);
connect(multiplex3_1.y, heaGai.qGai_flow);
connect(QRadAbs_flow.y, air.QRadAbs_flow);
connect(qRadGai_flow.y, multiplex3_1.u1[1]);
connect(qConGai_flow.y, multiplex3_1.u2[1]);
connect(qLatGai_flow.y, multiplex3_1.u3[1]);
connect(boundary.ports[1], air.ports[1]);
end MixedAirHeatMassBalance;
Test model for the radiation temperature
Information
Test model for the radiative temperature of the room.
Extends from Modelica.Icons.Example (Icon for runnable examples), Buildings.Rooms.BaseClasses.Examples.BaseClasses.PartialInfraredRadiation (Partial model to test infrared radiation inside the room).
Parameters
Type | Name | Default | Description |
ParameterConstruction | datConExt[NConExt] | datConExt(each A=1) | Data for exterior construction |
ParameterConstructionWithWindow | datConExtWin[NConExtWin] | datConExtWin(each A=1, each ... | Data for exterior construction with window |
ParameterConstruction | datConPar[NConPar] | datConPar(each A=1) | Data for partition construction |
ParameterConstruction | datConBou[NConBou] | datConBou(each A=1) | Data for construction boundary |
OpaqueSurface | surBou[NSurBou] | surBou(each A=1) | Record for data of surfaces whose heat conduction is modeled outside of this room |
Brick120 | dummyCon | | Dummy construction to assign a parameter to the instance |
SingleClear3 | dummyGlaSys | | Dummy construction to assign a parameter to the instance |
Exterior constructions |
Integer | nConExt | 1 | Number of exterior constructions |
Integer | nConExtWin | 1 | Number of window constructions |
Partition constructions |
Integer | nConPar | 1 | Number of partition constructions |
Boundary constructions |
Integer | nConBou | 1 | Number of constructions that have their outside surface exposed to the boundary of this room |
Integer | nSurBou | 1 | Number of surface heat transfer models that connect to constructions that are modeled outside of this room |
Modelica definition
model RadiationTemperature
extends Modelica.Icons.Example;
extends Buildings.Rooms.BaseClasses.Examples.BaseClasses.PartialInfraredRadiation
(
bouConExt(
each T=289.15),
bouConExtWin(
each T=290.15),
bouConExtWinFra(
each T=285.15),
bouConPar_b(
each T=291.15),
bouConBou(
each T=295.15),
bouSurBou(
each T=296.15));
Buildings.Rooms.BaseClasses.RadiationTemperature radTem(
nConExt=nConExt,
nConExtWin=nConExtWin,
nConPar=nConPar,
nConBou=nConBou,
nSurBou=nSurBou,
final datConExt=datConExt,
final datConExtWin=datConExtWin,
final datConPar=datConPar,
final datConBou=datConBou,
final surBou=surBou,
haveShade=true) ;
Modelica.Blocks.Sources.Constant uSha[NConExtWin](
each k=0.5) ;
protected
Modelica.Thermal.HeatTransfer.Components.ThermalConductor conGlaUns[
NConExtWin](
each G=100) ;
Modelica.Thermal.HeatTransfer.Components.ThermalConductor conGlaSha[
NConExtWin](
each G=100) ;
Modelica.Thermal.HeatTransfer.Components.ThermalConductor conSha[NConExtWin](
each G=100) ;
Buildings.HeatTransfer.Sources.FixedTemperature bouGlaUns[NConExtWin](
each T=
288.15) ;
Buildings.HeatTransfer.Sources.FixedTemperature bouGlaSha[NConExtWin](
each T=
284.15) ;
Buildings.HeatTransfer.Sources.FixedTemperature bouSha[NConExtWin](
each T=293.15) ;
equation
connect(conConExt.port_a, radTem.conExt);
connect(conConExtWin.port_a, radTem.conExtWin);
connect(conConExtWinFra.port_a, radTem.conExtWinFra);
connect(conConPar_a.port_a, radTem.conPar_a);
connect(conConPar_b.port_a, radTem.conPar_b);
connect(conConBou.port_a, radTem.conBou);
connect(conSurBou.port_a, radTem.conSurBou);
connect(uSha.y, radTem.uSha);
connect(bouGlaUns.port, conGlaUns.port_b);
connect(bouGlaSha.port, conGlaSha.port_b);
connect(bouSha.port, conSha.port_b);
connect(radTem.glaUns, conGlaUns.port_a);
connect(radTem.glaSha, conGlaSha.port_a);
connect(radTem.sha, conSha.port_a);
end RadiationTemperature;
http://simulationresearch.lbl.gov/modelica