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
Test model for air heat and mass balance
Information
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 |
Generic | surBou[NSurBou] | surBou(each A=1) | Record for data of surfaces whose heat conduction is modeled outside of this room |
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
"Test model for air heat and mass balance"
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.IdealGases.SimpleAir,
m_flow_nominal=0.1,
V=10,
conMod=Buildings.HeatTransfer.Types.InteriorConvection.Fixed,
hFixed=3,
haveShade=datConExtWin[1].glaSys.haveShade)
"Convective heat balance of air";
protected
Modelica.Thermal.HeatTransfer.Components.ThermalConductor conGlaSha[
NConExtWin](
each G=100)
"Heat conductor";
Buildings.HeatTransfer.Sources.FixedTemperature bouConGlaSha[NConExtWin](
each T=293.15)
"Boundary condition";
Modelica.Thermal.HeatTransfer.Components.ThermalConductor conGlaUns[
NConExtWin](
each G=100)
"Heat conductor";
Buildings.HeatTransfer.Sources.FixedTemperature bouConGlaUns[NConExtWin](
each T=293.15)
"Boundary condition";
public
Modelica.Thermal.HeatTransfer.Sources.FixedHeatFlow QCon_flow(Q_flow=0)
"Convective heat input";
Modelica.Blocks.Sources.Constant uSha[NConExtWin](
each k=0)
"Shade control signal";
Modelica.Blocks.Sources.Constant QRadAbs_flow[NConExtWin](
each k=0)
"Radiation absorbed by shade";
inner Modelica.Fluid.System system;
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 HeatGain model
Information
Extends from Modelica.Icons.Example (Icon for runnable examples).
Parameters
Type | Name | Default | Description |
Area | AFlo | 50 | Floor area [m2] |
Modelica definition
model HeatGain
"Test model for the HeatGain model"
extends Modelica.Icons.Example;
package MediumA =
Buildings.Media.GasesPTDecoupled.MoistAirUnsaturated
"Medium model";
Buildings.Rooms.BaseClasses.HeatGain heatGain(
redeclare package Medium =
MediumA, AFlo=AFlo);
Modelica.Blocks.Sources.Constant qConGai_flow(k=10)
"Convective heat gain";
Modelica.Blocks.Sources.Constant qRadGai_flow1(k=0)
"Radiative heat gain";
Modelica.Blocks.Routing.Multiplex3 multiplex3_1;
Modelica.Blocks.Sources.Constant qLatGai_flow(k=10)
"Latent heat gain";
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);
inner Modelica.Fluid.System system;
Buildings.Utilities.Diagnostics.AssertEquality assertEquality;
parameter Modelica.SIunits.Area AFlo=50
"Floor area";
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);
Modelica.Blocks.Sources.Constant qSenAir_flow(k=0)
"Sensible heat flow of air stream (must be zero)";
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 HeatGain;
Test model for infrared radiation gain
Information
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 |
Generic | surBou[NSurBou] | surBou(each A=1) | Record for data of surfaces whose heat conduction is modeled outside of this room |
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
"Test model for infrared radiation gain"
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)
"Distribution for infrared radiative heat gains (e.g., due to equipment and people)";
protected
Modelica.Blocks.Sources.Constant QRad_flow(k=1)
"Radiative heat gain";
Modelica.Blocks.Sources.Constant zer[NConExtWin](
each k=0)
"Outputs zero. This block is needed to send a signal to the shading connector if no window is used in the room model";
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 infrared radiation exchange
Information
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 |
Generic | surBou[NSurBou] | surBou(each A=1) | Record for data of surfaces whose heat conduction is modeled outside of this room |
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
"Test model for infrared radiation exchange"
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)
"Distribution for infrared radiative heat transfer";
Buildings.HeatTransfer.Radiosity.Constant radSou[NConExtWin](
each k=187)
"Radiosity source for window";
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 the radiation temperature
Information
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 |
Generic | surBou[NSurBou] | surBou(each A=1) | Record for data of surfaces whose heat conduction is modeled outside of this room |
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
"Test model for the radiation temperature"
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)
"Radiative temperature";
Modelica.Blocks.Sources.Constant uSha[NConExtWin](
each k=0.5)
"Shade control signal";
protected
Modelica.Thermal.HeatTransfer.Components.ThermalConductor conGlaUns[
NConExtWin](
each G=100)
"Heat conductor";
Modelica.Thermal.HeatTransfer.Components.ThermalConductor conGlaSha[
NConExtWin](
each G=100)
"Heat conductor";
Modelica.Thermal.HeatTransfer.Components.ThermalConductor conSha[NConExtWin](
each G=100)
"Heat conductor";
Buildings.HeatTransfer.Sources.FixedTemperature bouGlaUns[NConExtWin](
each T=
288.15)
"Boundary condition";
Buildings.HeatTransfer.Sources.FixedTemperature bouGlaSha[NConExtWin](
each T=
284.15)
"Boundary condition";
Buildings.HeatTransfer.Sources.FixedTemperature bouSha[NConExtWin](
each T=293.15)
"Boundary condition";
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;
Automatically generated Thu Jun 19 11:01:04 2014.