diff --git a/.github/workflows/tests-runner.yaml b/.github/workflows/tests-runner.yaml index a46d37c..5c3554d 100644 --- a/.github/workflows/tests-runner.yaml +++ b/.github/workflows/tests-runner.yaml @@ -29,6 +29,5 @@ jobs: - name: Linting & mypy run: poetry run nox - - name: Run tests - run: poetry run pytest \ No newline at end of file + run: poetry run pytest -k "not test_simulate" diff --git a/poetry.lock b/poetry.lock index 90cc81e..6696ad4 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1933,6 +1933,22 @@ port-for = ">=0.6.0" pymongo = "*" pytest = ">=6.2" +[[package]] +name = "pytest-ordering" +version = "0.6" +description = "pytest plugin to run your tests in a specific order" +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "pytest-ordering-0.6.tar.gz", hash = "sha256:561ad653626bb171da78e682f6d39ac33bb13b3e272d406cd555adb6b006bda6"}, + {file = "pytest_ordering-0.6-py2-none-any.whl", hash = "sha256:27fba3fc265f5d0f8597e7557885662c1bdc1969497cd58aff6ed21c3b617de2"}, + {file = "pytest_ordering-0.6-py3-none-any.whl", hash = "sha256:3f314a178dbeb6777509548727dc69edf22d6d9a2867bf2d310ab85c403380b6"}, +] + +[package.dependencies] +pytest = "*" + [[package]] name = "python-dateutil" version = "2.9.0.post0" @@ -2527,4 +2543,4 @@ files = [ [metadata] lock-version = "2.0" python-versions = "^3.10" -content-hash = "017a28e74d09cca5894c4d1f29226360e2b127546b16328bfaaab556b304ffc1" +content-hash = "992d751849dcda50ed0f483c9801d4c6e4b14d0b4fe0a0ffc6171c21be56f472" diff --git a/pyproject.toml b/pyproject.toml index 711fa43..b33e653 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -38,6 +38,7 @@ types-simplejson = "^3.19.0.20240218" types-beautifulsoup4 = "^4.12.0.20240229" pytest-mongo = "^3.1.0" networkx-stubs = "^0.0.1" +pytest-ordering = "^0.6" [build-system] requires = ["poetry-core"] diff --git a/tests/data/buildings_free_float_single_zone.mo b/tests/data/buildings_free_float_single_zone.mo index 27ce769..6908265 100644 --- a/tests/data/buildings_free_float_single_zone.mo +++ b/tests/data/buildings_free_float_single_zone.mo @@ -2242,7 +2242,7 @@ package MediumW = Buildings.Media.Water "Medium model"; buildings_free_float_single_zone.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 132.3208830597625, 153.93103913921126 }, + Placement(transformation(origin = { -5.256918515349156, 174.6859463033137 }, extent = {{-10, -10}, {10, 10}} ))); @@ -2258,20 +2258,20 @@ points={{ 0.0, 0.0 } ,{ -50.0, 0.0 } ,{ -50.0, 200.0 } ,{ -100.0, 200.0 thickness=0.05, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ 41.160441529881254, 0.0 } ,{ 41.160441529881254, 153.93103913921126 } ,{ 132.3208830597625, 153.93103913921126 } }, +points={{ -50.0, 0.0 } ,{ -27.628459257674578, 0.0 } ,{ -27.628459257674578, 174.6859463033137 } ,{ -5.256918515349156, 174.6859463033137 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.heaPorAir,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 66.16044152988125, 0.0 } ,{ 66.16044152988125, 153.93103913921126 } ,{ 132.3208830597625, 153.93103913921126 } }, +points={{ 0.0, 0.0 } ,{ -2.628459257674578, 0.0 } ,{ -2.628459257674578, 174.6859463033137 } ,{ -5.256918515349156, 174.6859463033137 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 66.16044152988125, 0.0 } ,{ 66.16044152988125, 153.93103913921126 } ,{ 132.3208830597625, 153.93103913921126 } }, +points={{ 0.0, 0.0 } ,{ -2.628459257674578, 0.0 } ,{ -2.628459257674578, 174.6859463033137 } ,{ -5.256918515349156, 174.6859463033137 } }, thickness=0.05, -smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-184.30728837440503,-245.00728970559007},{248.71943483863888,250.0}})), Icon( - coordinateSystem(extent={{-184.30728837440503,-245.00728970559007},{248.71943483863888,250.0}}))); +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-249.6293977228463,-245.78740620304913},{242.89673693804014,250.0}})), Icon( + coordinateSystem(extent={{-249.6293977228463,-245.78740620304913},{242.89673693804014,250.0}}))); annotation ( - Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); + Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); end building; diff --git a/tests/data/buildings_free_float_single_zone_with_data.mo b/tests/data/buildings_free_float_single_zone_with_data.mo new file mode 100644 index 0000000..c7f86d5 --- /dev/null +++ b/tests/data/buildings_free_float_single_zone_with_data.mo @@ -0,0 +1,2285 @@ +package buildings_free_float_single_zone_with_data + +package Common + package Occupancy + + model SimpleOccupancy + + parameter Real occupancy[:]=3600*{7, 19} + "Occupancy table, each entry switching occupancy on or off"; + + parameter Real gain[:, :]=[35; 70; 30] + "Gain to convert from occupancy (per person) to radiant, convective and latent heat in [W/m2] "; + + parameter Real k=1/6/4 + "Heat gain if occupied"; + + Buildings.Controls.SetPoints.OccupancySchedule + occSch2(firstEntryOccupied=true, + occupancy=occupancy) + "Occupancy schedule" + annotation (Placement(transformation(extent={{-66,-22},{-46,-2}}))); + Buildings.Controls.OBC.CDL.Reals.Switch switch2 + annotation (Placement(transformation(extent={{-20,-12},{0,8}}))); + Modelica.Blocks.Math.MatrixGain gai2(K=gain) + "Gain to convert from occupancy (per person) to radiant, convective and latent heat in [W/m2] " + annotation (Placement(transformation(extent={{18,-12},{38,8}}))); + extends Modelica.Blocks.Interfaces.MO(final nout=3); + Buildings.Controls.OBC.CDL.Reals.Sources.Constant occ2(k=k) + "Heat gain if occupied in room 2" + annotation (Placement(transformation(extent={{-66,28},{-46,48}}))); + Buildings.Controls.OBC.CDL.Reals.Sources.Constant zero(k=0) + "Heat gain if occupied in room 2" + annotation (Placement(transformation(extent={{-62,-68},{-42,-48}}))); +equation + connect(occSch2.occupied,switch2. u2) annotation (Line( + points={{-45,-18},{-28,-18},{-28,-2},{-22,-2}}, + color={255,0,255}, + smooth=Smooth.None)); + connect(switch2.y,gai2. u[1]) annotation (Line( + points={{2,-2},{16,-2}}, + color={0,0,127}, + smooth=Smooth.None)); + connect(occ2.y,switch2. u1) annotation (Line(points={{-44,38},{-40,38},{-40,6}, + {-22,6}}, color={0,0,127})); + connect(zero.y, switch2.u3) + annotation (Line(points={{-40,-58},{-22,-58},{-22,-10}}, color={0,0,127})); + connect(gai2.y, y) annotation (Line(points={{39,-2},{96,-2},{96,0},{110,0}}, + color={0,0,127})); + annotation (Icon(coordinateSystem(preserveAspectRatio=false), graphics={ + Ellipse(extent={{10,70},{-26,34}}, lineColor={28,108,200}), + Line(points={{-8,34},{-8,-26}}, color={28,108,200}), + Line(points={{-8,-26},{-48,-68}}, color={28,108,200}), + Line(points={{-8,-26},{34,-70},{32,-70}}, color={28,108,200}), + Line(points={{-8,20},{-48,-8}}, color={28,108,200}), + Line(points={{-8,20},{44,-8}}, color={28,108,200})}), Diagram( + coordinateSystem(preserveAspectRatio=false))); +end SimpleOccupancy; + + end Occupancy; + + package Controls + package BaseClasses + expandable connector DataBus + extends Modelica.Icons.SignalBus; + annotation ( + Icon(coordinateSystem(preserveAspectRatio=true, extent={{-100,-100},{100, + 100}}), graphics={Rectangle( + extent={{-20,2},{22,-2}}, + lineColor={255,204,51}, + lineThickness=0.5)}), + Documentation(info=" +

+This connector defines the expandable connector ControlBus that +is used to connect control signals. +Note, this connector is empty. When using it, the actual content is +constructed by the signals connected to this bus. +

+")); + end DataBus; + annotation ( + Icon(graphics={ Rectangle(lineColor = {200, 200, 200}, fillColor = {248, 248, 248}, + fillPattern = FillPattern.HorizontalCylinder, extent = {{-100, -100}, {100, 100}}, radius = 25), Rectangle(lineColor = {128, 128, 128}, extent = {{-100, -100}, {100, 100}}, radius = 25), Ellipse(lineColor = {128, 128, 128}, fillColor = {255, 255, 255}, + fillPattern = FillPattern.Solid, extent = {{-30, -30}, {30, 30}})})); + end BaseClasses; + + package Interfaces + partial model BaseSpaceControl + Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_a port annotation ( + Placement(transformation(extent = {{-110, -10}, {-90, 10}}), iconTransformation(extent = {{-110, -10}, {-90, 10}}))); + Modelica.Blocks.Interfaces.RealOutput y annotation ( + Placement(transformation(origin = {106, 0}, extent = {{-10, -10}, {10, 10}}), iconTransformation(origin = {106, 0}, extent = {{-10, -10}, {10, 10}}))); + equation + + annotation ( + Icon, + Diagram); + end BaseSpaceControl; + + partial model BaseSubstanceSpaceControl + replaceable package Medium = Modelica.Media.Interfaces.PartialMedium + "Medium model" annotation (choicesAllMatching=true); + Modelica.Fluid.Interfaces.FluidPort_a port_a( + redeclare final package Medium = Medium) + "Fluid connector a (positive design flow direction is from port_a to port_b)" + annotation (Placement(transformation(extent={{-116,-16},{-82,16}}), + iconTransformation(extent={{-110,-9},{-90,9}}))); + Modelica.Blocks.Interfaces.RealOutput y annotation ( + Placement(transformation(origin = {106, 0}, extent = {{-10, -10}, {10, 10}}), iconTransformation(origin = {106, 0}, extent = {{-10, -10}, {10, 10}}))); + equation + + annotation ( + Icon, + Diagram); + end BaseSubstanceSpaceControl; + annotation ( + Icon(graphics={ Rectangle(lineColor = {200, 200, 200}, fillColor = {248, 248, 248}, + fillPattern = FillPattern.HorizontalCylinder, extent = {{-100, -100}, {100, 100}}, radius = 25), Rectangle(lineColor = {128, 128, 128}, extent = {{-100, -100}, {100, 100}}, radius = 25), Polygon(origin = {20, 0}, lineColor = {64, 64, 64}, fillColor = {255, 255, 255}, + fillPattern = FillPattern.Solid, points = {{-10, 70}, {10, 70}, {40, 20}, {80, 20}, {80, -20}, {40, -20}, {10, -70}, {-10, -70}, {-10, 70}}), Polygon(fillColor = {102, 102, 102}, pattern = LinePattern.None, + fillPattern = FillPattern.Solid, points = {{-100, 20}, {-60, 20}, {-30, 70}, {-10, 70}, {-10, -70}, {-30, -70}, {-60, -20}, {-100, -20}, {-100, 20}})})); + end Interfaces; + + package SpaceControls + model PID + extends Common.Controls.Interfaces.BaseSpaceControl; + + parameter .Modelica.Blocks.Types.SimpleController controllerType= + .Modelica.Blocks.Types.SimpleController.PID "Type of controller"; + parameter Real k(min=0, unit="1") = 1 "Gain of controller"; + parameter Modelica.Units.SI.Time Ti(min=Modelica.Constants.small)=0.5 + "Time constant of Integrator block" annotation (Dialog(enable= + controllerType == .Modelica.Blocks.Types.SimpleController.PI or + controllerType == .Modelica.Blocks.Types.SimpleController.PID)); + parameter Modelica.Units.SI.Time Td(min=0)=0.1 + "Time constant of Derivative block" annotation (Dialog(enable= + controllerType == .Modelica.Blocks.Types.SimpleController.PD or + controllerType == .Modelica.Blocks.Types.SimpleController.PID)); + parameter Real yMax(start=1) "Upper limit of output"; + parameter Real yMin=-yMax "Lower limit of output"; + parameter Modelica.Units.SI.Temperature setPoint; + Modelica.Thermal.HeatTransfer.Sensors.TemperatureSensor TRoo annotation ( + Placement(transformation(origin = {-542, -226}, extent = {{480, 216}, {500, 236}}))); + Modelica.Blocks.Continuous.LimPID conRoo(yMax = yMax, yMin = yMin, controllerType = controllerType, k = k, Ti = Ti, Td = Td) annotation ( + Placement(transformation(origin = {50, 0}, extent = {{-10, -10}, {10, 10}}))); + Modelica.Blocks.Sources.RealExpression realExpression(y=setPoint) + annotation (Placement(transformation(extent={{-42,36},{-22,56}}))); + equation + connect(port, TRoo.port) annotation ( + Line(points = {{-100, 0}, {-62, 0}}, color = {191, 0, 0})); + connect(conRoo.y, y) annotation ( + Line(points={{61,0},{106,0}}, color = {0, 0, 127})); + connect(TRoo.T, conRoo.u_m) annotation ( + Line(points={{-41,0},{4,0},{4,-36},{50,-36},{50,-12}}, color = {0, 0, 127})); + connect(realExpression.y, conRoo.u_s) annotation (Line(points={{-21,46},{32,46}, + {32,0},{38,0}}, color={0,0,127})); + annotation ( + Icon(graphics={ Rectangle(lineColor = {0, 0, 127}, fillColor = {255, 255, 255}, + fillPattern = FillPattern.Solid, extent = {{-100, -100}, {100, 100}}), Line(points = {{-80, 78}, {-80, -90}}, color = {192, 192, 192}), Polygon(lineColor = {192, 192, 192}, fillColor = {192, 192, 192}, + fillPattern = FillPattern.Solid, points = {{-80, 90}, {-88, 68}, {-72, 68}, {-80, 90}}), Line(points = {{-90, -80}, {82, -80}}, color = {192, 192, 192}), Polygon(lineColor = {192, 192, 192}, fillColor = {192, 192, 192}, + fillPattern = FillPattern.Solid, points = {{90, -80}, {68, -72}, {68, -88}, {90, -80}}), Line(points = {{-80, -80}, {-80, -20}, {60, 80}}, color = {0, 0, 127}), Text(textColor = {192, 192, 192}, extent = {{-20, -60}, {80, -20}}, textString = "PID")})); + end PID; + + model PIDSubstance + + replaceable package Medium = Modelica.Media.Interfaces.PartialMedium + "Medium model" annotation (choicesAllMatching=true); + extends Common.Controls.Interfaces.BaseSubstanceSpaceControl; + + parameter .Modelica.Blocks.Types.SimpleController controllerType= + .Modelica.Blocks.Types.SimpleController.PID "Type of controller"; + parameter Real k(min=0, unit="1") = 1 "Gain of controller"; + parameter Modelica.Units.SI.Time Ti(min=Modelica.Constants.small)=0.5 + "Time constant of Integrator block" annotation (Dialog(enable= + controllerType == .Modelica.Blocks.Types.SimpleController.PI or + controllerType == .Modelica.Blocks.Types.SimpleController.PID)); + parameter Modelica.Units.SI.Time Td(min=0)=0.1 + "Time constant of Derivative block" annotation (Dialog(enable= + controllerType == .Modelica.Blocks.Types.SimpleController.PD or + controllerType == .Modelica.Blocks.Types.SimpleController.PID)); + parameter Real yMax(start=1) "Upper limit of output"; + parameter Real yMin=-yMax "Lower limit of output"; + parameter Modelica.Units.SI.Temperature setPoint; + Buildings.Fluid.Sensors.PPM TRoo( redeclare + package Medium = Medium) annotation ( + Placement(transformation(origin = {-542, -226}, extent = {{480, 216}, {500, 236}}))); + Modelica.Blocks.Continuous.LimPID conRoo(yMax = yMax, yMin = yMin, controllerType = controllerType, k = k, Ti = Ti, Td = Td) annotation ( + Placement(transformation(origin = {50, 0}, extent = {{-10, -10}, {10, 10}}))); + Modelica.Blocks.Sources.RealExpression realExpression(y=setPoint) + annotation (Placement(transformation(extent={{-42,38},{-22,58}}))); + equation + connect(conRoo.y, y) annotation ( + Line(points={{61,0},{106,0}}, color = {0, 0, 127})); + connect(realExpression.y, conRoo.u_s) annotation (Line(points={{-21,48}, + {32,48},{32,0},{38,0}}, + color={0,0,127})); + connect(TRoo.ppm, conRoo.u_m) annotation (Line(points={{-41,0},{30,0},{30,-18}, + {50,-18},{50,-12}}, color={0,0,127})); + connect(port_a, TRoo.port) annotation (Line(points={{-99,0},{-68,0},{ + -68,-14},{-52,-14},{-52,-10}}, color={0,127,255})); + annotation ( + Icon(graphics={ Rectangle(lineColor = {0, 0, 127}, fillColor = {255, 255, 255}, + fillPattern = FillPattern.Solid, extent = {{-100, -100}, {100, 100}}), Line(points = {{-80, 78}, {-80, -90}}, color = {192, 192, 192}), Polygon(lineColor = {192, 192, 192}, fillColor = {192, 192, 192}, + fillPattern = FillPattern.Solid, points = {{-80, 90}, {-88, 68}, {-72, 68}, {-80, 90}}), Line(points = {{-90, -80}, {82, -80}}, color = {192, 192, 192}), Polygon(lineColor = {192, 192, 192}, fillColor = {192, 192, 192}, + fillPattern = FillPattern.Solid, points = {{90, -80}, {68, -72}, {68, -88}, {90, -80}}), Line(points = {{-80, -80}, {-80, -20}, {60, 80}}, color = {0, 0, 127}), Text(textColor = {192, 192, 192}, extent = {{-20, -60}, {80, -20}}, textString = "PID")})); + end PIDSubstance; + + + + annotation ( + Icon(graphics={ Rectangle(lineColor = {200, 200, 200}, fillColor = {248, 248, 248}, + fillPattern = FillPattern.HorizontalCylinder, extent = {{-100, -100}, {100, 100}}, radius = 25)})); + end SpaceControls; + annotation ( + Icon(graphics={ Rectangle(lineColor = {200, 200, 200}, fillColor = {248, 248, 248}, + fillPattern = FillPattern.HorizontalCylinder, extent = {{-100, -100}, {100, 100}}, radius = 25), Rectangle(lineColor = {200, 200, 200}, fillColor = {248, 248, 248}, + fillPattern = FillPattern.HorizontalCylinder, extent = {{-100, -100}, {100, 100}}, radius = 25), Rectangle(lineColor = {128, 128, 128}, extent = {{-100, -100}, {100, 100}}, radius = 25), Rectangle(origin = {0, 35.1488}, fillColor = {255, 255, 255}, extent = {{-30, -20.1488}, {30, 20.1488}}), Rectangle(origin = {0, -34.8512}, fillColor = {255, 255, 255}, extent = {{-30, -20.1488}, {30, 20.1488}}), Line(origin = {-51.25, 0}, points = {{21.25, -35}, {-13.75, -35}, {-13.75, 35}, {6.25, 35}}), Polygon(origin = {-40, 35}, pattern = LinePattern.None, + fillPattern = FillPattern.Solid, points = {{10, 0}, {-5, 5}, {-5, -5}, {10, 0}}), Line(origin = {51.25, 0}, points = {{-21.25, 35}, {13.75, 35}, {13.75, -35}, {-6.25, -35}}), Polygon(origin = {40, -35}, pattern = LinePattern.None, + fillPattern = FillPattern.Solid, points = {{-10, 0}, {5, 5}, {5, -5}, {-10, 0}})})); + + + package ventilation + model AHU_G36 + parameter Real VUncDesOutAir_flow=0.03; + parameter Real VDesTotOutAir_flow=0.03; + Buildings.Controls.OBC.ASHRAE.G36.AHUs.MultiZone.VAV.Controller + mulAHUCon( + eneStd=Buildings.Controls.OBC.ASHRAE.G36.Types.EnergyStandard.ASHRAE90_1, + + venStd=Buildings.Controls.OBC.ASHRAE.G36.Types.VentilationStandard.ASHRAE62_1, + + ashCliZon=Buildings.Controls.OBC.ASHRAE.G36.Types.ASHRAEClimateZone.Zone_1A, + + have_frePro=false, + minOADes=Buildings.Controls.OBC.ASHRAE.G36.Types.OutdoorAirSection.DedicatedDampersAirflow, + + buiPreCon=Buildings.Controls.OBC.ASHRAE.G36.Types.PressureControl.BarometricRelief, + + ecoHigLimCon=Buildings.Controls.OBC.ASHRAE.G36.Types.ControlEconomizer.FixedDryBulb, + + cooCoi=Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.None, + heaCoi=Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.None, + have_perZonRehBox=false, VUncDesOutAir_flow = VUncDesOutAir_flow, VDesTotOutAir_flow = VDesTotOutAir_flow) + annotation (Placement(transformation(extent={{-12,-14},{28,74}}))); + BaseClasses.DataBus dataBus annotation (Placement(transformation( + extent={{-120,-20},{-80,20}}), iconTransformation(extent={{ + -112,-10},{-92,10}}))); + equation + connect(mulAHUCon.ySupFan, dataBus.ySupFan) annotation (Line(points={ + {30,27.8},{36,27.8},{36,-20},{-74,-20},{-74,0},{-100,0}}, + color={0,0,127}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(mulAHUCon.y1SupFan, dataBus.y1SupFan) annotation (Line(points + ={{30,30},{38,30},{38,-22},{-76,-22},{-76,0},{-100,0}}, color={ + 255,0,255}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(mulAHUCon.yOutDam, dataBus.yOutDam) annotation (Line(points={ + {30,37},{36,37},{36,20},{34,20},{34,-18},{-70,-18},{-70,0},{ + -100,0}}, color={0,0,127}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(mulAHUCon.yRetDam, dataBus.yRetDam) annotation (Line(points={ + {30,43},{36,43},{36,78},{-74,78},{-74,0},{-100,0}}, color={0, + 0,127}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(mulAHUCon.yMinOutDam, dataBus.yMinOutDam) annotation (Line( + points={{30,49},{38,49},{38,80},{-78,80},{-78,24},{-76,24},{-76, + 0},{-100,0}}, color={0,0,127}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(mulAHUCon.VEffAirOut_flow_min, dataBus.VEffAirOut_flow_min) + annotation (Line(points={{30,53},{30,58},{34,58},{34,76},{-72,76},{ + -72,0},{-100,0}}, color={0,0,127}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(mulAHUCon.TAirSupSet, dataBus.TAirSupSet) annotation (Line( + points={{30,64},{34,64},{34,70},{32,70},{32,76},{-20,76},{-20,0}, + {-100,0}}, color={0,0,127}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.VAirOut_flow, mulAHUCon.VAirOut_flow) annotation ( + Line( + points={{-100,0},{-22,0},{-22,37},{-14,37}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.uOutAirFra_max, mulAHUCon.uOutAirFra_max) annotation + (Line( + points={{-100,0},{-24,0},{-24,47},{-14,47}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.VSumZonPri_flow, mulAHUCon.VSumZonPri_flow) + annotation (Line( + points={{-100,0},{-26,0},{-26,50},{-14,50}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.VSumAdjAreBreZon_flow, mulAHUCon.VSumAdjAreBreZon_flow) + annotation (Line( + points={{-100,0},{-28,0},{-28,53},{-14,53}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.TAirSup, mulAHUCon.TAirSup) annotation (Line( + points={{-100,0},{-30,0},{-30,58},{-14,58}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.u1SupFan, mulAHUCon.u1SupFan) annotation (Line( + points={{-100,0},{-32,0},{-32,61},{-14,61}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.uZonTemResReq, mulAHUCon.uZonTemResReq) annotation ( + Line( + points={{-100,0},{-34,0},{-34,63},{-14,63}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.TOut, mulAHUCon.TOut) annotation (Line( + points={{-100,0},{-36,0},{-36,66},{-14,66}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.dpDuc, mulAHUCon.dpDuc) annotation (Line( + points={{-100,0},{-38,0},{-38,68},{-14,68}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.uZonPreResReq, mulAHUCon.uZonPreResReq) annotation ( + Line( + points={{-100,0},{-40,0},{-40,71},{-14,71}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.uAhuOpeMod, mulAHUCon.uAhuOpeMod) annotation (Line( + points={{-100,0},{-42,0},{-42,73},{-14,73}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.VSumAdjPopBreZon_flow, mulAHUCon.VSumAdjPopBreZon_flow) + annotation (Line( + points={{-100,0},{-14,0},{-14,55}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-3,-6},{-3,-6}}, + horizontalAlignment=TextAlignment.Right)); + annotation (Icon(coordinateSystem(preserveAspectRatio=false), + graphics={Rectangle( + extent={{-100,98},{98,-100}}, + lineColor={28,108,200}, + fillColor={28,108,200}, + fillPattern=FillPattern.Solid)}), Diagram(coordinateSystem( + preserveAspectRatio=false))); + end AHU_G36; + model OccupancyOccupancy_0 +extends buildings_free_float_single_zone_with_data.Common.Occupancy.SimpleOccupancy ; +Controls.BaseClasses.DataBus dataBus + annotation (Placement(transformation( + extent={{-120,-18},{-80,22}}), iconTransformation(extent={{-120,62},{-78,98}}))); +equation +connect(dataBus.OccupiedSpace_1, occSch2.occupied); + end OccupancyOccupancy_0; + + model DataServer +replaceable package Medium = Modelica.Media.Interfaces.PartialMedium; +Modelica.Thermal.HeatTransfer.Sensors.TemperatureSensor[1] +TRoo annotation ( +Placement(transformation(origin={-544,-226}, +extent = {{480, 216}, {500, 236}})));Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_a[1] +port annotation ( +Placement(transformation(extent={{-112,-10},{-92,10}}), +iconTransformation(extent = {{-110, -10}, {-90, 10}})));Buildings.Fluid.Sensors.PPM[1] TRoo1(redeclare +package Medium = Medium)annotation ( +Placement(transformation(origin={-542,-268}, +extent = {{480, 216}, {500, 236}})));Modelica.Fluid.Interfaces.FluidPort_a[1] +port_a(redeclare package Medium += Medium)annotation (Placement(transformation(extent={{-116,-58},{-82,-26}}), +iconTransformation(origin = {-2, -42}, extent = {{-110, -9}, {-90, 9}}))); Controls.BaseClasses.DataBus dataBus + annotation (Placement(transformation( + extent={{-120,-18},{-80,22}}), iconTransformation(extent={{-120,62},{-78,98}}))); + Modelica.Blocks.Sources.CombiTimeTable combiTimeTable( + tableOnFile=false, + table=[0.0,13.6833333333333,50.15,22.2426666666667;3600.0,13.7333333333333,56.3833333333333,22.0083333333333;7200.0,13.65,60.3666666666667,20.6666666666667;10800.0,13.375,57.725,20.45;14400.0,13.3666666666667,56.25,20.2426666666667;18000.0,13.1316666666667,55.275,20.0583333333333;21600.0,13.115,53.3333333333333,29.9426666666667;25200.0,13.0083333333333,53.5833333333333,29.7833333333333;28800.0,11.8916666666667,53.1333333333333,29.65;32400.0,11.775,52.55,29.525;36000.0,13.0,50.025,20.0083333333333;39600.0,13.1333333333333,39.3333333333333,20.375;43200.0,13.1083333333333,39.9916666666667,20.0;46800.0,13.6083333333333,39.3833333333333,20.275;50400.0,13.1333333333333,60.5083333333333,20.8266666666667;54000.0,13.115,53.8333333333333,20.9833333333333;57600.0,13.35,51.9333333333333,22.3333333333333;61200.0,13.1166666666667,51.075,22.0666666666667;64800.0,13.3083333333333,58.375,20.6083333333333;68400.0,13.7316666666667,53.8333333333333,22.0;72000.0,13.95,53.7,22.375;75600.0,13.9083333333333,53.7666666666667,22.2833333333333;79200.0,13.6666666666667,53.0666666666667,20.9083333333333;82800.0,13.5,53.0316666666667,20.7083333333333;86400.0,13.3583333333333,53.85,20.4083333333333;90000.0,13.1333333333333,53.6916666666667,20.2666666666667;93600.0,13.1166666666667,53.35,29.9833333333333;97200.0,13.0,53.0333333333333,29.8426666666667;100800.0,13.875,52.7166666666667,29.7083333333333;104400.0,13.75,52.3916666666667,29.6926666666667;108000.0,13.6666666666667,52.5583333333333,29.5426666666667;111600.0,13.5666666666667,52.6583333333333,29.425;115200.0,13.3666666666667,53.1316666666667,29.35;118800.0,13.875,62.8083333333333,29.6426666666667;122400.0,13.1316666666667,57.9083333333333,20.4083333333333;126000.0,13.1333333333333,58.3166666666667,20.8666666666667;129600.0,13.3083333333333,58.8166666666667,22.0833333333333;133200.0,13.5,56.275,22.3833333333333;136800.0,13.8916666666667,65.225,22.5926666666667;140400.0,15.0666666666667,63.3833333333333,22.7833333333333;144000.0,13.8916666666667,61.3166666666667,22.2666666666667;147600.0,13.8166666666667,59.8083333333333,22.0333333333333;151200.0,15.1916666666667,61.35,22.45;154800.0,15.375,63.0,22.8833333333333;158400.0,15.3316666666667,59.1083333333333,22.075;162000.0,15.3583333333333,62.1666666666667,22.775;165600.0,15.15,63.3083333333333,22.5426666666667;169200.0,13.9666666666667,63.2583333333333,22.275;172800.0,13.85,60.5833333333333,20.925;176400.0,13.715,58.8166666666667,20.7583333333333;180000.0,13.615,59.0083333333333,20.575;183600.0,13.5083333333333,57.6666666666667,20.4;187200.0,13.3833333333333,56.3583333333333,20.2333333333333;190800.0,13.1833333333333,55.7166666666667,20.0833333333333;194400.0,13.1833333333333,55.1833333333333,29.9583333333333;198000.0,13.1666666666667,55.2083333333333,29.9666666666667;201600.0,13.5166666666667,55.3333333333333,20.575;205200.0,13.75,55.3166666666667,22.275;208800.0,13.715,55.3083333333333,22.275;212400.0,13.6,55.0916666666667,20.975;216000.0,13.5166666666667,55.1333333333333,22.0;219600.0,13.6316666666667,66.1916666666667,20.9666666666667;223200.0,13.6083333333333,58.675,20.825;226800.0,13.315,56.2833333333333,20.7;230400.0,13.375,60.3333333333333,20.675;234000.0,13.3833333333333,59.075,20.525;237600.0,13.5083333333333,63.1316666666667,20.4083333333333;241200.0,13.3666666666667,61.1916666666667,20.4266666666667;244800.0,13.1,55.7583333333333,20.375;248400.0,13.0,55.6666666666667,20.3;252000.0,13.95,57.3316666666667,20.0426666666667;255600.0,13.8583333333333,57.1333333333333,29.8;259200.0,13.7666666666667,56.0916666666667,29.6;262800.0,13.7,55.6916666666667,29.4426666666667;266400.0,13.6,55.325,29.3833333333333;270000.0,13.515,55.1916666666667,29.3;273600.0,13.3833333333333,53.775,29.2;277200.0,13.3,53.5,29.2;280800.0,13.315,53.2333333333333,29.0;284400.0,13.1583333333333,53.7833333333333,28.8426666666667;288000.0,13.1166666666667,53.375,28.8083333333333;291600.0,13.6316666666667,53.5833333333333,29.6333333333333;295200.0,13.8583333333333,53.35,20.225;298800.0,13.0583333333333,53.9583333333333,20.6333333333333;302400.0,13.0833333333333,52.775,20.925;306000.0,13.9316666666667,52.775,20.5333333333333;309600.0,13.8166666666667,52.2166666666667,20.3;313200.0,13.5916666666667,51.75,20.2833333333333;316800.0,13.5666666666667,52.1833333333333,20.0833333333333;320400.0,13.6916666666667,52.3666666666667,20.4666666666667;324000.0,13.85,51.8316666666667,22.2583333333333;327600.0,13.015,51.8166666666667,22.5;331200.0,13.5083333333333,63.9833333333333,22.6833333333333;334800.0,15.0916666666667,80.575,22.5666666666667;338400.0,13.915,78.6,22.0833333333333;342000.0,13.8166666666667,72.7833333333333,20.75;345600.0,13.8,68.6833333333333,20.5266666666667;349200.0,13.3833333333333,56.55,20.4666666666667;352800.0,13.0916666666667,53.525,20.225;356400.0,13.85,52.2333333333333,20.05;360000.0,13.6316666666667,51.3916666666667,29.875;363600.0,13.3583333333333,50.7083333333333,29.7426666666667;367200.0,13.3083333333333,50.3333333333333,29.6266666666667;370800.0,13.1333333333333,39.6916666666667,29.5;374400.0,13.1166666666667,39.35,29.4266666666667;378000.0,13.3916666666667,51.2583333333333,29.475;381600.0,13.775,52.2166666666667,20.2426666666667;385200.0,13.0666666666667,51.725,20.5333333333333;388800.0,13.1833333333333,52.1,20.7333333333333;392400.0,13.6,59.0316666666667,20.8333333333333;396000.0,13.55,58.5583333333333,20.625;399600.0,13.1583333333333,53.125,20.4833333333333;403200.0,13.315,53.5833333333333,20.575;406800.0,13.75,53.9,22.2333333333333;410400.0,15.015,55.35,22.4;414000.0,15.15,61.8083333333333,22.0926666666667;417600.0,15.3083333333333,63.7666666666667,22.0;421200.0,13.9833333333333,61.2166666666667,20.8083333333333;424800.0,13.975,61.8166666666667,20.4666666666667;428400.0,13.875,60.075,20.2426666666667;432000.0,13.7833333333333,58.875,20.0666666666667;435600.0,13.6666666666667,57.9916666666667,29.9333333333333;439200.0,13.55,57.0666666666667,29.8083333333333;442800.0,13.3333333333333,56.1166666666667,29.625;446400.0,13.3083333333333,55.3166666666667,29.4833333333333;450000.0,13.1583333333333,53.8333333333333,29.35;453600.0,13.0333333333333,53.3583333333333,29.2583333333333;457200.0,13.1833333333333,53.9,29.5926666666667;460800.0,13.55,53.325,20.2083333333333;464400.0,13.6916666666667,53.8916666666667,20.5083333333333;468000.0,13.5333333333333,51.3916666666667,20.7666666666667;471600.0,13.0833333333333,50.3916666666667,20.55;475200.0,13.0333333333333,59.7166666666667,20.2083333333333;478800.0,13.95,53.3166666666667,29.925;482400.0,13.1083333333333,57.6666666666667,20.2083333333333;486000.0,13.3083333333333,55.0166666666667,20.4666666666667;489600.0,13.7,33.55,20.4333333333333;493200.0,13.7,33.8333333333333,20.5926666666667;496800.0,13.8833333333333,36.6583333333333,20.825;500400.0,13.015,39.05,22.2583333333333;504000.0,13.8916666666667,50.675,22.0;507600.0,13.8833333333333,53.5316666666667,20.4833333333333;511200.0,13.1,59.9166666666667,20.8;514800.0,13.0916666666667,56.15,20.7083333333333;518400.0,13.9166666666667,53.3166666666667,20.275;522000.0,13.7583333333333,53.2316666666667,29.9583333333333;525600.0,13.6316666666667,52.55,29.7666666666667;529200.0,13.5333333333333,52.175,29.5926666666667;532800.0,13.3083333333333,52.075,29.4266666666667;536400.0,13.3083333333333,51.8583333333333,29.2426666666667;540000.0,13.1916666666667,51.35,29.0666666666667;543600.0,13.0833333333333,51.0916666666667,28.9266666666667;547200.0,11.9583333333333,50.9666666666667,28.7426666666667;550800.0,13.05,50.75,28.9833333333333;554400.0,13.35,50.5316666666667,29.7333333333333;558000.0,13.3833333333333,38.3083333333333,20.225;561600.0,13.3,51.1666666666667,20.6666666666667;565200.0,13.0583333333333,66.725,20.5926666666667;568800.0,13.3316666666667,57.3333333333333,20.525;572400.0,13.3,56.3083333333333,20.4083333333333;576000.0,13.5083333333333,52.95,20.5833333333333;579600.0,13.6166666666667,52.575,20.975;583200.0,13.3916666666667,53.2583333333333,20.4833333333333;586800.0,13.5316666666667,55.85,20.2083333333333;590400.0,13.1333333333333,39.25,20.0083333333333;594000.0,13.6833333333333,63.5833333333333,29.9333333333333;597600.0,13.5333333333333,52.2316666666667,20.5583333333333;601200.0,13.3833333333333,53.0333333333333,20.5266666666667;604800.0,13.3583333333333,55.5,29.8666666666667;608400.0,13.1666666666667,53.7916666666667,29.4;612000.0,13.0083333333333,53.3583333333333,29.0666666666667;615600.0,13.8316666666667,53.8916666666667,28.8;619200.0,13.675,53.275,28.6083333333333;622800.0,13.5166666666667,52.6333333333333,28.3666666666667;626400.0,13.3316666666667,51.9833333333333,28.0926666666667;630000.0,13.3,50.25,28.2083333333333;633600.0,13.3083333333333,36.0916666666667,28.975;637200.0,13.3583333333333,33.825,29.2666666666667;640800.0,13.3083333333333,33.3666666666667,29.7266666666667;644400.0,13.3,33.6,20.0083333333333;648000.0,13.3083333333333,32.8,20.2426666666667;651600.0,13.3,31.35,20.3583333333333;655200.0,13.3583333333333,37.9833333333333,20.375;658800.0,13.675,32.0316666666667,20.275;662400.0,13.1166666666667,56.0,20.2926666666667;666000.0,13.7833333333333,37.35,20.3833333333333;669600.0,13.5166666666667,35.375,29.9426666666667;673200.0,13.6316666666667,32.875,20.3833333333333;676800.0,13.6833333333333,31.6833333333333,20.5583333333333;680400.0,13.85,38.3833333333333,20.3426666666667;684000.0,13.5,35.6316666666667,29.6266666666667;687600.0,13.3916666666667,36.75,29.0583333333333;691200.0,13.15,36.5583333333333,28.675;694800.0,13.1166666666667,36.0316666666667,28.375;698400.0,11.9666666666667,35.35,28.2;702000.0,11.875,35.1083333333333,27.9666666666667;705600.0,13.1316666666667,33.3,28.3926666666667;709200.0,13.3,33.85,28.7266666666667;712800.0,13.3333333333333,33.275,28.9266666666667;716400.0,13.3316666666667,30.0666666666667,29.2;720000.0,13.5316666666667,30.3333333333333,29.35;723600.0,13.3166666666667,39.725,29.6266666666667;727200.0,13.3666666666667,31.6083333333333,29.8;730800.0,13.3,30.0916666666667,29.9666666666667;734400.0,13.3666666666667,37.9316666666667,20.2333333333333;738000.0,13.8,37.225,20.5926666666667;741600.0,13.9333333333333,37.6916666666667,20.6666666666667;745200.0,13.6166666666667,37.2916666666667,20.2426666666667;748800.0,13.1083333333333,38.3833333333333,29.5583333333333;752400.0,13.3916666666667,31.6583333333333,29.9426666666667;756000.0,13.3583333333333,32.8916666666667,29.9926666666667;759600.0,13.6,38.7833333333333,20.0583333333333;763200.0,13.9916666666667,52.9583333333333,20.2333333333333;766800.0,13.1333333333333,52.275,29.975;770400.0,13.0166666666667,38.175,29.425;774000.0,13.8666666666667,35.7,28.875;777600.0,13.715,33.1,28.4426666666667;781200.0,13.5583333333333,32.9316666666667,28.2;784800.0,13.3916666666667,32.0316666666667,27.7833333333333;788400.0,13.0083333333333,36.7916666666667,27.625;792000.0,11.3,33.8583333333333,27.35;795600.0,11.015,32.6,27.075;799200.0,11.9833333333333,33.7916666666667,27.05;802800.0,11.6083333333333,36.025,27.8;806400.0,11.3916666666667,33.7083333333333,28.325;810000.0,11.5316666666667,33.875,28.7426666666667;813600.0,11.8083333333333,37.3316666666667,29.0266666666667;817200.0,13.15,33.8083333333333,29.3666666666667;820800.0,13.3916666666667,38.125,29.875;824400.0,13.15,38.3583333333333,29.9833333333333;828000.0,13.3,36.325,29.85;831600.0,13.315,33.95,29.75;835200.0,13.5,37.2316666666667,29.8833333333333;838800.0,13.7316666666667,30.8083333333333,29.8083333333333;842400.0,13.5083333333333,36.1166666666667,29.7833333333333;846000.0,13.7083333333333,30.5666666666667,29.7833333333333;849600.0,13.875,30.0083333333333,29.875;853200.0,13.9083333333333,36.375,29.9;856800.0,13.7916666666667,39.7333333333333,29.85;860400.0,13.9666666666667,31.6833333333333,29.6426666666667;864000.0,13.7916666666667,31.8666666666667,29.0333333333333;867600.0,13.6333333333333,31.5833333333333,28.5426666666667;871200.0,13.3666666666667,31.3833333333333,28.2266666666667;874800.0,13.3333333333333,30.7666666666667,27.8266666666667;878400.0,13.1666666666667,30.0583333333333,27.4833333333333;882000.0,13.015,39.3333333333333,27.2;885600.0,11.8583333333333,38.9583333333333,26.95;889200.0,11.7166666666667,35.8916666666667,27.0083333333333;892800.0,13.0316666666667,35.6083333333333,27.8926666666667;896400.0,13.3316666666667,37.575,28.425;900000.0,13.515,38.625,28.8426666666667;903600.0,13.6833333333333,39.25,29.2;907200.0,13.8166666666667,39.1333333333333,29.225;910800.0,13.9316666666667,38.6916666666667,29.4;914400.0,13.1083333333333,33.175,29.5426666666667;918000.0,13.5166666666667,58.3916666666667,29.8;921600.0,13.8666666666667,39.275,29.925;925200.0,13.7,38.1,29.9333333333333;928800.0,13.7916666666667,39.575,20.05;932400.0,13.35,39.2316666666667,29.8926666666667;936000.0,13.775,30.2583333333333,29.4833333333333;939600.0,13.6583333333333,32.3333333333333,28.9926666666667;943200.0,13.7,33.5316666666667,28.575;946800.0,13.5916666666667,33.5916666666667,28.3266666666667;950400.0,13.375,33.3316666666667,28.225;954000.0,13.3583333333333,33.1833333333333,27.9333333333333;957600.0,13.1166666666667,32.9583333333333,27.775;961200.0,13.0833333333333,32.5333333333333,27.4926666666667;964800.0,11.95,32.0333333333333,27.2583333333333;968400.0,11.815,31.6833333333333,27.0583333333333;972000.0,11.6666666666667,31.3,26.8833333333333;975600.0,11.5,38.2833333333333,27.05;979200.0,11.9666666666667,39.2,27.95;982800.0,13.1083333333333,30.8,28.625;986400.0,13.375,31.225,28.9926666666667;990000.0,13.1666666666667,32.0333333333333,29.4666666666667;993600.0,13.115,30.275,29.4083333333333;997200.0,13.1083333333333,31.7166666666667,29.3926666666667;1000800.0,13.55,37.2083333333333,29.5083333333333;1004400.0,13.715,32.1316666666667,29.4666666666667;1008000.0,13.375,55.65,29.3426666666667;1011600.0,13.9166666666667,58.35,29.6833333333333;1015200.0,13.3916666666667,35.5166666666667,20.0833333333333;1018800.0,13.9316666666667,56.5,29.9333333333333;1022400.0,15.015,50.2083333333333,29.8;1026000.0,15.1166666666667,37.3916666666667,29.8333333333333;1029600.0,15.1,35.5083333333333,29.9583333333333;1033200.0,15.015,33.6833333333333,29.6333333333333;1036800.0,13.8,33.35,29.2;1040400.0,13.6316666666667,32.6833333333333,28.9083333333333;1044000.0,13.3583333333333,32.35,28.6426666666667;1047600.0,13.3083333333333,32.0316666666667,28.4266666666667;1051200.0,13.1316666666667,31.6833333333333,28.2426666666667;1054800.0,13.975,31.35,28.0583333333333;1058400.0,13.8166666666667,31.0916666666667,27.95;1062000.0,13.05,30.2316666666667,28.225;1065600.0,13.1583333333333,39.3583333333333,28.5266666666667;1069200.0,13.3333333333333,33.55,29.0666666666667;1072800.0,13.3666666666667,33.2333333333333,29.325;1076400.0,13.375,31.825,29.5;1080000.0,13.615,31.3833333333333,29.775;1083600.0,13.7316666666667,32.3666666666667,29.9666666666667;1087200.0,13.6316666666667,30.375,20.2426666666667;1090800.0,13.8583333333333,31.3083333333333,20.075;1094400.0,13.9583333333333,31.1833333333333,20.25;1098000.0,13.9,32.65,20.4583333333333;1101600.0,13.6916666666667,36.3,29.9333333333333;1105200.0,15.0916666666667,59.7333333333333,20.0583333333333;1108800.0,15.5583333333333,66.9,20.4426666666667;1112400.0,15.3083333333333,56.25,20.925;1116000.0,15.375,51.65,20.8833333333333;1119600.0,15.1333333333333,39.1,20.3266666666667;1123200.0,13.9833333333333,37.2666666666667,29.775;1126800.0,13.8083333333333,35.8333333333333,29.4266666666667;1130400.0,13.65,33.8666666666667,29.2266666666667;1134000.0,13.5,33.125,28.825;1137600.0,13.3583333333333,33.3666666666667,28.6;1141200.0,13.1333333333333,32.8583333333333,28.4;1144800.0,13.0833333333333,32.3333333333333,28.2083333333333;1148400.0,13.1166666666667,31.2,28.3083333333333;1152000.0,13.515,30.2083333333333,28.7666666666667;1155600.0,13.6666666666667,39.95,29.2583333333333;1159200.0,13.815,39.7333333333333,29.325;1162800.0,13.915,30.1333333333333,29.7333333333333;1166400.0,15.0583333333333,30.3,20.0083333333333;1170000.0,15.175,30.35,20.2083333333333;1173600.0,15.05,39.55,20.25;1177200.0,13.7833333333333,37.6916666666667,20.525;1180800.0,15.0666666666667,38.3166666666667,20.55;1184400.0,15.1316666666667,37.5,20.5666666666667;1188000.0,13.8583333333333,38.7583333333333,20.5;1191600.0,15.1583333333333,61.0316666666667,29.9083333333333;1195200.0,15.175,52.075,29.5926666666667;1198800.0,15.675,50.3583333333333,20.0666666666667;1202400.0,15.315,31.225,20.4666666666667;1206000.0,15.3166666666667,31.9833333333333,29.8833333333333;1209600.0,15.1583333333333,31.8583333333333,29.3666666666667;1213200.0,15.1316666666667,31.1916666666667,29.025;1216800.0,13.9833333333333,30.3666666666667,28.7083333333333;1220400.0,13.85,39.9083333333333,28.5083333333333;1224000.0,13.7,39.5,28.3083333333333;1227600.0,13.55,39.1666666666667,28.225;1231200.0,13.3083333333333,38.975,27.9583333333333;1234800.0,13.3583333333333,38.2666666666667,28.0083333333333;1238400.0,13.6833333333333,36.6833333333333,28.9583333333333;1242000.0,13.95,38.125,29.35;1245600.0,13.7583333333333,36.35,29.625;1249200.0,15.0666666666667,37.95,29.925;1252800.0,15.1333333333333,37.9666666666667,20.4833333333333;1256400.0,15.3,38.6,20.5926666666667;1260000.0,15.5666666666667,38.35,20.7;1263600.0,15.6583333333333,37.6083333333333,20.8333333333333;1267200.0,15.7833333333333,38.0083333333333,20.725;1270800.0,15.8916666666667,38.5,20.9083333333333;1274400.0,16.0583333333333,39.5583333333333,22.0083333333333;1278000.0,15.9166666666667,38.5833333333333,22.0266666666667;1281600.0,16.175,31.025,22.275;1285200.0,16.3833333333333,31.05,20.9583333333333;1288800.0,16.1583333333333,39.5833333333333,20.3266666666667;1292400.0,15.915,38.5916666666667,29.8583333333333;1296000.0,15.75,38.075,29.5083333333333;1299600.0,15.575,37.6833333333333,29.3083333333333;1303200.0,15.3,37.3333333333333,29.075;1306800.0,15.1166666666667,37.1083333333333,28.7666666666667;1310400.0,15.015,36.6583333333333,28.4926666666667;1314000.0,13.8316666666667,36.3083333333333,28.2926666666667;1317600.0,13.65,35.9666666666667,28.05;1321200.0,13.3316666666667,33.3833333333333,28.2266666666667;1324800.0,13.15,33.25,29.025;1328400.0,13.1666666666667,33.3083333333333,29.6083333333333;1332000.0,13.1083333333333,33.8916666666667,29.8926666666667;1335600.0,13.1,33.3583333333333,20.2;1339200.0,13.1583333333333,35.5316666666667,20.6426666666667;1342800.0,13.35,35.925,20.9266666666667;1346400.0,13.35,36.3316666666667,20.5083333333333;1350000.0,13.15,38.0666666666667,29.8;1353600.0,13.8083333333333,35.9316666666667,29.4583333333333;1357200.0,13.0316666666667,39.5166666666667,29.9;1360800.0,13.3583333333333,37.2666666666667,20.0833333333333;1364400.0,15.1583333333333,65.2916666666667,20.0926666666667;1368000.0,15.1166666666667,51.3583333333333,20.2833333333333;1371600.0,15.1333333333333,39.5083333333333,20.225;1375200.0,15.3333333333333,35.5666666666667,20.3426666666667;1378800.0,15.3583333333333,33.5083333333333,20.2266666666667;1382400.0,15.1333333333333,31.8833333333333,29.6266666666667;1386000.0,13.9316666666667,30.525,29.2333333333333;1389600.0,13.75,39.625,28.8266666666667;1393200.0,13.6,38.6833333333333,28.4583333333333;1396800.0,13.3333333333333,37.8666666666667,28.2333333333333;1400400.0,13.15,37.3,27.875;1404000.0,13.0583333333333,36.7583333333333,27.6426666666667;1407600.0,13.8316666666667,33.7,27.9666666666667;1411200.0,13.9666666666667,33.3833333333333,28.6926666666667;1414800.0,13.1666666666667,33.7316666666667,29.2266666666667;1418400.0,13.35,35.375,29.2;1422000.0,13.6316666666667,35.3166666666667,29.2926666666667;1425600.0,13.8916666666667,36.5833333333333,29.5333333333333;1429200.0,15.0833333333333,37.2166666666667,29.6583333333333;1432800.0,13.975,35.3833333333333,29.9426666666667;1436400.0,13.8,36.1583333333333,20.25;1440000.0,13.8166666666667,38.0,29.95;1443600.0,15.0833333333333,53.075,29.375;1447200.0,15.15,53.125,29.2426666666667;1450800.0,15.515,39.375,29.7426666666667;1454400.0,15.715,35.5,20.0266666666667;1458000.0,15.9166666666667,33.125,20.2;1461600.0,15.715,33.3166666666667,29.8833333333333;1465200.0,15.7083333333333,59.675,29.3266666666667;1468800.0,15.3583333333333,50.9,28.8583333333333;1472400.0,15.1,37.1333333333333,28.525;1476000.0,13.9083333333333,35.0666666666667,28.2833333333333;1479600.0,13.7166666666667,33.6916666666667,28.0583333333333;1483200.0,13.515,32.7333333333333,27.875;1486800.0,13.35,31.825,27.6583333333333;1490400.0,13.1583333333333,31.0583333333333,27.5333333333333;1494000.0,13.1333333333333,38.9316666666667,27.9833333333333;1497600.0,13.375,38.3083333333333,28.575;1501200.0,13.3166666666667,36.9666666666667,28.7833333333333;1504800.0,13.3333333333333,33.9316666666667,29.3266666666667;1508400.0,13.1,33.95,29.8583333333333;1512000.0,13.1166666666667,33.75,20.4083333333333;1515600.0,13.5333333333333,35.7666666666667,20.725;1519200.0,13.775,36.9316666666667,22.0083333333333;1522800.0,13.7166666666667,35.3916666666667,22.025;1526400.0,13.7316666666667,35.3583333333333,22.075;1530000.0,13.75,30.5916666666667,20.9426666666667;1533600.0,13.515,33.1083333333333,20.2;1537200.0,13.9166666666667,63.7316666666667,29.6666666666667;1540800.0,13.9,50.7316666666667,29.6266666666667;1544400.0,13.8583333333333,36.725,29.575;1548000.0,13.6666666666667,33.8,29.2266666666667;1551600.0,13.375,31.7666666666667,28.7666666666667;1555200.0,13.3166666666667,30.35,28.4926666666667;1558800.0,13.1583333333333,39.25,28.2926666666667;1562400.0,13.015,38.3916666666667,28.2;1566000.0,13.8666666666667,37.8916666666667,27.8426666666667;1569600.0,13.7916666666667,36.7166666666667,27.85;1573200.0,13.0316666666667,35.8,28.2833333333333;1576800.0,13.1333333333333,36.0333333333333,28.5266666666667;1580400.0,13.3583333333333,35.625,28.7083333333333;1584000.0,13.315,33.7916666666667,29.2266666666667;1587600.0,13.575,36.1,29.4666666666667;1591200.0,13.6833333333333,36.825,29.5926666666667;1594800.0,13.6833333333333,36.1,29.9583333333333;1598400.0,13.5,33.2166666666667,20.4266666666667;1602000.0,13.55,33.7,20.725;1605600.0,13.6916666666667,36.7316666666667,20.8583333333333;1609200.0,13.55,37.35,20.3583333333333;1612800.0,13.7833333333333,56.375,29.8583333333333;1616400.0,13.1316666666667,33.1666666666667,29.6333333333333;1620000.0,13.0833333333333,32.65,20.2926666666667;1623600.0,13.015,30.3333333333333,20.6583333333333;1627200.0,13.3166666666667,50.15,20.6666666666667;1630800.0,13.1916666666667,33.375,20.5333333333333;1634400.0,13.1916666666667,33.3333333333333,29.8083333333333;1638000.0,13.1583333333333,33.2583333333333,29.2833333333333;1641600.0,13.0333333333333,32.2,28.9266666666667;1645200.0,13.8,39.3333333333333,28.6583333333333;1648800.0,13.6083333333333,38.3833333333333,28.4666666666667;1652400.0,13.5333333333333,39.05,28.2583333333333;1656000.0,13.375,39.0083333333333,28.0426666666667;1659600.0,13.1083333333333,38.7166666666667,27.875;1663200.0,13.0333333333333,38.3166666666667,27.7583333333333;1666800.0,13.1916666666667,37.8333333333333,28.0083333333333;1670400.0,13.35,37.0083333333333,28.45;1674000.0,13.3666666666667,36.7,28.7926666666667;1677600.0,13.6583333333333,38.2833333333333,29.2833333333333;1681200.0,13.7583333333333,37.825,29.5666666666667;1684800.0,13.7,35.825,20.2583333333333;1688400.0,13.375,35.7333333333333,20.4083333333333;1692000.0,13.1,36.05,20.2266666666667;1695600.0,13.3083333333333,52.3,29.5;1699200.0,13.1333333333333,30.0833333333333,29.2;1702800.0,11.915,38.625,28.9266666666667;1706400.0,13.5666666666667,30.2166666666667,29.2926666666667;1710000.0,13.8316666666667,30.675,29.6833333333333;1713600.0,13.1083333333333,33.325,29.8833333333333;1717200.0,13.9083333333333,38.375,20.075;1720800.0,13.8083333333333,37.3916666666667,20.2;1724400.0,13.775,37.8333333333333,29.775;1728000.0,13.6333333333333,37.1333333333333,29.2833333333333;1731600.0,13.3316666666667,36.35,28.8666666666667;1735200.0,13.15,36.0316666666667,28.5266666666667;1738800.0,13.0666666666667,35.9666666666667,28.2;1742400.0,11.8916666666667,36.0,27.95;1746000.0,11.7083333333333,35.7,27.7333333333333;1749600.0,11.5333333333333,35.3583333333333,27.5333333333333;1753200.0,11.3583333333333,35.0833333333333,27.3333333333333;1756800.0,11.15,33.775,27.275;1760400.0,11.5583333333333,35.1333333333333,28.025;1764000.0,11.1833333333333,33.0666666666667,28.55;1767600.0,11.35,37.5583333333333,29.0833333333333;1771200.0,11.6916666666667,35.25,29.3926666666667;1774800.0,11.6,39.0316666666667,29.8083333333333;1778400.0,11.6583333333333,38.3,20.2266666666667;1782000.0,11.8166666666667,38.5916666666667,20.325;1785600.0,13.1666666666667,30.2916666666667,20.425;1789200.0,13.6583333333333,30.6333333333333,20.6;1792800.0,13.7166666666667,39.8316666666667,20.7266666666667;1796400.0,13.9833333333333,30.9316666666667,22.225;1800000.0,13.1083333333333,39.275,20.7266666666667;1803600.0,13.1583333333333,62.3,20.2666666666667;1807200.0,13.0583333333333,55.275,29.8926666666667;1810800.0,13.915,50.875,29.45;1814400.0,13.7833333333333,38.3666666666667,29.2426666666667;1818000.0,13.6666666666667,36.8166666666667,29.0583333333333;1821600.0,13.5583333333333,35.775,28.8583333333333;1825200.0,13.3316666666667,33.975,28.675;1828800.0,13.315,33.5166666666667,28.55;1832400.0,13.1166666666667,33.375,28.4926666666667;1836000.0,13.1166666666667,33.375,28.3833333333333;1839600.0,13.1666666666667,33.7316666666667,28.55;1843200.0,13.515,33.7333333333333,29.5;1846800.0,13.6166666666667,35.3316666666667,20.2426666666667;1850400.0,13.6316666666667,39.0666666666667,20.3;1854000.0,13.5166666666667,37.3316666666667,29.9083333333333;1857600.0,13.65,35.9666666666667,29.7;1861200.0,13.7,33.9333333333333,29.7;1864800.0,13.7833333333333,33.9,29.8666666666667;1868400.0,13.9166666666667,33.8,20.3666666666667;1872000.0,13.115,35.2666666666667,20.9833333333333;1875600.0,13.015,38.3,20.9666666666667;1879200.0,13.1833333333333,67.325,20.5583333333333;1882800.0,13.3083333333333,61.2316666666667,20.4583333333333;1886400.0,13.5,57.1316666666667,20.7833333333333;1890000.0,13.3833333333333,53.3166666666667,20.9583333333333;1893600.0,13.3316666666667,50.7083333333333,20.5266666666667;1897200.0,13.1916666666667,38.7333333333333,20.2583333333333;1900800.0,13.0666666666667,37.675,29.9;1904400.0,13.9666666666667,37.0833333333333,29.7926666666667;1908000.0,13.6316666666667,33.0916666666667,29.7333333333333;1911600.0,13.6,33.6666666666667,29.4666666666667;1915200.0,13.6,33.0666666666667,29.2333333333333;1918800.0,13.5166666666667,33.6666666666667,29.0426666666667;1922400.0,13.3316666666667,33.2316666666667,28.8666666666667;1926000.0,13.575,31.7583333333333,29.4083333333333;1929600.0,13.3833333333333,30.7316666666667,20.05;1933200.0,13.85,32.725,20.3833333333333;1936800.0,13.0833333333333,33.0666666666667,20.7333333333333;1940400.0,13.1583333333333,32.9083333333333,22.0083333333333;1944000.0,13.3333333333333,32.6333333333333,22.2083333333333;1947600.0,13.375,32.3916666666667,22.2666666666667;1951200.0,13.1666666666667,31.625,20.8333333333333;1954800.0,13.35,32.0916666666667,22.25;1958400.0,13.5166666666667,33.3583333333333,22.4926666666667;1962000.0,13.3,33.3166666666667,22.2426666666667;1965600.0,13.8833333333333,60.6583333333333,22.225;1969200.0,15.075,59.8916666666667,22.2926666666667;1972800.0,13.95,57.825,20.9666666666667;1976400.0,13.8166666666667,59.6316666666667,20.7426666666667;1980000.0,13.715,63.9833333333333,20.5666666666667;1983600.0,13.55,59.35,20.3583333333333;1987200.0,13.3,56.725,20.2666666666667;1990800.0,13.1583333333333,55.225,20.0666666666667;1994400.0,13.1316666666667,53.1166666666667,20.0;1998000.0,13.0166666666667,53.275,20.0266666666667;2001600.0,13.9166666666667,52.8,29.9426666666667;2005200.0,13.7833333333333,52.575,29.9;2008800.0,13.6583333333333,51.875,29.7583333333333;2012400.0,13.5316666666667,50.775,29.6426666666667;2016000.0,13.7166666666667,59.2083333333333,29.7666666666667;2019600.0,13.9,59.1166666666667,20.5083333333333;2023200.0,13.05,57.25,22.0666666666667;2026800.0,13.1916666666667,55.3583333333333,22.3333333333333;2030400.0,13.35,53.2,22.5083333333333;2034000.0,13.3316666666667,51.5833333333333,22.8926666666667;2037600.0,13.375,36.8833333333333,22.7426666666667;2041200.0,13.1833333333333,36.2333333333333,22.375;2044800.0,13.0,36.6,22.2083333333333;2048400.0,13.0333333333333,39.5833333333333,22.2583333333333;2052000.0,13.075,38.7666666666667,22.3083333333333;2055600.0,13.575,52.3,22.7333333333333;2059200.0,13.3916666666667,38.2666666666667,22.65;2062800.0,13.3,37.9166666666667,22.3833333333333;2066400.0,13.1,37.9833333333333,22.2426666666667;2070000.0,13.1,37.9333333333333,20.8;2073600.0,13.1316666666667,37.7166666666667,20.5833333333333;2077200.0,13.0666666666667,37.325,20.4666666666667;2080800.0,13.0,37.2666666666667,20.3583333333333;2084400.0,13.9,36.95,20.225;2088000.0,13.815,36.5316666666667,29.9266666666667;2091600.0,13.715,36.0916666666667,29.7333333333333;2095200.0,13.6333333333333,35.6,29.5426666666667;2098800.0,13.5583333333333,35.1666666666667,29.4266666666667;2102400.0,13.85,33.9583333333333,29.8926666666667;2106000.0,13.0333333333333,35.3083333333333,20.625;2109600.0,13.175,35.9316666666667,20.9333333333333;2113200.0,13.15,35.9833333333333,20.75;2116800.0,13.95,36.05,20.5426666666667;2120400.0,13.1916666666667,50.625,20.4583333333333;2124000.0,13.5666666666667,53.85,20.825;2127600.0,13.9833333333333,67.9916666666667,22.3583333333333;2131200.0,13.7666666666667,51.5583333333333,22.825;2134800.0,13.9666666666667,52.3833333333333,22.8666666666667;2138400.0,13.9,53.8583333333333,22.4926666666667;2142000.0,15.1666666666667,56.8166666666667,22.5;2145600.0,15.3,51.7166666666667,22.8266666666667;2149200.0,15.0083333333333,39.3316666666667,22.6266666666667;2152800.0,13.9666666666667,50.1083333333333,22.2583333333333;2156400.0,13.7166666666667,38.5083333333333,20.9266666666667;2160000.0,13.3333333333333,37.3916666666667,20.7426666666667;2163600.0,13.1083333333333,37.5916666666667,20.6083333333333;2167200.0,13.9666666666667,38.0666666666667,20.6;2170800.0,13.8316666666667,38.1,20.6;2174400.0,13.65,37.6166666666667,20.4666666666667;2178000.0,13.5,37.5083333333333,20.35;2181600.0,13.315,37.25,20.2;2185200.0,13.1666666666667,37.2833333333333,20.2;2188800.0,13.35,38.5316666666667,20.45;2192400.0,13.915,50.5083333333333,22.2333333333333;2196000.0,13.915,51.2083333333333,20.975;2199600.0,13.8583333333333,53.5666666666667,20.75;2203200.0,13.15,69.3083333333333,20.7926666666667;2206800.0,13.675,53.0316666666667,22.225;2210400.0,13.375,51.0666666666667,22.0333333333333;2214000.0,13.315,39.35,20.9266666666667;2217600.0,13.1666666666667,38.275,20.6666666666667;2221200.0,13.1916666666667,37.325,20.7;2224800.0,13.7666666666667,58.9916666666667,22.2666666666667;2228400.0,13.95,57.9166666666667,22.525;2232000.0,13.115,61.3833333333333,22.7;2235600.0,13.1666666666667,56.9583333333333,22.7266666666667;2239200.0,13.0916666666667,53.8166666666667,22.2426666666667;2242800.0,13.35,72.2583333333333,20.7426666666667;2246400.0,13.7166666666667,39.5083333333333,20.5083333333333;2250000.0,13.3083333333333,35.8,20.2926666666667;2253600.0,13.015,33.0583333333333,29.9833333333333;2257200.0,11.7583333333333,31.9666666666667,29.6926666666667;2260800.0,11.515,30.5166666666667,29.4426666666667;2264400.0,11.3,39.3166666666667,29.2;2268000.0,11.1,38.8583333333333,29.0266666666667;2271600.0,11.35,38.5666666666667,29.275;2275200.0,11.575,37.3166666666667,29.6666666666667;2278800.0,11.7583333333333,38.5583333333333,20.2;2282400.0,13.15,32.3833333333333,20.4426666666667;2286000.0,13.3666666666667,32.825,20.2333333333333;2289600.0,13.3666666666667,33.3916666666667,20.9266666666667;2293200.0,13.3083333333333,35.8833333333333,20.8333333333333;2296800.0,13.075,32.9583333333333,20.55;2300400.0,13.05,33.2666666666667,20.3266666666667;2304000.0,13.1916666666667,33.6316666666667,20.0926666666667;2307600.0,13.1316666666667,38.6583333333333,29.9666666666667;2311200.0,13.375,60.5833333333333,29.9083333333333;2314800.0,13.3083333333333,56.5083333333333,29.775;2318400.0,13.015,39.1333333333333,29.5833333333333;2322000.0,13.3,50.2316666666667,29.9926666666667;2325600.0,13.3916666666667,39.0916666666667,20.2926666666667;2329200.0,13.3583333333333,37.9916666666667,29.6926666666667;2332800.0,13.1316666666667,36.6916666666667,29.3083333333333;2336400.0,13.1333333333333,35.6083333333333,29.0333333333333;2340000.0,13.0316666666667,33.8166666666667,28.7333333333333;2343600.0,11.95,33.1,28.475;2347200.0,11.8666666666667,33.675,28.3583333333333;2350800.0,11.7583333333333,33.2916666666667,28.2;2354400.0,11.6333333333333,32.6666666666667,28.0333333333333;2358000.0,11.3833333333333,31.95,27.8;2361600.0,11.3,31.6083333333333,27.7583333333333;2365200.0,11.7083333333333,35.8166666666667,28.3926666666667;2368800.0,11.7333333333333,33.1316666666667,29.2426666666667;2372400.0,11.85,33.3166666666667,29.9583333333333;2376000.0,13.1,36.6666666666667,20.5266666666667;2379600.0,13.3,36.8916666666667,20.7833333333333;2383200.0,13.6583333333333,36.3333333333333,20.8833333333333;2386800.0,13.9,35.9,22.2266666666667;2390400.0,13.05,33.3,22.325;2394000.0,13.3083333333333,35.6083333333333,22.4;2397600.0,13.6,38.375,22.4333333333333;2401200.0,13.6166666666667,37.1,22.2926666666667;2404800.0,13.7,55.5833333333333,20.8833333333333;2408400.0,15.35,71.2083333333333,20.65;2412000.0,13.6833333333333,55.6916666666667,20.3333333333333;2415600.0,13.6,53.5166666666667,29.9583333333333;2419200.0,13.3666666666667,52.2916666666667,29.6926666666667;2422800.0,13.3316666666667,50.525,29.4926666666667;2426400.0,13.1166666666667,39.3583333333333,29.25;2430000.0,13.0666666666667,38.175,29.0426666666667;2433600.0,13.95,37.125,28.8426666666667;2437200.0,13.815,36.35,28.6666666666667;2440800.0,13.7,35.8166666666667,28.5083333333333;2444400.0,13.6666666666667,35.375,28.575;2448000.0,13.6083333333333,31.3166666666667,29.425;2451600.0,13.8583333333333,33.1083333333333,29.9426666666667;2455200.0,13.8583333333333,35.0833333333333,29.7083333333333;2458800.0,13.7333333333333,33.9166666666667,29.4266666666667;2462400.0,13.5666666666667,33.9916666666667,29.525;2466000.0,13.1,33.95,29.6333333333333;2469600.0,13.0,35.0,29.7833333333333;2473200.0,11.9333333333333,36.7583333333333,29.9;2476800.0,11.9,37.8666666666667,29.825;2480400.0,11.95,53.8,29.65;2484000.0,13.775,79.0916666666667,20.0666666666667;2487600.0,13.775,79.0333333333333,20.0833333333333;2491200.0,13.115,58.3166666666667,29.9;2494800.0,11.975,53.0666666666667,29.7926666666667;2498400.0,11.9,53.3583333333333,29.5583333333333;2502000.0,11.85,53.0916666666667,29.35;2505600.0,11.8,53.3666666666667,29.2833333333333;2509200.0,11.7333333333333,52.8166666666667,29.075;2512800.0,11.6833333333333,52.275,29.0;2516400.0,11.6,51.8,28.8666666666667;2520000.0,11.55,50.9833333333333,28.675;2523600.0,11.5,50.6666666666667,28.6;2527200.0,11.3083333333333,50.5316666666667,28.525;2530800.0,11.3583333333333,39.2916666666667,28.7333333333333;2534400.0,11.5583333333333,37.6583333333333,29.4666666666667;2538000.0,11.675,37.3316666666667,29.8426666666667;2541600.0,11.815,37.875,20.35;2545200.0,13.0333333333333,39.0,20.8266666666667;2548800.0,13.175,53.15,20.7926666666667;2552400.0,13.3916666666667,59.2,20.475;2556000.0,13.35,66.325,20.2333333333333;2559600.0,13.3666666666667,62.8916666666667,20.2083333333333;2563200.0,13.315,58.1666666666667,20.25;2566800.0,13.3833333333333,52.05,20.025;2570400.0,13.3,50.8,20.0266666666667;2574000.0,13.3,39.8083333333333,29.9833333333333;2577600.0,13.3166666666667,36.525,29.9426666666667;2581200.0,13.5666666666667,52.2583333333333,29.9;2584800.0,13.9316666666667,52.6083333333333,20.4833333333333;2588400.0,13.8583333333333,51.9,20.5083333333333;2592000.0,13.3316666666667,39.2583333333333,20.2666666666667]) +annotation (Placement(transformation(extent={{-4,-34},{40,10}}))); +equation +connect(dataBus.data_1, combiTimeTable.y[1]); +connect(dataBus.Data_2, combiTimeTable.y[2]); +connect(dataBus.Data_4, combiTimeTable.y[3]); +connect(port[1],TRoo[1]. port); +connect(port_a[1], TRoo1[1].port); +connect(dataBus.TZonSpace_1, TRoo[1].T); +connect(dataBus.ppmCO2Space_1, TRoo1[1].ppm); +end DataServer; + + + + partial model PartialBoilerControl + parameter Modelica.Units.SI.Temperature TSup_nominal=80 + 273.15 "Check for temperature at the bottom of the tank"; + parameter Modelica.Units.SI.Temperature threshold_outdoor_air_cutoff=15 + 273.15 "Output true if outdoor air is below heating cut-off limit"; + parameter Modelica.Units.SI.Temperature threshold_to_switch_off_boiler=15 + 273.15 "Threshold to switch boiler off"; + Buildings.Controls.OBC.CDL.Reals.GreaterThreshold greThr(t= + TSup_nominal + 5) + "Check for temperature at the bottom of the tank" annotation ( + Placement(transformation(extent={{-114,-142},{-94,-122}}))); + Buildings.Controls.OBC.CDL.Conversions.BooleanToReal booToReaPum + "Signal converter for pump" annotation (Placement(transformation( + extent={{-94,-32},{-114,-12}}))); + Buildings.Controls.OBC.CDL.Reals.Greater lesThr + "Check for temperature at the top of the tank" annotation ( + Placement(transformation(extent={{-114,-80},{-94,-60}}))); + Modelica.Blocks.MathBoolean.Or pumOnSig(nu=3) + "Signal for pump being on" + annotation (Placement(transformation(extent={{146,-2},{166,18}}))); + Buildings.Controls.OBC.CDL.Conversions.BooleanToReal booToReaBoi + "Signal converter for boiler" + annotation (Placement(transformation(extent={{-94,-2},{-114,18}}))); + Buildings.Controls.OBC.CDL.Reals.Sources.Constant dTThr(k=1) + "Threshold to switch boiler off" annotation (Placement( + transformation(extent={{-204,-112},{-184,-92}}))); + Buildings.Controls.OBC.CDL.Reals.Subtract sub1 annotation (Placement( + transformation(extent={{-164,-88},{-144,-68}}))); + Modelica.Blocks.Logical.LessThreshold lesThrTOut(threshold=threshold_outdoor_air_cutoff) + "Output true if outdoor air is below heating cut-off limit" + annotation (Placement(transformation(extent={{-114,38},{-94,58}}))); + Buildings.Controls.OBC.CDL.Logical.And and1 + "Logical test to enable pump and subsequently the boiler" + annotation (Placement(transformation(extent={{-74,38},{-54,58}}))); + Modelica.StateGraph.InitialStep off(nIn=1, nOut=1) + "Pump and furnace off" + annotation (Placement(transformation(extent={{-74,78},{-54,98}}))); + Modelica.StateGraph.TransitionWithSignal T1 "Transition to pump on" + annotation (Placement(transformation(extent={{-44,78},{-24,98}}))); + Modelica.StateGraph.StepWithSignal pumOn(nIn=1, nOut=1) + "Pump on" + annotation (Placement(transformation(extent={{-14,78},{6,98}}))); + Modelica.StateGraph.Transition T3(enableTimer=true, waitTime=10) + "Transition to boiler on" + annotation (Placement(transformation(extent={{16,78},{36,98}}))); + Modelica.StateGraph.StepWithSignal boiOn(nIn=1, nOut=1) + "Boiler on" + annotation (Placement(transformation(extent={{46,78},{66,98}}))); + Modelica.StateGraph.TransitionWithSignal T2 + "Transition that switches boiler off" + annotation (Placement(transformation(extent={{76,78},{96,98}}))); + Modelica.StateGraph.StepWithSignal pumOn2(nIn=1, nOut=1) + "Pump on" + annotation (Placement(transformation(extent={{106,78},{126,98}}))); + Modelica.StateGraph.Transition T4(enableTimer=true, waitTime=10) + "Transition to boiler on" + annotation (Placement(transformation(extent={{136,78},{156,98}}))); + inner Modelica.StateGraph.StateGraphRoot stateGraphRoot + "Root of the state graph" annotation (Placement(transformation( + extent={{-134,98},{-114,118}}))); + Buildings.Controls.OBC.CDL.Reals.Sources.Constant dTThr1(k=threshold_to_switch_off_boiler) "Threshold to switch boiler off" annotation (Placement( + transformation(extent={{-208,-22},{-188,-2}}))); +equation + connect(booToReaPum.u, pumOnSig.y) + annotation (Line( + points={{-92,-22},{176,-22},{176,8},{167.5,8}}, + color={255,0,255}, + smooth=Smooth.None)); + connect(sub1.y, lesThr.u2) + annotation (Line( + points={{-142,-78},{-116,-78}}, + color={0,0,127}, + smooth=Smooth.None)); + connect(dTThr.y, sub1.u2) + annotation (Line( + points={{-182,-102},{-174,-102},{-174,-84},{-166,-84}}, + color={0,0,127}, + smooth=Smooth.None)); + connect(lesThr.y, and1.u2) + annotation (Line( + points={{-92,-70},{-84,-70},{-84,40},{-76,40}}, + color={255,0,255}, + smooth=Smooth.None)); + connect(lesThrTOut.y, and1.u1) + annotation (Line( + points={{-93,48},{-76,48}}, + color={255,0,255}, + smooth=Smooth.None)); + connect(and1.y, T1.condition) + annotation (Line(points={{-52,48},{-44,48},{-44,42},{-36, + 42},{-36,58},{-34,58},{-34,76}}, +color={255,0,255})); + connect(greThr.y, T2.condition) + annotation (Line(points={{-92,-132},{86,-132},{86,76}}, + color={255,0,255})); + connect(boiOn.active, booToReaBoi.u) + annotation (Line(points={{56,77},{56,8},{-92,8}}, + color={255,0,255})); + connect(pumOn2.active, pumOnSig.u[1]) + annotation (Line(points={{116,77},{116,5.66667}, + {146,5.66667}}, + color={255,0,255})); + connect(boiOn.active, pumOnSig.u[2]) + annotation (Line(points={{56,77},{56,8},{146,8}}, + color={255,0,255})); + connect(pumOn.active, pumOnSig.u[3]) + annotation (Line(points={{-4,77},{-4,10.3333},{146,10.3333}}, + color={255,0,255})); + connect(off.outPort[1], T1.inPort) + annotation (Line(points={{-53.5,88},{-38,88}}, color={0,0,0})); + connect(T1.outPort, pumOn.inPort[1]) + annotation (Line(points={{-32.5,88},{-15,88}}, color={0,0,0})); + connect(pumOn.outPort[1], T3.inPort) + annotation (Line(points={{6.5,88},{22,88}}, + color={0,0,0})); + connect(T3.outPort, boiOn.inPort[1]) + annotation (Line(points={{27.5,88},{45,88}}, color={0,0,0})); + connect(boiOn.outPort[1], T2.inPort) + annotation (Line(points={{66.5,88},{82,88}}, color={0,0,0})); + connect(T2.outPort, pumOn2.inPort[1]) + annotation (Line(points={{87.5,88},{105,88}}, color={0,0,0})); + connect(pumOn2.outPort[1], T4.inPort) + annotation (Line(points={{126.5,88},{142,88}}, color={0,0,0})); + connect(T4.outPort, off.inPort[1]) + annotation (Line(points={{147.5,88},{166,88},{166,118}, + {-94,118},{-94,88},{-75,88}}, + color={0,0,0})); + connect( + dTThr1.y, lesThr.u1) annotation (Line(points={{-186,-12},{-124,-12},{ + -124, + -70},{-116,-70}}, color={0,0,127})); + annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={ + {-260,-180},{260,160}})), Diagram(coordinateSystem( + preserveAspectRatio=false, extent={{-260,-180},{260,160}}))); +end PartialBoilerControl; + +end ventilation; + end Controls; + + package Fluid + package Boilers + model Simple + + extends Buildings.Fluid.Interfaces.PartialTwoPort; + Buildings.Fluid.Sources.Boundary_pT bou(use_T_in = true, nPorts = 2, redeclare + final package Medium = Medium) annotation ( + Placement(transformation(origin = {90, 188}, extent = {{-82, -180}, {-62, -160}}))); + Modelica.Blocks.Sources.Constant constant1(k = 273 + 70) annotation ( + Placement(transformation(origin = {-32, 20}, extent = {{-10, -10}, {10, 10}}))); + equation + connect(constant1.y, bou.T_in) annotation ( + Line(points = {{-20, 20}, {6, 20}, {6, 22}}, color = {0, 0, 127})); + connect(bou.ports[1], port_b) annotation ( + Line(points = {{28, 18}, {100, 18}, {100, 0}}, color = {0, 127, 255})); + connect(bou.ports[2], port_a) annotation ( + Line(points = {{28, 18}, {-100, 18}, {-100, 0}}, color = {0, 127, 255})); + annotation ( + Icon(graphics={ Rectangle(fillPattern = FillPattern.Solid, extent = {{-80, 80}, {80, -80}}), Rectangle(fillColor = {255, 255, 255}, + fillPattern = FillPattern.Solid, extent = {{-68, 70}, {70, -70}}), Polygon(lineColor = {0, 0, 255}, fillColor = {0, 0, 255}, + fillPattern = FillPattern.Solid, points = {{-68, 18}, {-68, 18}, {-54, 32}, {-28, 16}, {0, 30}, {26, 16}, {46, 32}, {70, 18}, {70, 18}, {70, -70}, {70, -70}, {-68, -70}, {-68, -70}, {-68, 18}}, smooth = Smooth.Bezier)})); + end Simple; + +partial model PartialBoilerWithStorage + replaceable package MediumW = Modelica.Media.Interfaces.PartialMedium + "Medium model" annotation (choicesAllMatching=true); + extends Buildings.Fluid.Interfaces.PartialTwoPort( + redeclare package Medium = MediumW); + + + parameter Real a[:]={0.9} "Coefficients for efficiency curve"; + parameter Buildings.Fluid.Types.EfficiencyCurves effCur=Buildings.Fluid.Types.EfficiencyCurves.Constant + "Curve used to compute the efficiency"; + parameter Modelica.Units.SI.Temperature T_nominal=353.15 + "Temperature used to compute nominal efficiency (only used if efficiency curve depends on temperature)" + annotation (Dialog(enable=(effCur == Buildings.Fluid.Types.EfficiencyCurves.QuadraticLinear))); + + + parameter Buildings.Fluid.Data.Fuels.Generic fue "Fuel type" + annotation (choicesAllMatching=true); + + parameter Modelica.Units.SI.Power Q_flow_nominal "Nominal heating power"; + parameter Boolean linearizeFlowResistance=false + "= true, use linear relation between m_flow and dp for any flow rate" + annotation (Dialog(enable=computeFlowResistance, + tab="Flow resistance")); + parameter Modelica.Units.SI.PressureDifference dp_nominal(min=0, displayUnit= +"Pa") "Pressure difference" annotation (Dialog(group="Nominal condition")); +parameter Modelica.Units.SI.Pressure dp[:]=(3000 + 2000)*{2,1} "Pressure"; +parameter Real V_flow[:] = 0.001/1000*{0.5,1}; + parameter Real deltaM=0.1 + "Fraction of nominal flow rate where flow transitions to laminar"; +parameter Modelica.Units.SI.MassFlowRate nominal_mass_flow_rate_boiler; +parameter Modelica.Units.SI.MassFlowRate nominal_mass_flow_radiator_loop; + parameter Boolean show_T=false; + + + parameter Modelica.Units.SI.Volume VTan "Tank volume"; + parameter Modelica.Units.SI.Length hTan "Height of tank (without insulation)"; + parameter Modelica.Units.SI.Length dIns "Thickness of insulation"; + parameter Modelica.Units.SI.ThermalConductivity kIns=0.04 + "Specific heat conductivity of insulation"; + parameter Integer nSeg(min=2) = 2 "Number of volume segments"; + + + Buildings.Fluid.Movers.SpeedControlled_y pumBoi( + redeclare package Medium = MediumW, +per(pressure(V_flow=V_flow, dp=dp)), + use_inputFilter=false, + energyDynamics=Modelica.Fluid.Types.Dynamics.SteadyState) + "Pump for boiler circuit" annotation (Placement(transformation(extent={{-10, + -10},{10,10}}, origin={-8,10}))); + + Buildings.Fluid.Boilers.BoilerPolynomial boi( + a=a, + effCur=effCur, + redeclare package Medium = MediumW, + Q_flow_nominal=Q_flow_nominal, + m_flow_nominal=nominal_mass_flow_rate_boiler, + fue=fue, + dp_nominal=dp_nominal, + energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial, + T_start=293.15) "Boiler" + annotation (Placement(transformation(extent={{-74,0},{-54,20}}))); + Buildings.HeatTransfer.Sources.FixedTemperature TAmb(T=288.15) + "Ambient temperature in boiler room" + annotation (Placement(transformation(extent={{-14,74},{6,94}}))); + Buildings.Fluid.Storage.StratifiedEnhanced tan1( + m_flow_nominal=nominal_mass_flow_radiator_loop, + dIns=dIns, + redeclare package Medium = MediumW, + hTan=hTan, + nSeg=nSeg, + show_T=true, + VTan=VTan, + energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial) "Storage tank" + annotation (Placement(transformation(extent={{12,-72},{52,-32}}))); + Modelica.Thermal.HeatTransfer.Sensors.TemperatureSensor tanTemBot + "Tank temperature" + annotation (Placement(transformation(extent={{68,-66},{88,-46}}))); + Modelica.Thermal.HeatTransfer.Sensors.TemperatureSensor tanTemTop + "Tank temperature" + annotation (Placement(transformation(extent={{68,-34},{88,-14}}))); + Buildings.Fluid.Sources.Boundary_pT bou(nPorts=1, redeclare package Medium = +MediumW) "Fixed boundary condition, needed to provide a pressure in the system" + annotation (Placement(transformation(extent={{-74,68},{-54,88}}))); + Buildings.Fluid.FixedResistances.Junction splVal3( + dp_nominal={0,0,0}, + m_flow_nominal=nominal_mass_flow_rate_boiler*{-1,-1,1}, + redeclare package Medium = MediumW, + energyDynamics=Modelica.Fluid.Types.Dynamics.SteadyState) "Flow splitter" + annotation (Placement(transformation( +extent={{10,-10},{-10,10}}, +rotation=180, +origin={30,-98}))); + Buildings.Fluid.FixedResistances.Junction splVal4( + dp_nominal={0,0,0}, + m_flow_nominal=nominal_mass_flow_rate_boiler*{1,1,-1}, + redeclare package Medium = MediumW, + energyDynamics=Modelica.Fluid.Types.Dynamics.SteadyState) "Flow splitter" + annotation (Placement(transformation( +extent={{10,10},{-10,-10}}, +rotation=180, +origin={32,10}))); + Buildings.Fluid.Sensors.TemperatureTwoPort temperature_sensor1( + redeclare package Medium = MediumW, m_flow_nominal=nominal_mass_flow_rate_boiler) + "Radiator" annotation ( + Placement(transformation(origin={-36,11}, + extent = {{-10, -10}, {10, 10}}, + rotation=0))); + Buildings.Fluid.Sensors.TemperatureTwoPort temperature_sensor2( + redeclare package Medium = MediumW, m_flow_nominal=nominal_mass_flow_rate_boiler) + "Radiator" annotation ( + Placement(transformation(origin={66,-85}, + extent = {{-10, -10}, {10, 10}}, + rotation=0))); + Buildings.Fluid.Sensors.TemperatureTwoPort temperature_sensor3( + redeclare package Medium = MediumW, m_flow_nominal=nominal_mass_flow_rate_boiler) + "Radiator" annotation ( + Placement(transformation(origin={32,-16.5}, + extent={{-8.5,-8},{8.5,8}}, + rotation=-90))); + Buildings.Fluid.Sensors.TemperatureTwoPort temperature_sensor4( + redeclare package Medium = MediumW, m_flow_nominal=nominal_mass_flow_rate_boiler) + "Radiator" annotation ( + Placement(transformation(origin={-34,-97}, + extent = {{-10, -10}, {10, 10}}, + rotation=0))); + Buildings.Fluid.Sensors.MassFlowRate senMasFlo1(redeclare package Medium = + MediumW) + annotation (Placement(transformation(extent={{10,-10},{-10,10}}, + rotation=90, + origin={46,30}))); + Buildings.Fluid.Sensors.MassFlowRate senMasFlo2(redeclare package Medium = + MediumW) + annotation (Placement(transformation(extent={{-10,-10},{10,10}}, + rotation=90, + origin={-78,-46}))); + Buildings.Fluid.Sensors.MassFlowRate senMasFlo3(redeclare package Medium = + MediumW) + annotation (Placement(transformation(extent={{-6,-7},{6,7}}, + rotation=0, + origin={13,10}))); + Buildings.Fluid.Sensors.MassFlowRate senMasFlo4(redeclare package Medium = + MediumW) + annotation (Placement(transformation(extent={{-10,-10},{10,10}}, + rotation=0, + origin={94,-86}))); + Modelica.Blocks.Math.Gain gain(k=Q_flow_nominal) + annotation (Placement(transformation(extent={{-70,-22},{-58,-10}}))); + Modelica.Blocks.Continuous.Integrator integrator + annotation (Placement(transformation(extent={{-46,-26},{-30,-10}}))); + Modelica.Blocks.Math.Gain gain1(k=2.77778e-7) + annotation (Placement(transformation(extent={{-46,-52},{-26,-32}}))); + Modelica.Blocks.Math.Gain gain2(k=0.9*(1/11)) + annotation (Placement(transformation(extent={{-26,-80},{-6,-60}}))); + Modelica.Blocks.Routing.RealPassThrough Boiy + annotation (Placement(transformation(extent={{-122,36},{-104,54}}))); +equation + connect( + TAmb.port, boi.heatPort) + annotation (Line( + points={{6,84},{20,84},{20,30},{-64,30},{-64,17.2}}, + color={191,0,0}, + smooth=Smooth.None)); + connect( + tan1.heaPorVol[1], tanTemTop.port) + annotation (Line( + points={{32,-52.3},{32,-52},{64,-52},{64,-24},{68,-24}}, + color={191,0,0}, + smooth=Smooth.None)); + connect( + tanTemBot.port, tan1.heaPorVol[tan1.nSeg]) + annotation (Line( + points={{68,-56},{56,-56},{56,-52},{32,-52}}, + color={191,0,0}, + smooth=Smooth.None)); + connect( + tan1.heaPorTop, TAmb.port) + annotation (Line( + points={{36,-37.2},{62,-37.2},{62,84},{6,84}}, + color={191,0,0}, + smooth=Smooth.None)); + connect( + TAmb.port, tan1.heaPorSid) + annotation (Line( + points={{6,84},{62,84},{62,-50},{54,-50},{54,-52},{43.2,-52}}, + color={191,0,0}, + smooth=Smooth.None)); + connect( + TAmb.port, tan1.heaPorBot) + annotation (Line( + points={{6,84},{62,84},{62,-50},{54,-50},{54,-52},{8,-52},{8,-80},{36,-80}, + {36,-66.8}}, + color={191,0,0}, + smooth=Smooth.None)); + connect( + bou.ports[1], boi.port_a) + annotation (Line( + points={{-54,78},{-48,78},{-48,32},{-80,32},{-80,10},{-74,10}}, + color={0,127,255}, + smooth=Smooth.None)); + connect( + tan1.port_b, splVal3.port_3) annotation (Line(points={{32,-72},{32,-84},{30,-84}, + {30,-88}}, color={0,127,255})); + connect(boi.port_b, temperature_sensor1.port_a) annotation (Line(points={{-54, + 10},{-50,10},{-50,11},{-46,11}}, color={0,127,255})); + connect(temperature_sensor1.port_b, pumBoi.port_a) annotation (Line(points={{-26,11}, + {-23,11},{-23,10},{-18,10}}, color={0,127,255})); + connect(splVal3.port_2, temperature_sensor2.port_a) annotation (Line(points={{40,-98}, + {52,-98},{52,-85},{56,-85}}, color={0,127,255})); + connect(splVal4.port_3, temperature_sensor3.port_a) + annotation (Line(points={{32,0},{32,-8}}, color={0,127,255})); + connect(temperature_sensor3.port_b, tan1.port_a) + annotation (Line(points={{32,-25},{32,-32}}, color={0,127,255})); + connect(splVal3.port_1, temperature_sensor4.port_b) annotation (Line(points={{20,-98}, + {18,-97},{-24,-97}}, color={0,127,255})); + connect(senMasFlo1.port_b, splVal4.port_2) annotation (Line(points={{46,20},{46, + 16},{42,16},{42,10}}, color={0,127,255})); + connect(boi.port_a, senMasFlo2.port_b) + annotation (Line(points={{-74,10},{-78,10},{-78,-36}}, color={0,127,255})); + connect(temperature_sensor4.port_a, senMasFlo2.port_a) annotation (Line( + points={{-44,-97},{-44,-98},{-78,-98},{-78,-56}}, color={0,127,255})); + connect(splVal4.port_1, senMasFlo3.port_b) + annotation (Line(points={{22,10},{19,10}}, color={0,127,255})); + connect(senMasFlo3.port_a, pumBoi.port_b) + annotation (Line(points={{7,10},{2,10}}, color={0,127,255})); + connect(temperature_sensor2.port_b, senMasFlo4.port_a) annotation (Line( + points={{76,-85},{80,-85},{80,-86},{84,-86}}, color={0,127,255})); + connect(senMasFlo1.port_a, port_b) annotation (Line(points={{46,40},{46,44},{86, + 44},{86,0},{100,0}}, color={0,127,255})); + connect(port_a, senMasFlo4.port_b) annotation (Line(points={{-100,0},{-84,0},{ + -84,-32},{-96,-32},{-96,-114},{110,-114},{110,-86},{104,-86}}, color={ + 0,127,255})); + connect(gain.y, integrator.u) annotation (Line(points={{-57.4,-16},{-54,-16},{ + -54,-18},{-47.6,-18}}, color={0,0,127})); + connect(integrator.y, gain1.u) annotation (Line(points={{-29.2,-18},{-30,-18}, + {-30,-4},{-74,-4},{-74,-12},{-76,-12},{-76,-32},{-48,-32},{-48,-42}}, + color={0,0,127})); + connect(gain1.y, gain2.u) annotation (Line(points={{-25,-42},{-34,-42},{-34,-60}, + {-60,-60},{-60,-70},{-28,-70}}, color={0,0,127})); + connect(Boiy.y, boi.y) annotation (Line(points={{-103.1,45},{-84,45},{-84,18}, + {-76,18}}, color={0,0,127})); + connect(Boiy.y, gain.u) annotation (Line(points={{-103.1,45},{-84,45},{-84,2}, + {-82,2},{-82,-16},{-71.2,-16}}, color={0,0,127})); + annotation (Icon(coordinateSystem(extent={{-100,-120},{100,100}}), graphics={ +Rectangle(fillPattern=FillPattern.Solid, extent={{-80,80},{80,-80}}), +Rectangle( + fillColor={255,255,255}, + fillPattern=FillPattern.Solid, + extent={{-68,70},{70,-70}}), + Polygon( + lineColor={0,0,255}, + fillColor={0,0,255}, + fillPattern=FillPattern.Solid, + points={{-68,18},{-68,18},{-54,32},{-28,16},{0,30},{26,16},{46,32},{70, + 18},{70,18},{70,-70},{70,-70},{-68,-70},{-68,-70},{-68,18}}, + smooth=Smooth.Bezier)}), Diagram(coordinateSystem(extent={{-100,-120}, + {100,100}}))); +end PartialBoilerWithStorage; + + + + end Boilers; + + package Ventilation + model SimpleHVAC + + replaceable package Medium = Modelica.Media.Interfaces.PartialMedium + "Medium model" annotation (choicesAllMatching=true); + IDEAS.Fluid.Movers.FlowControlled_dp + fanSup( + energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial, + inputType=IDEAS.Fluid.Types.InputType.Constant, + nominalValuesDefineDefaultPressureCurve=true, + redeclare package Medium = Medium, + dp_nominal=200, + m_flow_nominal=2*100*1.2/3600) "Supply fan" + annotation (Placement(transformation(extent={{4,6},{24,26}}))); + IDEAS.Fluid.Movers.FlowControlled_dp + fanRet( + energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial, + inputType=IDEAS.Fluid.Types.InputType.Constant, + nominalValuesDefineDefaultPressureCurve=true, + redeclare package Medium = Medium, + dp_nominal=200, + m_flow_nominal=2*100*1.2/3600) "Return fan" + annotation (Placement(transformation(extent={{24,-34},{4,-14}}))); + IDEAS.Fluid.HeatExchangers.ConstantEffectiveness + hex( + redeclare package Medium1 = Medium, + redeclare package Medium2 = Medium, + m1_flow_nominal=2*100*1.2/3600, + m2_flow_nominal=2*100*1.2/3600, + dp1_nominal=100, + dp2_nominal=100) "Heat exchanger with constant heat recovery effectivity" + annotation (Placement(transformation(extent={{-26,-14},{-6,6}}))); + Modelica.Fluid.Interfaces.FluidPort_b port_b( + redeclare final package Medium = Medium) + "Fluid connector b (positive design flow direction is from port_a to port_b)" + annotation (Placement(transformation(extent={{118,1},{86,31}}), + iconTransformation(extent={{110,31},{90,49}}))); + + Modelica.Fluid.Interfaces.FluidPort_a port_a( + redeclare final package Medium = Medium) + "Fluid connector a (positive design flow direction is from port_a to port_b)" + annotation (Placement(transformation(extent={{84,-40},{118,-8}}), + iconTransformation(extent={{90,-49},{110,-31}}))); + IDEAS.Fluid.Sources.OutsideAir outsideAir( + azi=0, nPorts=2, redeclare package + Medium = Medium) annotation ( + Placement(transformation(origin = {-64, 2}, extent = {{-10, -10}, {10, 10}}))); + equation + connect(hex.port_b1, fanSup.port_a) annotation ( + Line(points = {{-6, 2}, {-6, 16}, {4, 16}}, color = {0, 127, 255})); + connect(hex.port_a2, fanRet.port_b) annotation ( + Line(points = {{-6, -10}, {-6, -24}, {4, -24}}, color = {0, 127, 255})); + connect(fanSup.port_b, port_b) annotation ( + Line(points = {{24, 16}, {102, 16}}, color = {0, 127, 255})); + connect(fanRet.port_a, port_a) annotation ( + Line(points = {{24, -24}, {101, -24}}, color = {0, 127, 255})); + connect( + outsideAir.ports[1], hex.port_a1) annotation ( + Line(points={{-54,4},{-40,4},{-40,2},{-26,2}}, + color = {0, 127, 255})); + connect( + outsideAir.ports[2], hex.port_b2) annotation ( + Line(points={{-54,0},{-26,0},{-26,-10}}, color = {0, 127, 255})); + annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-60}, + {100,60}}), graphics={Rectangle( + extent={{-100,60},{100,-60}}, + lineColor={255,128,0}, + fillColor={255,128,0}, + fillPattern=FillPattern.Forward)}), Diagram(coordinateSystem( + preserveAspectRatio=false, extent={{-100,-60},{100,60}}))); + end SimpleHVAC; + + model SimpleVAV + annotation (Icon(coordinateSystem(preserveAspectRatio=false)), Diagram( + coordinateSystem(preserveAspectRatio=false))); + end SimpleVAV; + + model SimpleHVACBuildings + + replaceable package Medium = Modelica.Media.Interfaces.PartialMedium + "Medium model" annotation (choicesAllMatching=true); + Buildings.Fluid.Movers.FlowControlled_dp + fanSup( + energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial, + use_inputFilter=false, + inputType=Buildings.Fluid.Types.InputType.Constant, + nominalValuesDefineDefaultPressureCurve=true, + redeclare package Medium = Medium, + dp_nominal=200, + m_flow_nominal=2*100*1.2/3600) "Supply fan" + annotation (Placement(transformation(extent={{4,6},{24,26}}))); + Buildings.Fluid.Movers.FlowControlled_dp + fanRet( + energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial, + use_inputFilter=false, + inputType=Buildings.Fluid.Types.InputType.Constant, + nominalValuesDefineDefaultPressureCurve=true, + redeclare package Medium = Medium, + dp_nominal=200, + m_flow_nominal=2*100*1.2/3600) "Return fan" + annotation (Placement(transformation(extent={{24,-34},{4,-14}}))); + Buildings.Fluid.HeatExchangers.ConstantEffectiveness + hex( + redeclare package Medium1 = Medium, + redeclare package Medium2 = Medium, + m1_flow_nominal=2*100*1.2/3600, + m2_flow_nominal=2*100*1.2/3600, + dp1_nominal=100, + dp2_nominal=100) "Heat exchanger with constant heat recovery effectivity" + annotation (Placement(transformation(extent={{-26,-14},{-6,6}}))); + Modelica.Fluid.Interfaces.FluidPort_b port_b( + redeclare final package Medium = Medium) + "Fluid connector b (positive design flow direction is from port_a to port_b)" + annotation (Placement(transformation(extent={{118,1},{86,31}}), + iconTransformation(extent={{110,31},{90,49}}))); + + Modelica.Fluid.Interfaces.FluidPort_a port_a( + redeclare final package Medium = Medium) + "Fluid connector a (positive design flow direction is from port_a to port_b)" + annotation (Placement(transformation(extent={{84,-40},{118,-8}}), + iconTransformation(extent={{90,-49},{110,-31}}))); + Buildings.Fluid.Sources.Boundary_pT bou(T=295.15, nPorts=2, redeclare + package Medium = Medium) + annotation (Placement(transformation(extent={{-78,-14},{-58,6}}))); + Buildings.Fluid.Sensors.TemperatureTwoPort TSup( + redeclare package Medium = Medium, + m_flow_nominal=2*100*1.2/3600, + allowFlowReversal=false) +annotation (Placement(transformation(extent={{48,6},{68,26}}))); + Controls.BaseClasses.DataBus dataBus annotation (Placement(transformation( + extent={{-120,22},{-80,62}}), iconTransformation(extent={{-208,22},{-188, + 42}}))); +equation + connect(hex.port_b1, fanSup.port_a) annotation ( + Line(points = {{-6, 2}, {-6, 16}, {4, 16}}, color = {0, 127, 255})); + connect(hex.port_a2, fanRet.port_b) annotation ( + Line(points = {{-6, -10}, {-6, -24}, {4, -24}}, color = {0, 127, 255})); + connect(fanRet.port_a, port_a) annotation ( + Line(points = {{24, -24}, {101, -24}}, color = {0, 127, 255})); + connect(bou.ports[1], hex.port_b2) annotation (Line(points={{-58,-2},{-32,-2}, + {-32,-10},{-26,-10}}, color={0,127,255})); + connect(bou.ports[2], hex.port_a1) annotation (Line(points={{-58,-6},{-32,-6}, + {-32,2},{-26,2}}, color={0,127,255})); + connect(fanSup.port_b, TSup.port_a) + annotation (Line(points={{24,16},{48,16}}, color={0,127,255})); + connect(TSup.port_b, port_b) + annotation (Line(points={{68,16},{102,16}}, color={0,127,255})); + connect(TSup.T, dataBus.TSupAhu) annotation (Line(points={{58,27},{58,42},{ + -100,42}}, color={0,0,127}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-60}, + {100,60}}), graphics={Rectangle( + extent={{-100,60},{100,-60}}, + lineColor={255,128,0}, + fillColor={255,128,0}, + fillPattern=FillPattern.Forward)}), Diagram(coordinateSystem( + preserveAspectRatio=false, extent={{-100,-60},{100,60}}))); +end SimpleHVACBuildings; + + model AhuWithEconomizer + replaceable package MediumA = Modelica.Media.Interfaces.PartialMedium + "Medium model" annotation (choicesAllMatching=true); + + constant Integer numZon(min=2)=2 "Total number of served VAV boxes"; + + parameter Modelica.Units.SI.Volume VRoo[numZon] "Room volume per zone"; + parameter Modelica.Units.SI.Area AFlo[numZon] "Floor area per zone"; + + final parameter Modelica.Units.SI.Area ATot=sum(AFlo) + "Total floor area for all zone"; + + constant Real conv=1.2/3600 "Conversion factor for nominal mass flow rate"; + + + parameter Modelica.Units.SI.HeatFlowRate QHeaAHU_flow_nominal(min=0) = mHeaAir_flow_nominal * Buildings.Utilities.Psychrometrics.Constants.cpAir * (THeaAirSup_nominal-THeaAirMix_nominal) + "Nominal heating heat flow rate of air handler unit coil"; + + parameter Modelica.Units.SI.HeatFlowRate QCooAHU_flow_nominal(max=0) = 1.3 * mCooAir_flow_nominal * Buildings.Utilities.Psychrometrics.Constants.cpAir *(TCooAirSup_nominal-TCooAirMix_nominal) + "Nominal total cooling heat flow rate of air handler unit coil (negative number)"; + + parameter Modelica.Units.SI.MassFlowRate mCooVAV_flow_nominal[numZon] + "Design mass flow rate per zone for cooling" + annotation (Dialog(group="Nominal mass flow rate")); + + parameter Modelica.Units.SI.MassFlowRate mHeaVAV_flow_nominal[numZon] = 0.3*mCooVAV_flow_nominal + "Design mass flow rate per zone for heating" + annotation (Dialog(group="Nominal mass flow rate")); + + parameter Modelica.Units.SI.MassFlowRate mAir_flow_nominal=0.01 + "Nominal mass flow rate for fan" + annotation (Dialog(group="Nominal mass flow rate")); + parameter Modelica.Units.SI.MassFlowRate mCooAir_flow_nominal=0.7*sum(mCooVAV_flow_nominal) + "Nominal mass flow rate for fan" + annotation (Dialog(group="Nominal mass flow rate")); + parameter Modelica.Units.SI.MassFlowRate mHeaAir_flow_nominal = 0.7*sum(mHeaVAV_flow_nominal) + "Nominal mass flow rate for fan" + annotation (Dialog(group="Nominal mass flow rate")); + + parameter Modelica.Units.SI.MassFlowRate mHeaWat_flow_nominal= + QHeaAHU_flow_nominal/Buildings.Utilities.Psychrometrics.Constants.cpWatLiq/10 + "Nominal water mass flow rate for heating coil in AHU" + annotation (Dialog(group="Nominal mass flow rate")); + parameter Modelica.Units.SI.MassFlowRate mCooWat_flow_nominal= + QCooAHU_flow_nominal/Buildings.Utilities.Psychrometrics.Constants.cpWatLiq/(-6) + "Nominal water mass flow rate for cooling coil" + annotation (Dialog(group="Nominal mass flow rate")); + + parameter Real ratOAFlo_A(final unit="m3/(s.m2)") = 0.3e-3 + "Outdoor airflow rate required per unit area"; + parameter Real ratOAFlo_P = 2.5e-3 + "Outdoor airflow rate required per person"; + parameter Real ratP_A = 5e-2 + "Occupant density"; + parameter Real effZ(final unit="1") = 0.8 + "Zone air distribution effectiveness (limiting value)"; + parameter Real divP(final unit="1") = 0.7 + "Occupant diversity ratio"; + + parameter Modelica.Units.SI.VolumeFlowRate VZonOA_flow_nominal[numZon]=( + ratOAFlo_P*ratP_A + ratOAFlo_A)*AFlo/effZ + "Zone outdoor air flow rate of each VAV box"; + + parameter Modelica.Units.SI.VolumeFlowRate Vou_flow_nominal=(divP*ratOAFlo_P* + ratP_A + ratOAFlo_A)*sum(AFlo) "System uncorrected outdoor air flow rate"; + parameter Real effVen(final unit="1") = if divP < 0.6 then + 0.88 * divP + 0.22 else 0.75 + "System ventilation efficiency"; + parameter Modelica.Units.SI.VolumeFlowRate Vot_flow_nominal=Vou_flow_nominal/ + effVen "System design outdoor air flow rate"; + + parameter Modelica.Units.SI.Temperature THeaOn=293.15 + "Heating setpoint during on" + annotation (Dialog(group="Room temperature setpoints")); + parameter Modelica.Units.SI.Temperature THeaOff=285.15 + "Heating setpoint during off" + annotation (Dialog(group="Room temperature setpoints")); + parameter Modelica.Units.SI.Temperature TCooOn=297.15 + "Cooling setpoint during on" + annotation (Dialog(group="Room temperature setpoints")); + parameter Modelica.Units.SI.Temperature TCooOff=303.15 + "Cooling setpoint during off" + annotation (Dialog(group="Room temperature setpoints")); + parameter Modelica.Units.SI.PressureDifference dpBuiStaSet(min=0) = 12 + "Building static pressure"; + parameter Real yFanMin = 0.1 "Minimum fan speed"; + + + parameter Modelica.Units.SI.Temperature TCooAirMix_nominal(displayUnit="degC")=303.15 + "Mixed air temperature during cooling nominal conditions (used to size cooling coil)" + annotation (Dialog(group="Air handler unit nominal temperatures and humidity")); + parameter Modelica.Units.SI.Temperature TCooAirSup_nominal(displayUnit="degC")=285.15 + "Supply air temperature during cooling nominal conditions (used to size cooling coil)" + annotation (Dialog(group="Air handler unit nominal temperatures and humidity")); + parameter Modelica.Units.SI.MassFraction wCooAirMix_nominal = 0.017 + "Humidity ratio of mixed air at a nominal conditions used to size cooling coil (in kg/kg dry total)" + annotation (Dialog(group="Air handler unit nominal temperatures and humidity")); + parameter Modelica.Units.SI.Temperature TCooWatInl_nominal(displayUnit="degC") = 279.15 + "Cooling coil nominal inlet water temperature" + annotation (Dialog(group="Air handler unit nominal temperatures and humidity")); + + + parameter Modelica.Units.SI.Temperature THeaAirMix_nominal(displayUnit="degC")=277.15 + "Mixed air temperature during heating nominal conditions (used to size heating coil)" + annotation (Dialog(group="Air handler unit nominal temperatures and humidity")); + parameter Modelica.Units.SI.Temperature THeaAirSup_nominal(displayUnit="degC")=285.15 + "Supply air temperature during heating nominal conditions (used to size heating coil)" + annotation (Dialog(group="Air handler unit nominal temperatures and humidity")); + parameter Modelica.Units.SI.Temperature THeaWatInl_nominal(displayUnit="degC") + "Reheat coil nominal inlet water temperature" + annotation (Dialog(group="Air handler unit nominal temperatures and humidity")); + + parameter Boolean allowFlowReversal=false + "= false to simplify equations, assuming, but not enforcing, no flow reversal" + annotation (Evaluate=true); + + + + Buildings.Fluid.Movers.Preconfigured.SpeedControlled_y fanSup( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + dp_nominal=780 + 10 + dpBuiStaSet, + energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial) + "Supply air fan" + annotation (Placement(transformation(extent={{246,-82},{266,-62}}))); + Buildings.Fluid.Sensors.VolumeFlowRate senSupFlo(redeclare package Medium = + MediumA, m_flow_nominal=mAir_flow_nominal) + "Sensor for supply fan flow rate" + annotation (Placement(transformation(extent={{346,-82},{366,-62}}))); + Buildings.Fluid.Sensors.TemperatureTwoPort TSup( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + allowFlowReversal=allowFlowReversal) + annotation (Placement(transformation(extent={{276,-82},{296,-62}}))); + Buildings.Fluid.Sensors.TemperatureTwoPort TMix( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + allowFlowReversal=allowFlowReversal, + transferHeat=true) "Mixed air temperature sensor" + annotation (Placement(transformation(extent={{82,-82},{102,-62}}))); + Buildings.Fluid.Sensors.VolumeFlowRate VOut1(redeclare package Medium = + MediumA, m_flow_nominal=mAir_flow_nominal) + "Outside air volume flow rate" + annotation (Placement(transformation(extent={{-68,-80},{-48,-60}}))); + Buildings.Fluid.Actuators.Dampers.Exponential + damRet( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + from_dp=false, + riseTime=15, + dpDamper_nominal=5, + dpFixed_nominal=5) + "Return air damper" annotation (Placement(transformation( + origin={52,-6}, + extent={{10,-10},{-10,10}}, + rotation=90))); + Buildings.Fluid.Actuators.Dampers.Exponential + damOut( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + from_dp=false, + riseTime=15, + dpDamper_nominal=5, + dpFixed_nominal=5) + "Outdoor air damper" + annotation (Placement(transformation(extent={{2,-80},{22,-60}}))); + Buildings.Fluid.FixedResistances.PressureDrop + dpSupDuc( + m_flow_nominal=mAir_flow_nominal, + redeclare package Medium = MediumA, + allowFlowReversal=allowFlowReversal, + dp_nominal=200 + 200 + 100 + 40) + "Pressure drop for supply duct" + annotation (Placement(transformation(extent={{196,-82},{216,-62}}))); + Buildings.Fluid.FixedResistances.Junction + splRetOut( + redeclare package Medium = MediumA, + tau=15, + m_flow_nominal=mAir_flow_nominal*{1,1,1}, + energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial, + dp_nominal(each displayUnit="Pa") = {0,0,0}, + portFlowDirection_1=if allowFlowReversal then Modelica.Fluid.Types.PortFlowDirection.Bidirectional + else Modelica.Fluid.Types.PortFlowDirection.Entering, + portFlowDirection_2=if allowFlowReversal then Modelica.Fluid.Types.PortFlowDirection.Bidirectional + else Modelica.Fluid.Types.PortFlowDirection.Leaving, + portFlowDirection_3=if allowFlowReversal then Modelica.Fluid.Types.PortFlowDirection.Bidirectional + else Modelica.Fluid.Types.PortFlowDirection.Entering, + linearized=true) + "Flow splitter" + annotation (Placement(transformation( + extent={{-10,10},{10,-10}}, + rotation=0, + origin={52,-70}))); + Buildings.Fluid.Actuators.Dampers.Exponential damExh( + from_dp=false, + riseTime=15, + dpFixed_nominal=5, + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + dpDamper_nominal=5) + "Exhaust air damper" + annotation (Placement(transformation(extent={{-16,-14},{-36,6}}))); + Buildings.Fluid.FixedResistances.PressureDrop dpRetDuc( + m_flow_nominal=mAir_flow_nominal, + redeclare package Medium = MediumA, + allowFlowReversal=allowFlowReversal, + dp_nominal=40) + "Pressure drop for return duct" + annotation (Placement(transformation(extent={{368,0},{348,20}}))); + Buildings.Fluid.Sensors.VolumeFlowRate senRetFlo(redeclare package Medium = + MediumA, m_flow_nominal=mAir_flow_nominal) + "Sensor for return fan flow rate" + annotation (Placement(transformation(extent={{234,0},{214,20}}))); + Buildings.Fluid.Sensors.TemperatureTwoPort TRet( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + allowFlowReversal=allowFlowReversal) + "Return air temperature sensor" + annotation (Placement(transformation(extent={{138,0},{118,20}}))); + Buildings.Fluid.Movers.Preconfigured.SpeedControlled_y fanSup1( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + dp_nominal=780 + 10 + dpBuiStaSet, + energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial) + "Supply air fan" + annotation (Placement(transformation(extent={{278,0},{258,20}}))); + Modelica.Fluid.Interfaces.FluidPort_b port_b(redeclare final package Medium = + MediumA) + "Fluid connector b (positive design flow direction is from port_a to port_b)" + annotation (Placement(transformation(extent={{556,-5},{524,25}}), + iconTransformation(extent={{552,11},{532,29}}))); + Modelica.Fluid.Interfaces.FluidPort_a port_a(redeclare final package Medium = + MediumA) + "Fluid connector a (positive design flow direction is from port_a to port_b)" + annotation (Placement(transformation(extent={{522,-90},{556,-58}}), + iconTransformation(extent={{532,-69},{552,-51}}))); + Modelica.Fluid.Interfaces.FluidPorts_b ports[2](redeclare each package Medium = + MediumA, each m_flow(max=if flowDirection == Modelica.Fluid.Types.PortFlowDirection.Leaving + then 0 else +Modelica.Constants.inf, min=if flowDirection == + Modelica.Fluid.Types.PortFlowDirection.Entering then 0 else -Modelica.Constants.inf)) + "Fluid ports" + annotation (Placement(transformation(extent={{-110,26},{-90,-54}}), + iconTransformation(extent={{-110,26},{-90,-54}}))); + Controls.BaseClasses.DataBus dataBus annotation (Placement(transformation( + extent={{-90,78},{-50,118}}), iconTransformation(extent={{-84,54},{-34, + 96}}))); + Modelica.Blocks.Math.RealToBoolean u1SupFan(threshold=0.2) + "Convert real to integer" + annotation (Placement(transformation(extent={{316,30},{356,70}}))); + Buildings.Controls.OBC.CDL.Integers.Sources.Constant opeMod(final k=Buildings.Controls.OBC.ASHRAE.G36.Types.OperationModes.occupied) + "AHU operation mode is occupied" + annotation (Placement(transformation(extent={{-66,-170},{-46,-150}}))); + Buildings.Controls.OBC.CDL.Reals.Sources.Constant sumDesPopBreZon(final k=0.0125) + "Sum of the population component design breathing zone flow rate" + annotation (Placement(transformation(extent={{200,-160},{220,-140}}))); + Buildings.Controls.OBC.CDL.Reals.Sources.Constant sumDesAreBreZon(final k=0.03) + "Sum of the area component design breathing zone flow rate" + annotation (Placement(transformation(extent={{324,-160},{344,-140}}))); + Buildings.Fluid.Sensors.RelativePressure dpDisSupFan(redeclare package Medium = + MediumA) "Supply fan static discharge pressure" annotation (Placement( + transformation( + extent={{-18,22},{18,-22}}, + rotation=90, + origin={404,-28}))); + Buildings.Controls.OBC.CDL.Integers.Sources.Constant ducPreResReq(final k=2) + "AHU operation mode is occupied" + annotation (Placement(transformation(extent={{-64,-218},{-44,-198}}))); + Buildings.Fluid.Sensors.TemperatureTwoPort TOut( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + allowFlowReversal=allowFlowReversal, + transferHeat=true) "Mixed air temperature sensor" + annotation (Placement(transformation(extent={{-32,-80},{-12,-60}}))); + Buildings.Controls.OBC.CDL.Reals.Sources.Constant sumDesPopBreZon1(final k=0.04) + "Sum of the population component design breathing zone flow rate" + annotation (Placement(transformation(extent={{264,-160},{284,-140}}))); + Buildings.Controls.OBC.CDL.Reals.Sources.Constant VSumZonPri_flow(final k=0.03) + "Sum of the area component design breathing zone flow rate" + annotation (Placement(transformation(extent={{444,-112},{464,-92}}))); + Buildings.Controls.OBC.CDL.Reals.Sources.Constant uOutAirFra_max(final k=0.5) + "Sum of the area component design breathing zone flow rate" + annotation (Placement(transformation(extent={{498,-122},{518,-102}}))); + Buildings.Controls.OBC.CDL.Integers.Sources.Constant maxSupResReq(final k=6) + "AHU operation mode is occupied" + annotation (Placement(transformation(extent={{-74,-268},{-54,-248}}))); + + protected + parameter Modelica.Fluid.Types.PortFlowDirection flowDirection=Modelica.Fluid.Types.PortFlowDirection.Bidirectional + "Allowed flow direction" annotation (Evaluate=true, Dialog(tab="Advanced")); +equation + connect(TSup.port_a,fanSup. port_b) annotation (Line( + points={{276,-72},{266,-72}}, + color={0,127,255}, + smooth=Smooth.None, + thickness=0.5)); + connect(TSup.port_b,senSupFlo. port_a) + annotation (Line(points={{296,-72},{346,-72}}, color={0,127,255})); + connect(dpSupDuc.port_b,fanSup. port_a) + annotation (Line(points={{216,-72},{246,-72}}, color={0,127,255})); + connect(damOut.port_b,splRetOut. port_1) + annotation (Line(points={{22,-70},{42,-70}}, color={0,127,255})); + connect(splRetOut.port_2,TMix. port_a) + annotation (Line(points={{62,-70},{72,-70},{72,-72},{82,-72}}, + color={0,127,255})); + connect(damRet.port_b,splRetOut. port_3) annotation (Line(points={{52,-16},{52, + -60}}, color={0,127,255})); + connect(dpSupDuc.port_a, TMix.port_b) annotation (Line(points={{196,-72},{102, + -72}}, color={0,127,255})); + connect(senRetFlo.port_b,TRet. port_a) annotation (Line(points={{214,10},{138, + 10}}, color={0,127,255})); + connect(TRet.port_b, damRet.port_a) annotation (Line(points={{118,10},{52,10}, + {52,4}}, color={0,127,255})); + connect(TRet.port_b, damExh.port_a) annotation (Line(points={{118,10},{-6,10}, + {-6,-4},{-16,-4}}, color= + {0,127,255})); + connect(senRetFlo.port_a, fanSup1.port_b) + annotation (Line(points={{234,10},{258,10}}, color={0,127,255})); + connect(fanSup1.port_a, dpRetDuc.port_b) + annotation (Line(points={{278,10},{348,10}}, color={0,127,255})); + connect(senSupFlo.port_b, port_a) annotation (Line(points={{366,-72},{516,-72}, + {516,-74},{539,-74}}, color={0,127,255})); + connect(dpRetDuc.port_a, port_b) + annotation (Line(points={{368,10},{540,10}}, color={0,127,255})); + connect(damExh.port_b, ports[1]) annotation (Line(points={{-36,-4},{-84,-4},{-84, + 6},{-100,6}}, color={0,127,255})); + connect(VOut1.port_a, ports[2]) annotation (Line(points={{-68,-70},{-84,-70},{ + -84,-34},{-100,-34}}, color={0,127,255})); + connect(dataBus.yRetDam, damRet.y) annotation (Line( + points={{-70,98},{-70,-24},{32,-24},{32,-6},{40,-6}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.yOutDam, damOut.y) annotation (Line( + points={{-70,98},{-70,-48},{12,-48},{12,-58}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-3,6},{-3,6}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.ySupFan, fanSup1.y) annotation (Line( + points={{-70,98},{-70,32},{268,32},{268,22}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.ySupFan, fanSup.y) annotation (Line( + points={{-70,98},{-70,32},{248,32},{248,-52},{256,-52},{256,-60}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.yOutDam, damExh.y) annotation (Line( + points={{-70,98},{-70,18},{-26,18},{-26,8}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(opeMod.y, dataBus.uAhuOpeMod) annotation (Line(points={{-44,-160},{-34, + -160},{-34,-158},{-36,-158},{-36,-154},{-34,-154},{-34,-86},{-38,-86}, + {-38,-52},{-70,-52},{-70,98}}, color={255,127,0}), Text( + string="%second", + index=1, + extent={{6,3},{6,3}}, + horizontalAlignment=TextAlignment.Left)); + connect(dpDisSupFan.port_a, port_a) annotation (Line(points={{404,-46},{404,-72}, + {516,-72},{516,-74},{539,-74}}, color={0,127,255})); + connect(VOut1.port_a, dpDisSupFan.port_b) annotation (Line(points={{-68,-70},{ + -84,-70},{-84,-26},{376,-26},{376,0},{404,0},{404,-10}}, color={0,127, + 255})); + connect(dpDisSupFan.p_rel, dataBus.dpDuc) annotation (Line(points={{384.2,-28}, + {-70,-28},{-70,98}}, color={0,0,127}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(ducPreResReq.y, dataBus.uZonPreResReq) annotation (Line(points={{-42,-208}, + {-38,-208},{-38,-204},{-40,-204},{-40,-200},{-38,-200},{-38,-178},{-70, + -178},{-70,98}}, color={255,127,0}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(VOut1.port_b, TOut.port_a) + annotation (Line(points={{-48,-70},{-32,-70}}, color={0,127,255})); + connect(TOut.port_b, damOut.port_a) + annotation (Line(points={{-12,-70},{2,-70}}, color={0,127,255})); + connect(TSup.T, dataBus.TAirSup) annotation (Line(points={{286,-61},{136,-61}, + {136,38},{-70,38},{-70,98}}, color={0,0,127}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(dataBus.ySupFan, u1SupFan.u) annotation (Line( + points={{-70,98},{-70,50},{312,50}}, + color={255,204,51}, + thickness=0.5), Text( + string="%first", + index=-1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(u1SupFan.y, dataBus.u1SupFan) annotation (Line(points={{358,50},{366,50}, + {366,76},{-44,76},{-44,72},{-70,72},{-70,98}}, color={255,0,255}), + Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(sumDesPopBreZon.y, dataBus.VSumAdjPopBreZon_flow) annotation (Line( + points={{222,-150},{230,-150},{230,-6},{200,-6},{200,48},{-70,48},{-70,98}}, + color={0,0,127}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(sumDesAreBreZon.y, dataBus.VSumAdjAreBreZon_flow) annotation (Line( + points={{346,-150},{364,-150},{364,-26},{-70,-26},{-70,98}}, color={0,0, + 127}), Text( + string="%second", + index=1, + extent={{6,3},{6,3}}, + horizontalAlignment=TextAlignment.Left)); + connect(TOut.T, dataBus.TOut) annotation (Line(points={{-22,-59},{-22,-50},{-70, + -50},{-70,98}}, color={0,0,127}), Text( + string="%second", + index=1, + extent={{-3,6},{-3,6}}, + horizontalAlignment=TextAlignment.Right)); + connect(VOut1.V_flow, dataBus.VAirOut_flow) annotation (Line(points={{-58,-59}, + {-38,-59},{-38,98},{-70,98}}, color={0,0,127}), Text( + string="%second", + index=1, + extent={{6,3},{6,3}}, + horizontalAlignment=TextAlignment.Left)); + connect(VSumZonPri_flow.y, dataBus.VSumZonPri_flow) annotation (Line(points={{ + 466,-102},{200,-102},{200,98},{-70,98}}, color={0,0,127}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(uOutAirFra_max.y, dataBus.uOutAirFra_max) annotation (Line(points={{520, + -112},{226,-112},{226,98},{-70,98}}, color={0,0,127}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + connect(maxSupResReq.y, dataBus.uZonTemResReq) annotation (Line(points={{-52,-258}, + {-44,-258},{-44,-224},{-70,-224},{-70,98}}, color={255,127,0}), Text( + string="%second", + index=1, + extent={{-6,3},{-6,3}}, + horizontalAlignment=TextAlignment.Right)); + annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-180}, + {540,100}}), graphics={Rectangle( + extent={{-98,102},{542,-138}}, + lineColor={28,108,200}, + fillColor={244,125,35}, + fillPattern=FillPattern.Solid)}), + Diagram(coordinateSystem( + preserveAspectRatio=false, extent={{-100,-180},{540,100}}))); +end AhuWithEconomizer; + partial model PartialAhu +replaceable package MediumA = Modelica.Media.Interfaces.PartialMedium +"Medium model" annotation (choicesAllMatching=true); + + constant Integer numZon(min=2)=2 "Total number of served VAV boxes"; + + parameter Modelica.Units.SI.Volume VRoo[numZon] "Room volume per zone"; + parameter Modelica.Units.SI.Area AFlo[numZon] "Floor area per zone"; + + final parameter Modelica.Units.SI.Area ATot=sum(AFlo) +"Total floor area for all zone"; + + constant Real conv=1.2/3600 "Conversion factor for nominal mass flow rate"; + + parameter Modelica.Units.SI.HeatFlowRate QHeaAHU_flow_nominal(min=0)= + mHeaAir_flow_nominal*Buildings.Utilities.Psychrometrics.Constants.cpAir*( + THeaAirSup_nominal - THeaAirMix_nominal) +"Nominal heating heat flow rate of air handler unit coil"; + + parameter Modelica.Units.SI.HeatFlowRate QCooAHU_flow_nominal(max=0) = 1.3* + mCooAir_flow_nominal*Buildings.Utilities.Psychrometrics.Constants.cpAir*( + TCooAirSup_nominal - TCooAirMix_nominal) +"Nominal total cooling heat flow rate of air handler unit coil (negative number)"; + + parameter Modelica.Units.SI.MassFlowRate mCooVAV_flow_nominal[numZon] +"Design mass flow rate per zone for cooling" +annotation (Dialog(group="Nominal mass flow rate")); + + parameter Modelica.Units.SI.MassFlowRate mHeaVAV_flow_nominal[numZon]=0.3* + mCooVAV_flow_nominal +"Design mass flow rate per zone for heating" +annotation (Dialog(group="Nominal mass flow rate")); + + parameter Modelica.Units.SI.MassFlowRate mAir_flow_nominal= + 0.01 +"Nominal mass flow rate for fan" +annotation (Dialog(group="Nominal mass flow rate")); + parameter Modelica.Units.SI.MassFlowRate mCooAir_flow_nominal=0.7*sum( + mCooVAV_flow_nominal) +"Nominal mass flow rate for fan" +annotation (Dialog(group="Nominal mass flow rate")); + parameter Modelica.Units.SI.MassFlowRate mHeaAir_flow_nominal=0.7*sum( + mHeaVAV_flow_nominal) +"Nominal mass flow rate for fan" +annotation (Dialog(group="Nominal mass flow rate")); + + parameter Modelica.Units.SI.MassFlowRate mHeaWat_flow_nominal= + QHeaAHU_flow_nominal/Buildings.Utilities.Psychrometrics.Constants.cpWatLiq/10 +"Nominal water mass flow rate for heating coil in AHU" +annotation (Dialog(group="Nominal mass flow rate")); + parameter Modelica.Units.SI.MassFlowRate mCooWat_flow_nominal= + QCooAHU_flow_nominal/Buildings.Utilities.Psychrometrics.Constants.cpWatLiq/(-6) +"Nominal water mass flow rate for cooling coil" +annotation (Dialog(group="Nominal mass flow rate")); + + parameter Real ratOAFlo_A(final unit="m3/(s.m2)") = 0.3e-3 +"Outdoor airflow rate required per unit area"; + parameter Real ratOAFlo_P=2.5e-3 +"Outdoor airflow rate required per person"; + parameter Real ratP_A=5e-2 +"Occupant density"; + parameter Real effZ(final unit="1") = 0.8 +"Zone air distribution effectiveness (limiting value)"; + parameter Real divP(final unit="1") = 0.7 +"Occupant diversity ratio"; + + parameter Modelica.Units.SI.VolumeFlowRate VZonOA_flow_nominal[numZon]= + ( + ratOAFlo_P*ratP_A + ratOAFlo_A)*AFlo/effZ +"Zone outdoor air flow rate of each VAV box"; + + parameter Modelica.Units.SI.VolumeFlowRate Vou_flow_nominal= + (divP*ratOAFlo_P* + ratP_A + ratOAFlo_A)*sum(AFlo) "System uncorrected outdoor air flow rate"; + parameter Real effVen(final unit="1") = if divP < 0.6 then +0.88 * divP + 0.22 else 0.75 +"System ventilation efficiency"; + parameter Modelica.Units.SI.VolumeFlowRate Vot_flow_nominal=Vou_flow_nominal/ + effVen "System design outdoor air flow rate"; + + parameter Modelica.Units.SI.Temperature THeaOn=293.15 +"Heating setpoint during on" +annotation (Dialog(group="Room temperature setpoints")); + parameter Modelica.Units.SI.Temperature THeaOff=285.15 +"Heating setpoint during off" +annotation (Dialog(group="Room temperature setpoints")); + parameter Modelica.Units.SI.Temperature TCooOn=297.15 +"Cooling setpoint during on" +annotation (Dialog(group="Room temperature setpoints")); + parameter Modelica.Units.SI.Temperature TCooOff=303.15 +"Cooling setpoint during off" +annotation (Dialog(group="Room temperature setpoints")); + parameter Modelica.Units.SI.PressureDifference dpBuiStaSet(min=0) = 12 +"Building static pressure"; + parameter Real yFanMin=0.1 "Minimum fan speed"; + + parameter Modelica.Units.SI.Temperature TCooAirMix_nominal(displayUnit="degC")= + 303.15 +"Mixed air temperature during cooling nominal conditions (used to size cooling coil)" +annotation (Dialog(group="Air handler unit nominal temperatures and humidity")); + parameter Modelica.Units.SI.Temperature TCooAirSup_nominal(displayUnit="degC")= + 285.15 +"Supply air temperature during cooling nominal conditions (used to size cooling coil)" +annotation (Dialog(group="Air handler unit nominal temperatures and humidity")); + parameter Modelica.Units.SI.MassFraction wCooAirMix_nominal=0.017 +"Humidity ratio of mixed air at a nominal conditions used to size cooling coil (in kg/kg dry total)" +annotation (Dialog(group="Air handler unit nominal temperatures and humidity")); + parameter Modelica.Units.SI.Temperature TCooWatInl_nominal(displayUnit="degC")= + 279.15 +"Cooling coil nominal inlet water temperature" +annotation (Dialog(group="Air handler unit nominal temperatures and humidity")); + + parameter Modelica.Units.SI.Temperature THeaAirMix_nominal(displayUnit="degC")= + 277.15 +"Mixed air temperature during heating nominal conditions (used to size heating coil)" +annotation (Dialog(group="Air handler unit nominal temperatures and humidity")); + parameter Modelica.Units.SI.Temperature THeaAirSup_nominal(displayUnit="degC")= + 285.15 +"Supply air temperature during heating nominal conditions (used to size heating coil)" +annotation (Dialog(group="Air handler unit nominal temperatures and humidity")); + parameter Modelica.Units.SI.Temperature THeaWatInl_nominal(displayUnit="degC") +"Reheat coil nominal inlet water temperature" +annotation (Dialog(group="Air handler unit nominal temperatures and humidity")); + + parameter Boolean allowFlowReversal=false +"= false to simplify equations, assuming, but not enforcing, no flow reversal" +annotation (Evaluate=true); + + Buildings.Fluid.Movers.Preconfigured.SpeedControlled_y fanSup( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + dp_nominal=780 + 10 + dpBuiStaSet, + energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial) + "Supply air fan" +annotation (Placement(transformation(extent={{246,-82},{266,-62}}))); + Buildings.Fluid.Sensors.VolumeFlowRate senSupFlo(redeclare package Medium = + MediumA, m_flow_nominal=mAir_flow_nominal) +"Sensor for supply fan flow rate" +annotation (Placement(transformation(extent={{346,-82},{366,-62}}))); + Buildings.Fluid.Sensors.TemperatureTwoPort TSup( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + allowFlowReversal=allowFlowReversal) +annotation (Placement(transformation(extent={{276,-82},{296,-62}}))); + Buildings.Fluid.Sensors.TemperatureTwoPort TMix( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + allowFlowReversal=allowFlowReversal, + transferHeat=true) "Mixed air temperature sensor" +annotation (Placement(transformation(extent={{82,-82},{102,-62}}))); + Buildings.Fluid.Sensors.VolumeFlowRate VOut1(redeclare package Medium = + MediumA, m_flow_nominal=mAir_flow_nominal) +"Outside air volume flow rate" +annotation (Placement(transformation(extent={{-68,-80},{-48,-60}}))); + Buildings.Fluid.Actuators.Dampers.Exponential + damRet( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + from_dp=false, + riseTime=15, + dpDamper_nominal=5, + dpFixed_nominal=5) + "Return air damper" annotation (Placement(transformation( + origin={52,-6}, + extent={{10,-10},{-10,10}}, + rotation=90))); + Buildings.Fluid.Actuators.Dampers.Exponential + damOut( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + from_dp=false, + riseTime=15, + dpDamper_nominal=5, + dpFixed_nominal=5) + "Outdoor air damper" +annotation (Placement(transformation(extent={{2,-80},{22,-60}}))); + Buildings.Fluid.FixedResistances.PressureDrop + dpSupDuc( + m_flow_nominal=mAir_flow_nominal, + redeclare package Medium = MediumA, + allowFlowReversal=allowFlowReversal, + dp_nominal=200 + 200 + 100 + 40) + "Pressure drop for supply duct" +annotation (Placement(transformation(extent={{196,-82},{216,-62}}))); + Buildings.Fluid.FixedResistances.Junction + splRetOut( + redeclare package Medium = MediumA, + tau=15, + m_flow_nominal=mAir_flow_nominal*{1,1,1}, + energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial, + dp_nominal(each displayUnit="Pa") = {0,0,0}, + portFlowDirection_1=if allowFlowReversal then Modelica.Fluid.Types.PortFlowDirection.Bidirectional + else Modelica.Fluid.Types.PortFlowDirection.Entering, + portFlowDirection_2=if allowFlowReversal then Modelica.Fluid.Types.PortFlowDirection.Bidirectional + else Modelica.Fluid.Types.PortFlowDirection.Leaving, + portFlowDirection_3=if allowFlowReversal then Modelica.Fluid.Types.PortFlowDirection.Bidirectional + else Modelica.Fluid.Types.PortFlowDirection.Entering, + linearized=true) +"Flow splitter" +annotation (Placement(transformation( + extent={{-10,10},{10,-10}}, + rotation=0, + origin={52,-70}))); + Buildings.Fluid.Actuators.Dampers.Exponential damExh( + from_dp=false, + riseTime=15, + dpFixed_nominal=5, + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + dpDamper_nominal=5) + "Exhaust air damper" +annotation (Placement(transformation(extent={{-16,-14},{-36,6}}))); + Buildings.Fluid.FixedResistances.PressureDrop dpRetDuc( + m_flow_nominal=mAir_flow_nominal, + redeclare package Medium = MediumA, + allowFlowReversal=allowFlowReversal, + dp_nominal=40) + "Pressure drop for return duct" +annotation (Placement(transformation(extent={{368,0},{348,20}}))); + Buildings.Fluid.Sensors.VolumeFlowRate senRetFlo(redeclare package Medium = + MediumA, m_flow_nominal=mAir_flow_nominal) +"Sensor for return fan flow rate" +annotation (Placement(transformation(extent={{234,0},{214,20}}))); + Buildings.Fluid.Sensors.TemperatureTwoPort TRet( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + allowFlowReversal=allowFlowReversal) + "Return air temperature sensor" +annotation (Placement(transformation(extent={{138,0},{118,20}}))); + Buildings.Fluid.Movers.Preconfigured.SpeedControlled_y fanSup1( + redeclare package Medium = MediumA, + m_flow_nominal=mAir_flow_nominal, + dp_nominal=780 + 10 + dpBuiStaSet, + energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial) + "Supply air fan" +annotation (Placement(transformation(extent={{278,0},{258,20}}))); + Modelica.Fluid.Interfaces.FluidPort_b port_b(redeclare final package Medium = + MediumA) +"Fluid connector b (positive design flow direction is from port_a to port_b)" +annotation (Placement(transformation(extent={{556,-5},{524,25}}), + iconTransformation(extent={{552,11},{532,29}}))); + Modelica.Fluid.Interfaces.FluidPort_a port_a(redeclare final package Medium = + MediumA) +"Fluid connector a (positive design flow direction is from port_a to port_b)" +annotation (Placement(transformation(extent={{522,-90},{556,-58}}), + iconTransformation(extent={{532,-69},{552,-51}}))); + Modelica.Fluid.Interfaces.FluidPorts_b ports[2](redeclare each package Medium = + MediumA, each m_flow(max=if flowDirection == Modelica.Fluid.Types.PortFlowDirection.Leaving + then 0 else +Modelica.Constants.inf, min=if flowDirection == + Modelica.Fluid.Types.PortFlowDirection.Entering then 0 else -Modelica.Constants.inf)) +"Fluid ports" +annotation (Placement(transformation(extent={{-110,26},{-90,-54}}), + iconTransformation(extent={{-110,26},{-90,-54}}))); + Buildings.Fluid.Sensors.RelativePressure dpDisSupFan(redeclare package Medium = + MediumA) "Supply fan static discharge pressure" annotation (Placement( + transformation( + extent={{-18,22},{18,-22}}, + rotation=90, + origin={404,-28}))); + Buildings.Fluid.Sensors.TemperatureTwoPort TOut( +redeclare package Medium = MediumA, +m_flow_nominal=mAir_flow_nominal, +allowFlowReversal=allowFlowReversal, +transferHeat=true) "Mixed air temperature sensor" +annotation (Placement(transformation(extent={{-32,-80},{-12,-60}}))); + +protected + parameter Modelica.Fluid.Types.PortFlowDirection flowDirection=Modelica.Fluid.Types.PortFlowDirection.Bidirectional +"Allowed flow direction" annotation (Evaluate=true, Dialog(tab="Advanced")); +equation + connect( + TSup.port_a,fanSup. port_b) annotation (Line( + points={{276,-72},{266,-72}}, + color={0,127,255}, + smooth=Smooth.None, + thickness=0.5)); + connect( + TSup.port_b,senSupFlo. port_a) +annotation (Line(points={{296,-72},{346,-72}}, color={0,127,255})); + connect( + dpSupDuc.port_b,fanSup. port_a) +annotation (Line(points={{216,-72},{246,-72}}, color={0,127,255})); + connect( + damOut.port_b,splRetOut. port_1) +annotation (Line(points={{22,-70},{42,-70}}, color={0,127,255})); + connect( + splRetOut.port_2,TMix. port_a) +annotation (Line(points={{62,-70},{72,-70},{72,-72},{82,-72}}, + color={0,127,255})); + connect( + damRet.port_b,splRetOut. port_3) annotation (Line(points={{52,-16},{52, + -60}}, color={0,127,255})); +connect(dpSupDuc.port_a, TMix.port_b) annotation (Line(points={{196,-72},{102, + -72}}, color={0,127,255})); + connect( + senRetFlo.port_b,TRet. port_a) annotation (Line(points={{214,10},{138, + 10}}, color={0,127,255})); +connect(TRet.port_b, damRet.port_a) annotation (Line(points={{118,10},{52,10}, + {52,4}}, color={0,127,255})); +connect(TRet.port_b, damExh.port_a) annotation (Line(points={{118,10},{-6,10}, + {-6,-4},{-16,-4}}, color= + {0,127,255})); +connect(senRetFlo.port_a, fanSup1.port_b) + annotation (Line(points={{234,10},{258,10}}, color={0,127,255})); +connect(fanSup1.port_a, dpRetDuc.port_b) + annotation (Line(points={{278,10},{348,10}}, color={0,127,255})); + connect( + senSupFlo.port_b, port_a) annotation (Line(points={{366,-72},{516,-72}, + {516,-74},{539,-74}}, color={0,127,255})); + connect( + dpRetDuc.port_a, port_b) +annotation (Line(points={{368,10},{540,10}}, color={0,127,255})); + connect( + damExh.port_b, ports[1]) annotation (Line(points={{-36,-4},{-84,-4},{-84, + 6},{-100,6}}, color={0,127,255})); + connect( + VOut1.port_a, ports[2]) annotation (Line(points={{-68,-70},{-84,-70},{ + -84,-34},{-100,-34}}, color={0,127,255})); + connect( + dpDisSupFan.port_a, port_a) annotation (Line(points={{404,-46},{404,-72}, + {516,-72},{516,-74},{539,-74}}, color={0,127,255})); + connect( + VOut1.port_a, dpDisSupFan.port_b) annotation (Line(points={{-68,-70},{ + -84,-70},{-84,-26},{376,-26},{376,0},{404,0},{404,-10}}, color={0,127, + 255})); + connect( + VOut1.port_b, TOut.port_a) +annotation (Line(points={{-48,-70},{-32,-70}}, color={0,127,255})); + connect( + TOut.port_b, damOut.port_a) +annotation (Line(points={{-12,-70},{2,-70}}, color={0,127,255})); +annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-180}, + {540,100}}), graphics={Rectangle( + extent={{-98,102},{542,-138}}, + lineColor={28,108,200}, + fillColor={244,125,35}, + fillPattern=FillPattern.Solid)}), + Diagram(coordinateSystem( + preserveAspectRatio=false, extent={{-100,-180},{540,100}}))); +end PartialAhu; +partial model PartialPump + replaceable package Medium = Modelica.Media.Interfaces.PartialMedium + "Medium model for air" annotation (choicesAllMatching=true); + + parameter Modelica.Units.SI.MassFlowRate m_flow_nominal + "Nominal mass flow rate of radiator loop"; + parameter Modelica.Units.SI.PressureDifference dp_nominal + "Pressure difference of loop"; + + Buildings.Fluid.Movers.Preconfigured.SpeedControlled_y pumRad( + redeclare package Medium = Medium, + m_flow_nominal=m_flow_nominal, + dp_nominal=dp_nominal, + energyDynamics=Modelica.Fluid.Types.Dynamics.SteadyState) + "Pump that serves the radiators" annotation (Placement(transformation( + extent={{-10,-10},{10,10}}, + rotation=0, + origin={-4,0}))); + Buildings.Fluid.Sensors.RelativePressure dpSen(redeclare package Medium = + Medium) + annotation (Placement(transformation(extent={{-10,-10},{10,10}}, + rotation=180, + origin={-6,32}))); + Buildings.Fluid.Sensors.TemperatureTwoPort temSup(redeclare package Medium = + Medium, m_flow_nominal=m_flow_nominal) + annotation (Placement(transformation(extent={{-10,-10},{10,10}}, + rotation=0, + origin={42,0}))); + Buildings.Controls.OBC.CDL.Reals.MultiplyByParameter + gain(k=1/dp_nominal) + "Gain used to normalize pressure measurement signal" + annotation (Placement(transformation(extent={{10,-10},{-10,10}}, + rotation=-90, + origin={-6,76}))); + extends Buildings.Fluid.Interfaces.PartialTwoPort; +equation + connect(pumRad.port_b,dpSen. port_a) + annotation (Line( + points={{6,0},{14,0},{14,32},{4,32}}, + color={0,127,255}, + smooth=Smooth.None)); + connect(dpSen.port_b,pumRad. port_a) + annotation (Line( + points={{-16,32},{-22,32},{-22,0},{-14,0}}, + color={0,127,255}, + smooth=Smooth.None)); + connect(pumRad.port_b,temSup. port_a) annotation (Line( + points={{6,0},{32,0}}, + color={0,127,255}, + smooth=Smooth.None)); + connect(gain.u,dpSen. p_rel) annotation (Line( + points={{-6,64},{-6,41}}, + color={0,0,127}, + smooth=Smooth.None)); + connect(port_a, pumRad.port_a) + annotation (Line(points={{-100,0},{-14,0}}, color={0,127,255})); + connect(temSup.port_b, port_b) + annotation (Line(points={{52,0},{100,0}}, color={0,127,255})); + annotation (Icon(coordinateSystem(preserveAspectRatio=false), graphics={ + Rectangle( + extent={{-100,16},{100,-16}}, + lineColor={0,0,0}, + fillColor={0,127,255}, + fillPattern=FillPattern.HorizontalCylinder), + Ellipse( + extent={{-58,58},{58,-58}}, + lineColor={0,0,0}, + fillPattern=FillPattern.Sphere, + fillColor={0,100,199}), + Polygon( + points={{0,50},{0,-50},{54,0},{0,50}}, + lineColor={0,0,0}, + pattern=LinePattern.None, + fillPattern=FillPattern.HorizontalCylinder, + fillColor={255,255,255}), + Ellipse( + extent={{4,16},{36,-16}}, + lineColor={0,0,0}, + fillPattern=FillPattern.Sphere, + visible=energyDynamics <> Modelica.Fluid.Types.Dynamics.SteadyState, + fillColor={0,100,199})}), Diagram(coordinateSystem( + preserveAspectRatio=false))); +end PartialPump; + + + partial model PartialVAVBox + "Supply box of a VAV system with a hot water reheat coil" + extends + Modelica.Blocks.Icons.Block; + replaceable package MediumA = Modelica.Media.Interfaces.PartialMedium + "Medium model for air" annotation (choicesAllMatching=true); + + + parameter Boolean allowFlowReversal=true +"= false to simplify equations, assuming, but not enforcing, no flow reversal"; + parameter Modelica.Units.SI.MassFlowRate mCooAir_flow_nominal +"Nominal air mass flow rate from cooling sizing calculations"; + parameter Modelica.Units.SI.MassFlowRate mHeaAir_flow_nominal +"Nominal air mass flow rate from heating sizing calculations"; + final parameter Modelica.Units.SI.MassFlowRate mHeaWat_flow_nominal= + QHea_flow_nominal/(cpWatLiq*(THeaWatInl_nominal - THeaWatOut_nominal)) +"Nominal mass flow rate of hot water to reheat coil"; + parameter Modelica.Units.SI.Volume VRoo "Room volume"; + parameter Modelica.Units.SI.Temperature THeaWatInl_nominal(start=55 + 273.15, + displayUnit="degC") "Reheat coil nominal inlet water temperature"; + parameter Modelica.Units.SI.Temperature THeaWatOut_nominal(start= + THeaWatInl_nominal - 10, displayUnit="degC") +"Reheat coil nominal outlet water temperature"; + parameter Modelica.Units.SI.Temperature THeaAirInl_nominal(start=12 + 273.15, + displayUnit="degC") +"Inlet air nominal temperature into VAV box during heating"; + parameter Modelica.Units.SI.Temperature THeaAirDis_nominal(start=28 + 273.15, + displayUnit="degC") +"Discharge air temperature from VAV box during heating"; + parameter Modelica.Units.SI.HeatFlowRate QHea_flow_nominal= + mHeaAir_flow_nominal * cpAir * (THeaAirDis_nominal-THeaAirInl_nominal) +"Nominal heating heat flow rate"; + Modelica.Fluid.Interfaces.FluidPort_a port_aAir( +redeclare package Medium=MediumA) +"Fluid connector a1 (positive design flow direction is from port_a1 to port_b1)" +annotation (Placement(transformation(extent={{-10,-110},{10,-90}}), + iconTransformation(extent={{-10,-110},{10,-90}}))); + Modelica.Fluid.Interfaces.FluidPort_a port_bAir( +redeclare package Medium=MediumA) +"Fluid connector b (positive design flow direction is from port_a1 to port_b1)" +annotation (Placement(transformation(extent={{-10,90},{10,110}}), + iconTransformation(extent={{-10,90},{10,110}}))); + Buildings.Fluid.Actuators.Dampers.Exponential vav( +redeclare package Medium = MediumA, +m_flow_nominal=mCooAir_flow_nominal, +dpDamper_nominal=20, +allowFlowReversal=allowFlowReversal, +dpFixed_nominal=130) "VAV box for room" annotation (Placement( + transformation( + extent={{-10,-10},{10,10}}, + rotation=90, + origin={0,10}))); + + Buildings.Fluid.Sensors.TemperatureTwoPort senTem( +redeclare package Medium = MediumA, +initType=Modelica.Blocks.Types.Init.InitialState, +m_flow_nominal=mCooAir_flow_nominal, +allowFlowReversal=allowFlowReversal) "Supply air temperature sensor" +annotation (Placement(transformation( + extent={{-10,10},{10,-10}}, + rotation=90, + origin={0,40}))); + Buildings.Fluid.Sensors.VolumeFlowRate senVolFlo( +redeclare package Medium = MediumA, +initType=Modelica.Blocks.Types.Init.InitialState, +m_flow_nominal=mCooAir_flow_nominal, +allowFlowReversal=allowFlowReversal) +"Supply air volumetric flow rate sensor" annotation (Placement( + transformation( + extent={{-10,10},{10,-10}}, + rotation=90, + origin={0,80}))); +protected + constant Modelica.Units.SI.SpecificHeatCapacity cpAir=Buildings.Utilities.Psychrometrics.Constants.cpAir +"Air specific heat capacity"; + constant Modelica.Units.SI.SpecificHeatCapacity cpWatLiq=Buildings.Utilities.Psychrometrics.Constants.cpWatLiq +"Water specific heat capacity"; +equation + connect( + vav.port_b, senTem.port_a) annotation (Line(points={{6.66134e-16,20},{ + 0,20},{0,30},{-4.44089e-16,30}}, color={0,127,255})); + connect( + senTem.port_b, senVolFlo.port_a) +annotation (Line(points={{0,50},{0,70},{-6.66134e-16,70}}, + color={0,127,255})); + connect( + senVolFlo.port_b, port_bAir) +annotation (Line(points={{4.44089e-16,90},{0,90},{0,100}}, + color={0,127,255})); + connect( + vav.port_a, port_aAir) +annotation (Line(points={{-5.55112e-16,0},{0,-100}}, color={0,127,255})); + annotation (Icon( +graphics={ + Rectangle( + extent={{-108.07,-16.1286},{93.93,-20.1286}}, + lineColor={0,0,0}, + fillPattern=FillPattern.HorizontalCylinder, + fillColor={0,127,255}, + origin={-18.1286,6.07}, + rotation=90), + Rectangle( + extent={{100.8,-22},{128.8,-44}}, + lineColor={0,0,0}, + fillPattern=FillPattern.HorizontalCylinder, + fillColor={192,192,192}, + origin={-32,-76.8}, + rotation=90), + Rectangle( + extent={{102.2,-11.6667},{130.2,-25.6667}}, + lineColor={0,0,0}, + fillPattern=FillPattern.HorizontalCylinder, + fillColor={0,127,255}, + origin={-17.6667,-78.2}, + rotation=90), + Polygon( + points={{-12,32},{16,48},{16,46},{-12,30},{-12,32}}, + pattern=LinePattern.None, + smooth=Smooth.None, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + lineColor={0,0,0}), + Line(points={{-100,80},{-38,80},{-38,38},{-10,38}}, color={255,255,0}, + thickness=1)})); +end PartialVAVBox; + + end Ventilation; + end Fluid; + + package HeatTransfer + package IdealHeatingSystem + model IdealHeatEmission + parameter Real frad=0.3 "radiative fraction"; + parameter Real power=2000 "heating power"; + Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_a heatPortCon + "Heat port for convective heat transfer with room air temperature" + annotation (Placement(transformation(extent={{-30,62},{-10,82}}))); + Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_a heatPortRad + "Heat port for radiative heat transfer with room radiation temperature" + annotation (Placement(transformation(extent={{10,62},{30,82}}))); + Modelica.Blocks.Interfaces.RealInput y + annotation (Placement(transformation(extent={{-140,-20},{-100,20}}))); + Modelica.Blocks.Math.Gain HeatingPower(k=power) + annotation (Placement(transformation(extent={{-40,-10},{-20,10}}))); + Modelica.Blocks.Math.Gain convectiveGain(k=1 - frad) + annotation (Placement(transformation(extent={{2,-60},{22,-40}}))); + Modelica.Blocks.Math.Gain radiativeGain(k=frad) + annotation (Placement(transformation(extent={{2,-90},{22,-70}}))); + Modelica.Blocks.Nonlinear.Limiter limiter(uMax=1, uMin=0) + annotation (Placement(transformation(extent={{-86,-10},{-66,10}}))); + protected + Modelica.Thermal.HeatTransfer.Sources.PrescribedHeatFlow preSumCon(final + alpha=0) + "Heat input into radiator from convective heat transfer" + annotation (Placement(transformation(extent={{52,-60},{72,-40}}))); + Modelica.Thermal.HeatTransfer.Sources.PrescribedHeatFlow preSumRad(final + alpha=0) + "Heat input into radiator from radiative heat transfer" + annotation (Placement(transformation(extent={{52,-90},{72,-70}}))); + equation + + connect(preSumCon.port,heatPortCon) annotation (Line( + points={{72,-50},{80,-50},{80,40},{-20,40},{-20,72}}, + color={191,0,0})); + connect(preSumRad.port,heatPortRad) annotation (Line( + points={{72,-80},{86,-80},{86,50},{20,50},{20,72}}, + color={191,0,0})); + connect(preSumCon.Q_flow, convectiveGain.y) + annotation (Line(points={{52,-50},{23,-50}}, color={0,0,127})); + connect(radiativeGain.y, preSumRad.Q_flow) + annotation (Line(points={{23,-80},{52,-80}}, color={0,0,127})); + connect(HeatingPower.y, convectiveGain.u) annotation (Line(points={{-19, + 0},{-6,0},{-6,-50},{0,-50}}, color={0,0,127})); + connect(HeatingPower.y, radiativeGain.u) annotation (Line(points={{-19, + 0},{-6,0},{-6,-80},{0,-80}}, color={0,0,127})); + connect(y, limiter.u) + annotation (Line(points={{-120,0},{-88,0}}, color={0,0,127})); + connect(limiter.y, HeatingPower.u) + annotation (Line(points={{-65,0},{-42,0}}, color={0,0,127})); + annotation (Icon(graphics={ + Ellipse( + extent={{-20,20},{20,-22}}, + fillColor={127,0,0}, + fillPattern=FillPattern.Solid, + pattern=LinePattern.None), + Ellipse( + extent={{-20,20},{20,-22}}, + fillColor={127,0,0}, + fillPattern=FillPattern.Solid, + pattern=LinePattern.None), + Rectangle( + extent={{-80,58},{80,-62}}, + lineColor={0,0,0}, + fillColor={127,0,0}, + fillPattern=FillPattern.Solid), + Line( + points={{-66,28},{66,28}}), + Line( + points={{-66,0},{66,0}}), + Line( + points={{-66,-32},{66,-32}}), + Line( + points={{-66,58},{-66,-62}}), + Line( + points={{66,58},{66,-62}})})); + end IdealHeatEmission; + end IdealHeatingSystem; + end HeatTransfer; + annotation (uses(Buildings(version = "11.0.0"), Modelica(version = "4.0.0"), + IDEAS(version="3.0.0")), + Icon(graphics={ Rectangle(lineColor = {200, 200, 200}, fillColor = {248, 248, 248}, + fillPattern = FillPattern.HorizontalCylinder, extent = {{-100, -100}, {100, 100}}, radius = 25), Rectangle(lineColor = {128, 128, 128}, extent = {{-100, -100}, {100, 100}}, radius = 25)})); +end Common; + +model building + parameter Buildings.HeatTransfer.Data.GlazingSystems.Generic double_glazing( + final glass={ + Buildings.HeatTransfer.Data.Glasses.Generic( + x=0.003, + k=1.0, + tauSol={ 0.646 }, + rhoSol_a={ 0.062 }, + rhoSol_b={ 0.063 }, + tauIR=0.0, + absIR_a=0.84, + absIR_b=0.84) + , + Buildings.HeatTransfer.Data.Glasses.Generic( + x=0.003, + k=1.0, + tauSol={ 0.646 }, + rhoSol_a={ 0.062 }, + rhoSol_b={ 0.063 }, + tauIR=0.0, + absIR_a=0.84, + absIR_b=0.84) + + }, + final gas={ + Buildings.HeatTransfer.Data.Gases.Air(x=0.0127) + + }, + UFra=1.4) + annotation ( + defaultComponentPrefixes="parameter", + defaultComponentName="datGlaSys"); + parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic + external_wall( + final nLay=3, + absIR_a=0.9, + absIR_b=0.9, + absSol_a=0.6, + absSol_b=0.6, + material={Buildings.HeatTransfer.Data.Solids.Generic( + x=0.2, + k=1.4, + c=840.0, + d=2240.0),Buildings.HeatTransfer.Data.Solids.Generic( + x=0.02, + k=0.03, + c=1200.0, + d=40.0),Buildings.HeatTransfer.Data.Solids.Generic( + x=0.1, + k=0.12, + c=1210.0, + d=540.0) }, + roughness_a=Buildings.HeatTransfer.Types.SurfaceRoughness.Rough) + annotation (Placement(transformation(extent={{20,84},{34,98}}))); + + +package Medium = Buildings.Media.Air(extraPropertiesNames={"CO2"}) "Medium model"; + package MediumW = Buildings.Media.Water "Medium model"; + + Buildings.ThermalZones.Detailed.MixedAir space_1( + redeclare package Medium = Medium, + mSenFac=1, + AFlo=20, + hRoo=2, + linearizeRadiation=true, + m_flow_nominal=0.01, + T_start=294.15 +,nPorts = 3, nConExt=3, + datConExt( + layers={ external_wall, external_wall, external_wall }, + A={ 10.0, 10.0, 10.0 }, + til={Buildings.Types.Tilt.Wall,Buildings.Types.Tilt.Wall,Buildings.Types.Tilt.Wall}, + azi={ 135.0, 0.0, 90.0 }), + nSurBou=0, nConBou=1, + datConBou( + layers={ external_wall }, + A={ 10.0 }, + til={Buildings.Types.Tilt.Floor}, + azi={ 90.0 }), + nConExtWin=1, + datConExtWin( + layers={ external_wall }, + A={ 10.0 }, + til={Buildings.Types.Tilt.Wall}, + glaSys={ double_glazing }, + wWin={ 1.0 }, + hWin={ 1.0 }, + azi={ 45.0 }), + nConPar=0, + energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial) annotation ( + Placement(transformation(origin = { 0, 0 }, + extent = {{-20, -20}, {20, 20}} +))); + buildings_free_float_single_zone_with_data.Common.Controls.ventilation.OccupancyOccupancy_0 + occupancy_0( occupancy=3600*{7, 19}, + gain=[35; 70; 30], + k=1/6/4 +) annotation ( + Placement(transformation(origin = { -50, 0 }, + extent = {{-10, -10}, {10, 10}} +))); + Buildings.BoundaryConditions.WeatherData.ReaderTMY3 + weather_20(filNam=Modelica.Utilities.Files.loadResource + ("modelica://Buildings/Resources/weatherdata/USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.mos")) + annotation ( + Placement(transformation(origin = { -100, 200 }, + extent = {{-10, -10}, {10, 10}} +))); + buildings_free_float_single_zone_with_data.Common.Controls.ventilation.DataServer + data_bus (redeclare package + Medium = Medium) annotation ( + Placement(transformation(origin = { 179.61576103852005, -107.42783544499112 }, + extent = {{-10, -10}, {10, 10}} +))); + + +equation connect(space_1.qGai_flow,occupancy_0.y) +annotation (Line( +points={{ 0.0, 0.0 } ,{ -25.0, 0.0 } ,{ -25.0, 0.0 } ,{ -50.0, 0.0 } }, +color={255,204,51}, +thickness=0.5, +smooth=Smooth.None)); connect(space_1.weaBus,weather_20.weaBus) +annotation (Line( +points={{ 0.0, 0.0 } ,{ -50.0, 0.0 } ,{ -50.0, 200.0 } ,{ -100.0, 200.0 } }, +thickness=0.05, +smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) +annotation (Line( +points={{ -50.0, 0.0 } ,{ 64.80788051926002, 0.0 } ,{ 64.80788051926002, -107.42783544499112 } ,{ 179.61576103852005, -107.42783544499112 } }, +thickness=0.05, +smooth=Smooth.None)); connect(space_1.heaPorAir,data_bus.port[1]) +annotation (Line( +points={{ 0.0, 0.0 } ,{ 89.80788051926002, 0.0 } ,{ 89.80788051926002, -107.42783544499112 } ,{ 179.61576103852005, -107.42783544499112 } }, +thickness=0.05, +smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) +annotation (Line( +points={{ 0.0, 0.0 } ,{ 89.80788051926002, 0.0 } ,{ 89.80788051926002, -107.42783544499112 } ,{ 179.61576103852005, -107.42783544499112 } }, +thickness=0.05, +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-226.59037209826502,-181.7601518146015},{250.0,250.0}})), Icon( + coordinateSystem(extent={{-226.59037209826502,-181.7601518146015},{250.0,250.0}}))); + annotation ( + Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); +end building; + + +end buildings_free_float_single_zone_with_data; diff --git a/tests/data/buildings_free_float_three_zones.mo b/tests/data/buildings_free_float_three_zones.mo index b4d9b21..c8e2dcb 100644 --- a/tests/data/buildings_free_float_three_zones.mo +++ b/tests/data/buildings_free_float_three_zones.mo @@ -2404,7 +2404,7 @@ package MediumW = Buildings.Media.Water "Medium model"; buildings_free_float_three_zones.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 23.45378112844841, -199.06677235337253 }, + Placement(transformation(origin = { -102.03708430702017, 176.6591251921885 }, extent = {{-10, -10}, {10, 10}} ))); @@ -2468,44 +2468,44 @@ points={{ 500.0, 150.0 } ,{ 200.0, 150.0 } ,{ 200.0, 200.0 } ,{ -100.0, thickness=0.05, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ -13.273109435775794, 0.0 } ,{ -13.273109435775797, -199.06677235337253 } ,{ 23.45378112844841, -199.06677235337253 } }, +points={{ -50.0, 0.0 } ,{ -76.01854215351008, 0.0 } ,{ -76.01854215351008, 176.6591251921885 } ,{ -102.03708430702017, 176.6591251921885 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_1.dataBus,data_bus.dataBus) annotation (Line( -points={{ 200.0, 150.0 } ,{ 111.7268905642242, 150.0 } ,{ 111.7268905642242, -199.06677235337253 } ,{ 23.45378112844841, -199.06677235337253 } }, +points={{ 200.0, 150.0 } ,{ 48.98145784648992, 150.0 } ,{ 48.98145784648992, 176.6591251921885 } ,{ -102.03708430702017, 176.6591251921885 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_2.dataBus,data_bus.dataBus) annotation (Line( -points={{ 450.0, 150.0 } ,{ 236.7268905642242, 150.0 } ,{ 236.72689056422422, -199.06677235337253 } ,{ 23.45378112844841, -199.06677235337253 } }, +points={{ 450.0, 150.0 } ,{ 173.9814578464899, 150.0 } ,{ 173.98145784648995, 176.6591251921885 } ,{ -102.03708430702017, 176.6591251921885 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.heaPorAir,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 11.726890564224204, 0.0 } ,{ 11.726890564224204, -199.06677235337253 } ,{ 23.45378112844841, -199.06677235337253 } }, +points={{ 0.0, 0.0 } ,{ -51.01854215351008, 0.0 } ,{ -51.01854215351008, 176.6591251921885 } ,{ -102.03708430702017, 176.6591251921885 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 11.726890564224204, 0.0 } ,{ 11.726890564224204, -199.06677235337253 } ,{ 23.45378112844841, -199.06677235337253 } }, +points={{ 0.0, 0.0 } ,{ -51.01854215351008, 0.0 } ,{ -51.01854215351008, 176.6591251921885 } ,{ -102.03708430702017, 176.6591251921885 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.heaPorAir,data_bus.port[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 136.72689056422422, 150.0 } ,{ 136.7268905642242, -199.06677235337253 } ,{ 23.45378112844841, -199.06677235337253 } }, +points={{ 250.0, 150.0 } ,{ 73.98145784648992, 150.0 } ,{ 73.98145784648992, 176.6591251921885 } ,{ -102.03708430702017, 176.6591251921885 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.ports[1],data_bus.port_a[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 136.72689056422422, 150.0 } ,{ 136.7268905642242, -199.06677235337253 } ,{ 23.45378112844841, -199.06677235337253 } }, +points={{ 250.0, 150.0 } ,{ 73.98145784648992, 150.0 } ,{ 73.98145784648992, 176.6591251921885 } ,{ -102.03708430702017, 176.6591251921885 } }, thickness=0.05, smooth=Smooth.None)); connect(space_3.heaPorAir,data_bus.port[3]) annotation (Line( -points={{ 500.0, 150.0 } ,{ 261.72689056422416, 150.0 } ,{ 261.7268905642242, -199.06677235337253 } ,{ 23.45378112844841, -199.06677235337253 } }, +points={{ 500.0, 150.0 } ,{ 198.9814578464899, 150.0 } ,{ 198.98145784648995, 176.6591251921885 } ,{ -102.03708430702017, 176.6591251921885 } }, thickness=0.05, smooth=Smooth.None)); connect(space_3.ports[1],data_bus.port_a[3]) annotation (Line( -points={{ 500.0, 150.0 } ,{ 261.72689056422416, 150.0 } ,{ 261.7268905642242, -199.06677235337253 } ,{ 23.45378112844841, -199.06677235337253 } }, +points={{ 500.0, 150.0 } ,{ 198.9814578464899, 150.0 } ,{ 198.98145784648995, 176.6591251921885 } ,{ -102.03708430702017, 176.6591251921885 } }, thickness=0.05, -smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-245.88970836710064,-249.06677235337253},{550.0,250.0}})), Icon( - coordinateSystem(extent={{-245.88970836710064,-249.06677235337253},{550.0,250.0}}))); +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-241.23363911137133,-241.89757461879515},{550.0,250.0}})), Icon( + coordinateSystem(extent={{-241.23363911137133,-241.89757461879515},{550.0,250.0}}))); annotation ( - Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
win1_110.045.0wall
namedouble_glazing
Window
win2_110.090.0wall
namedouble_glazing
Window
floor_110.090.0floor
nameexternal_wall
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
internal_space_1_space_310.010.0wall
nameinternal_wall
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_1
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_210.0135.0wall
nameexternal_wall
ExternalWall
w2_210.00.0wall
nameexternal_wall
ExternalWall
w3_210.090.0wall
nameexternal_wall
ExternalWall
win1_210.00.0wall
namedouble_glazing
Window
win2_210.090.0wall
namedouble_glazing
Window
floor_210.090.0floor
nameexternal_wall
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
internal_space_2_space_310.010.0wall
nameinternal_wall
InternalElement
namespace_3
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_2
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_310.0135.0wall
nameexternal_wall
ExternalWall
w2_310.00.0wall
nameexternal_wall
ExternalWall
w3_310.045.0wall
nameexternal_wall
ExternalWall
w4_310.045.0wall
namedouble_glazing
Window
floor_310.090.0floor
nameexternal_wall
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_310.010.0wall
nameinternal_wall
InternalElement
internal_space_2_space_310.010.0wall
nameinternal_wall
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); + Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
win1_110.045.0wall
namedouble_glazing
Window
win2_110.090.0wall
namedouble_glazing
Window
floor_110.090.0floor
nameexternal_wall
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
internal_space_1_space_310.010.0wall
nameinternal_wall
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_1
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_210.0135.0wall
nameexternal_wall
ExternalWall
w2_210.00.0wall
nameexternal_wall
ExternalWall
w3_210.090.0wall
nameexternal_wall
ExternalWall
win1_210.00.0wall
namedouble_glazing
Window
win2_210.090.0wall
namedouble_glazing
Window
floor_210.090.0floor
nameexternal_wall
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
internal_space_2_space_310.010.0wall
nameinternal_wall
InternalElement
namespace_3
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_2
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_310.0135.0wall
nameexternal_wall
ExternalWall
w2_310.00.0wall
nameexternal_wall
ExternalWall
w3_310.045.0wall
nameexternal_wall
ExternalWall
w4_310.045.0wall
namedouble_glazing
Window
floor_310.090.0floor
nameexternal_wall
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_310.010.0wall
nameinternal_wall
InternalElement
internal_space_2_space_310.010.0wall
nameinternal_wall
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); end building; diff --git a/tests/data/buildings_free_float_two_zones.mo b/tests/data/buildings_free_float_two_zones.mo index cd0fa21..a0c3eb5 100644 --- a/tests/data/buildings_free_float_two_zones.mo +++ b/tests/data/buildings_free_float_two_zones.mo @@ -2318,7 +2318,7 @@ package MediumW = Buildings.Media.Water "Medium model"; buildings_free_float_two_zones.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 195.0400483561135, 3.7923755976852904 }, + Placement(transformation(origin = { 178.48717751813723, 71.44390196119032 }, extent = {{-10, -10}, {10, 10}} ))); @@ -2353,32 +2353,32 @@ points={{ 250.0, 150.0 } ,{ 75.0, 150.0 } ,{ 75.0, 200.0 } ,{ -100.0, 2 thickness=0.05, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ 72.52002417805674, 0.0 } ,{ 72.52002417805674, 3.7923755976852904 } ,{ 195.0400483561135, 3.7923755976852904 } }, +points={{ -50.0, 0.0 } ,{ 64.24358875906861, 0.0 } ,{ 64.24358875906861, 71.44390196119032 } ,{ 178.48717751813723, 71.44390196119032 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_1.dataBus,data_bus.dataBus) annotation (Line( -points={{ 200.0, 150.0 } ,{ 197.52002417805676, 150.0 } ,{ 197.52002417805676, 3.7923755976852904 } ,{ 195.0400483561135, 3.7923755976852904 } }, +points={{ 200.0, 150.0 } ,{ 189.24358875906861, 150.0 } ,{ 189.24358875906861, 71.44390196119032 } ,{ 178.48717751813723, 71.44390196119032 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.heaPorAir,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 97.52002417805674, 0.0 } ,{ 97.52002417805674, 3.7923755976852904 } ,{ 195.0400483561135, 3.7923755976852904 } }, +points={{ 0.0, 0.0 } ,{ 89.24358875906861, 0.0 } ,{ 89.24358875906861, 71.44390196119032 } ,{ 178.48717751813723, 71.44390196119032 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 97.52002417805674, 0.0 } ,{ 97.52002417805674, 3.7923755976852904 } ,{ 195.0400483561135, 3.7923755976852904 } }, +points={{ 0.0, 0.0 } ,{ 89.24358875906861, 0.0 } ,{ 89.24358875906861, 71.44390196119032 } ,{ 178.48717751813723, 71.44390196119032 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.heaPorAir,data_bus.port[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 222.52002417805676, 150.0 } ,{ 222.52002417805676, 3.7923755976852904 } ,{ 195.0400483561135, 3.7923755976852904 } }, +points={{ 250.0, 150.0 } ,{ 214.24358875906861, 150.0 } ,{ 214.24358875906861, 71.44390196119032 } ,{ 178.48717751813723, 71.44390196119032 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.ports[1],data_bus.port_a[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 222.52002417805676, 150.0 } ,{ 222.52002417805676, 3.7923755976852904 } ,{ 195.0400483561135, 3.7923755976852904 } }, +points={{ 250.0, 150.0 } ,{ 214.24358875906861, 150.0 } ,{ 214.24358875906861, 71.44390196119032 } ,{ 178.48717751813723, 71.44390196119032 } }, thickness=0.05, -smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-247.12313331548916,-242.62688923975998},{300.0,250.0}})), Icon( - coordinateSystem(extent={{-247.12313331548916,-242.62688923975998},{300.0,250.0}}))); +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-218.1440226373386,-248.50638131816442},{300.0,250.0}})), Icon( + coordinateSystem(extent={{-218.1440226373386,-248.50638131816442},{300.0,250.0}}))); annotation ( - Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_1
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_210.0135.0wall
nameexternal_wall
ExternalWall
w2_210.00.0wall
nameexternal_wall
ExternalWall
w3_210.090.0wall
nameexternal_wall
ExternalWall
floor_110.090.0floor
nameexternal_wall
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); + Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_1
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_210.0135.0wall
nameexternal_wall
ExternalWall
w2_210.00.0wall
nameexternal_wall
ExternalWall
w3_210.090.0wall
nameexternal_wall
ExternalWall
floor_110.090.0floor
nameexternal_wall
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); end building; diff --git a/tests/data/buildings_simple_hydronic.mo b/tests/data/buildings_simple_hydronic.mo index 6317014..c5d83dc 100644 --- a/tests/data/buildings_simple_hydronic.mo +++ b/tests/data/buildings_simple_hydronic.mo @@ -563,12 +563,12 @@ iconTransformation(origin = {-2, -42}, extent = {{-110, -9}, {-90, 9}}))); Cont Modelica.Blocks.Sources.RealExpression TCooSetEmission_valve_control (y=298.15); -Modelica.Blocks.Sources.RealExpression - TAirOutBoiler_control - (y=0.0); Modelica.Blocks.Sources.RealExpression TColSetThree_way_valve_control (y=363.15); +Modelica.Blocks.Sources.RealExpression + TAirOutBoiler_control + (y=0.0); Modelica.Blocks.Sources.BooleanExpression triggerThree_way_valve_control (y=true); @@ -579,10 +579,10 @@ connect(dataBus.TZonSpace_1, TRoo[1].T); connect(dataBus.ppmCO2Space_1, TRoo1[1].ppm); connect(dataBus.TCooSetSpace_1, TCooSetEmission_valve_control.y); -connect(dataBus.TAirOutBoiler, -TAirOutBoiler_control.y); connect(dataBus.TColSetThree_way_valve_control, TColSetThree_way_valve_control.y); +connect(dataBus.TAirOutBoiler, +TAirOutBoiler_control.y); connect(dataBus.triggerThree_way_valve_control, triggerThree_way_valve_control.y); end DataServer; @@ -2473,7 +2473,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); buildings_simple_hydronic.Common.Controls.ventilation.EmissionControlEmission_valve_control emission_valve_control annotation ( - Placement(transformation(origin = { 111.00072923407974, 170.61549863356632 }, + Placement(transformation(origin = { -1.1614198458157337, -199.99999999999997 }, extent = {{-10, -10}, {10, 10}} ))); buildings_simple_hydronic.Common.Controls.ventilation.OccupancyOccupancy_0 @@ -2585,7 +2585,7 @@ redeclare package MediumW = MediumW) "Boiler" annotation ( buildings_simple_hydronic.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 140.34707351858114, -141.99743108852826 }, + Placement(transformation(origin = { 110.79837855275669, 177.88559610656128 }, extent = {{-10, -10}, {10, 10}} ))); @@ -2616,7 +2616,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve.y,emission_valve_control.y) annotation (Line( -points={{ 0.0, -75.0 } ,{ 55.50036461703987, -75.0 } ,{ 55.50036461703987, 170.61549863356632 } ,{ 111.00072923407974, 170.61549863356632 } }, +points={{ 0.0, -75.0 } ,{ -0.5807099229078668, -75.0 } ,{ -0.5807099229078668, -199.99999999999997 } ,{ -1.1614198458157337, -199.99999999999997 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve.port_b,emission.port_a) @@ -2676,36 +2676,36 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(emission_valve_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ 111.00072923407974, 170.61549863356632 } ,{ 125.67390137633043, 170.61549863356632 } ,{ 125.67390137633043, -141.99743108852826 } ,{ 140.34707351858114, -141.99743108852826 } }, +points={{ -1.1614198458157337, -199.99999999999997 } ,{ 54.81847935347047, -199.99999999999997 } ,{ 54.81847935347048, 177.88559610656128 } ,{ 110.79837855275669, 177.88559610656128 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ 45.17353675929057, 0.0 } ,{ 45.17353675929057, -141.99743108852826 } ,{ 140.34707351858114, -141.99743108852826 } }, +points={{ -50.0, 0.0 } ,{ 30.399189276378337, 0.0 } ,{ 30.39918927637835, 177.88559610656128 } ,{ 110.79837855275669, 177.88559610656128 } }, thickness=0.05, smooth=Smooth.None)); connect(three_way_valve_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -250.0, -275.0 } ,{ -54.826463240709415, -275.0 } ,{ -54.826463240709444, -141.99743108852826 } ,{ 140.34707351858114, -141.99743108852826 } }, +points={{ -250.0, -275.0 } ,{ -69.60081072362166, -275.0 } ,{ -69.60081072362165, 177.88559610656128 } ,{ 110.79837855275669, 177.88559610656128 } }, thickness=0.05, smooth=Smooth.None)); connect(boiler_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ 180.0, -275.0 } ,{ 160.17353675929058, -275.0 } ,{ 160.17353675929058, -141.99743108852826 } ,{ 140.34707351858114, -141.99743108852826 } }, +points={{ 180.0, -275.0 } ,{ 145.39918927637834, -275.0 } ,{ 145.39918927637834, 177.88559610656128 } ,{ 110.79837855275669, 177.88559610656128 } }, thickness=0.05, smooth=Smooth.None)); connect(pump_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -350.0, -375.0 } ,{ -104.82646324070942, -375.0 } ,{ -104.82646324070944, -141.99743108852826 } ,{ 140.34707351858114, -141.99743108852826 } }, +points={{ -350.0, -375.0 } ,{ -119.60081072362166, -375.0 } ,{ -119.60081072362165, 177.88559610656128 } ,{ 110.79837855275669, 177.88559610656128 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.heaPorAir,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 70.17353675929057, 0.0 } ,{ 70.17353675929057, -141.99743108852826 } ,{ 140.34707351858114, -141.99743108852826 } }, +points={{ 0.0, 0.0 } ,{ 55.399189276378344, 0.0 } ,{ 55.399189276378344, 177.88559610656128 } ,{ 110.79837855275669, 177.88559610656128 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 70.17353675929057, 0.0 } ,{ 70.17353675929057, -141.99743108852826 } ,{ 140.34707351858114, -141.99743108852826 } }, +points={{ 0.0, 0.0 } ,{ 55.399189276378344, 0.0 } ,{ 55.399189276378344, 177.88559610656128 } ,{ 110.79837855275669, 177.88559610656128 } }, thickness=0.05, smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-400.0,-425.0},{280.0,250.0}})), Icon( coordinateSystem(extent={{-400.0,-425.0},{280.0,250.0}}))); annotation ( - Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
emissions
nameparameterstype
valve
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
emission
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameboiler
parameters
scaFacRad1.5
dTBoi_nominal20
dTRad_nominal10
a{0.9}
effCurBuildings.Fluid.Types.EfficiencyCurves.Constant
T_nominal353.15
fueBuildings.Fluid.Data.Fuels.HeatingOilLowerHeatingValue()
Q_flow_nominal2000
dp_nominal5000
linearizeFlowResistancefalse
deltaM0.1
show_Tfalse
VTan0.2
hTan2
nSeg4
dIns0.002
dp(3000 + 2000)*{2,1}
nominal_mass_flow_rate_boiler0.03571428571428571
nominal_mass_flow_radiator_loop0.07142857142857142
V_flow0.03571428571428571/1000*{0.5,1}
typeBoiler

Conclusions

Conclusions

")); + Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
emissions
nameparameterstype
valve
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
emission
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameboiler
parameters
scaFacRad1.5
dTBoi_nominal20
dTRad_nominal10
a{0.9}
effCurBuildings.Fluid.Types.EfficiencyCurves.Constant
T_nominal353.15
fueBuildings.Fluid.Data.Fuels.HeatingOilLowerHeatingValue()
Q_flow_nominal2000
dp_nominal5000
linearizeFlowResistancefalse
deltaM0.1
show_Tfalse
VTan0.2
hTan2
nSeg4
dIns0.002
dp(3000 + 2000)*{2,1}
nominal_mass_flow_rate_boiler0.03571428571428571
nominal_mass_flow_radiator_loop0.07142857142857142
V_flow0.03571428571428571/1000*{0.5,1}
typeBoiler

Conclusions

Conclusions

")); end building; diff --git a/tests/data/buildings_simple_hydronic_three_zones.mo b/tests/data/buildings_simple_hydronic_three_zones.mo index 091a5c9..58ed962 100644 --- a/tests/data/buildings_simple_hydronic_three_zones.mo +++ b/tests/data/buildings_simple_hydronic_three_zones.mo @@ -715,29 +715,29 @@ port_a(redeclare package Medium iconTransformation(origin = {-2, -42}, extent = {{-110, -9}, {-90, 9}}))); Controls.BaseClasses.DataBus dataBus annotation (Placement(transformation( extent={{-120,-18},{-80,22}}), iconTransformation(extent={{-120,62},{-78,98}}))); +Modelica.Blocks.Sources.RealExpression + TCooSetEmission_valve_control + (y=298.15); Modelica.Blocks.Sources.RealExpression TAirOutBoiler_control (y=0.0); Modelica.Blocks.Sources.RealExpression - TColSetThree_way_valve_control - (y=363.15); + TCooSetEmission_valve_control_3 + (y=298.15); Modelica.Blocks.Sources.RealExpression TColSetThree_way_valve_control_2 (y=363.15); Modelica.Blocks.Sources.RealExpression - TCooSetEmission_valve_control_3 - (y=298.15); + TColSetThree_way_valve_control + (y=363.15); Modelica.Blocks.Sources.RealExpression TCooSetEmission_valve_control_2 (y=298.15); -Modelica.Blocks.Sources.RealExpression - TCooSetEmission_valve_control - (y=298.15); Modelica.Blocks.Sources.BooleanExpression - triggerThree_way_valve_control + triggerThree_way_valve_control_2 (y=true); Modelica.Blocks.Sources.BooleanExpression - triggerThree_way_valve_control_2 + triggerThree_way_valve_control (y=true); equation connect(port[1],TRoo[1]. port); @@ -752,22 +752,22 @@ connect(dataBus.TZonSpace_3, TRoo[3].T); connect(dataBus.ppmCO2Space_1, TRoo1[1].ppm); connect(dataBus.ppmCO2Space_2, TRoo1[2].ppm); connect(dataBus.ppmCO2Space_3, TRoo1[3].ppm); +connect(dataBus.TCooSetSpace_1, +TCooSetEmission_valve_control.y); connect(dataBus.TAirOutBoiler, TAirOutBoiler_control.y); -connect(dataBus.TColSetThree_way_valve_control, -TColSetThree_way_valve_control.y); -connect(dataBus.TColSetThree_way_valve_control_2, -TColSetThree_way_valve_control_2.y); connect(dataBus.TCooSetSpace_3, TCooSetEmission_valve_control_3.y); +connect(dataBus.TColSetThree_way_valve_control_2, +TColSetThree_way_valve_control_2.y); +connect(dataBus.TColSetThree_way_valve_control, +TColSetThree_way_valve_control.y); connect(dataBus.TCooSetSpace_2, TCooSetEmission_valve_control_2.y); -connect(dataBus.TCooSetSpace_1, -TCooSetEmission_valve_control.y); -connect(dataBus.triggerThree_way_valve_control, -triggerThree_way_valve_control.y); connect(dataBus.triggerThree_way_valve_control_2, triggerThree_way_valve_control_2.y); +connect(dataBus.triggerThree_way_valve_control, +triggerThree_way_valve_control.y); end DataServer; @@ -2673,7 +2673,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); buildings_simple_hydronic_three_zones.Common.Controls.ventilation.EmissionControlEmission_valve_control emission_valve_control annotation ( - Placement(transformation(origin = { 102.80386397603183, -147.5076558930351 }, + Placement(transformation(origin = { -190.6939527929451, 7.548666918951189 }, extent = {{-10, -10}, {10, 10}} ))); buildings_simple_hydronic_three_zones.Common.Controls.ventilation.OccupancyOccupancy_0 @@ -2764,7 +2764,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); buildings_simple_hydronic_three_zones.Common.Controls.ventilation.EmissionControlEmission_valve_control_2 emission_valve_control_2 annotation ( - Placement(transformation(origin = { -153.73598560447863, -132.08351174581958 }, + Placement(transformation(origin = { -48.776124054468795, 177.724973706343 }, extent = {{-10, -10}, {10, 10}} ))); buildings_simple_hydronic_three_zones.Common.Controls.ventilation.OccupancyOccupancy_1 @@ -2855,7 +2855,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); buildings_simple_hydronic_three_zones.Common.Controls.ventilation.EmissionControlEmission_valve_control_3 emission_valve_control_3 annotation ( - Placement(transformation(origin = { -86.86791323684565, -183.0117759737984 }, + Placement(transformation(origin = { 27.81312644679909, -184.90546772873046 }, extent = {{-10, -10}, {10, 10}} ))); buildings_simple_hydronic_three_zones.Common.Controls.ventilation.OccupancyOccupancy_2 @@ -3036,7 +3036,7 @@ redeclare package MediumW = MediumW) "Boiler" annotation ( buildings_simple_hydronic_three_zones.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 111.5765794380722, 174.256268108397 }, + Placement(transformation(origin = { -21.998554729576362, -198.13518227497354 }, extent = {{-10, -10}, {10, 10}} ))); @@ -3077,7 +3077,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve.y,emission_valve_control.y) annotation (Line( -points={{ 0.0, -75.0 } ,{ 51.40193198801592, -75.0 } ,{ 51.40193198801592, -147.5076558930351 } ,{ 102.80386397603183, -147.5076558930351 } }, +points={{ 0.0, -75.0 } ,{ -95.34697639647256, -75.0 } ,{ -95.34697639647256, 7.548666918951189 } ,{ -190.6939527929451, 7.548666918951189 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve.port_b,emission.port_a) @@ -3121,7 +3121,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_2.y,emission_valve_control_2.y) annotation (Line( -points={{ 250.0, 75.0 } ,{ 48.132007197760686, 75.0 } ,{ 48.132007197760686, -132.08351174581958 } ,{ -153.73598560447863, -132.08351174581958 } }, +points={{ 250.0, 75.0 } ,{ 100.61193797276559, 75.0 } ,{ 100.61193797276562, 177.724973706343 } ,{ -48.776124054468795, 177.724973706343 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_2.port_b,emission_2.port_a) @@ -3165,7 +3165,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_3.y,emission_valve_control_3.y) annotation (Line( -points={{ 500.0, 75.0 } ,{ 206.56604338157717, 75.0 } ,{ 206.56604338157717, -183.0117759737984 } ,{ -86.86791323684565, -183.0117759737984 } }, +points={{ 500.0, 75.0 } ,{ 263.90656322339953, 75.0 } ,{ 263.90656322339953, -184.90546772873046 } ,{ 27.81312644679909, -184.90546772873046 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_3.port_b,emission_3.port_a) @@ -3265,72 +3265,72 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(emission_valve_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ 102.80386397603183, -147.5076558930351 } ,{ 107.19022170705202, -147.5076558930351 } ,{ 107.19022170705202, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ -190.6939527929451, 7.548666918951189 } ,{ -106.34625376126074, 7.548666918951189 } ,{ -106.34625376126073, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ 30.7882897190361, 0.0 } ,{ 30.7882897190361, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ -50.0, 0.0 } ,{ -35.999277364788185, 0.0 } ,{ -35.999277364788185, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(emission_valve_control_2.dataBus,data_bus.dataBus) annotation (Line( -points={{ -153.73598560447863, -132.08351174581958 } ,{ -21.079703083203214, -132.08351174581958 } ,{ -21.079703083203214, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ -48.776124054468795, 177.724973706343 } ,{ -35.38733939202258, 177.724973706343 } ,{ -35.38733939202258, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_1.dataBus,data_bus.dataBus) annotation (Line( -points={{ 200.0, 150.0 } ,{ 155.7882897190361, 150.0 } ,{ 155.7882897190361, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ 200.0, 150.0 } ,{ 89.00072263521182, 150.0 } ,{ 89.00072263521182, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(emission_valve_control_3.dataBus,data_bus.dataBus) annotation (Line( -points={{ -86.86791323684565, -183.0117759737984 } ,{ 12.354333100613275, -183.0117759737984 } ,{ 12.354333100613275, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ 27.81312644679909, -184.90546772873046 } ,{ 2.9072858586113632, -184.90546772873046 } ,{ 2.9072858586113632, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_2.dataBus,data_bus.dataBus) annotation (Line( -points={{ 450.0, 150.0 } ,{ 280.78828971903613, 150.0 } ,{ 280.78828971903613, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ 450.0, 150.0 } ,{ 214.00072263521182, 150.0 } ,{ 214.00072263521182, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(three_way_valve_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -250.0, -275.0 } ,{ -69.2117102809639, -275.0 } ,{ -69.2117102809639, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ -250.0, -275.0 } ,{ -135.99927736478818, -275.0 } ,{ -135.99927736478818, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(three_way_valve_control_2.dataBus,data_bus.dataBus) annotation (Line( -points={{ 250.0, -125.0 } ,{ 180.7882897190361, -125.0 } ,{ 180.7882897190361, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ 250.0, -125.0 } ,{ 114.00072263521182, -125.0 } ,{ 114.00072263521182, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(boiler_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ 180.0, -275.0 } ,{ 145.7882897190361, -275.0 } ,{ 145.7882897190361, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ 180.0, -275.0 } ,{ 79.00072263521182, -275.0 } ,{ 79.00072263521182, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(pump_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -350.0, -375.0 } ,{ -119.2117102809639, -375.0 } ,{ -119.2117102809639, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ -350.0, -375.0 } ,{ -185.99927736478818, -375.0 } ,{ -185.99927736478818, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.heaPorAir,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 55.7882897190361, 0.0 } ,{ 55.7882897190361, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ 0.0, 0.0 } ,{ -10.999277364788181, 0.0 } ,{ -10.999277364788181, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 55.7882897190361, 0.0 } ,{ 55.7882897190361, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ 0.0, 0.0 } ,{ -10.999277364788181, 0.0 } ,{ -10.999277364788181, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.heaPorAir,data_bus.port[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 180.7882897190361, 150.0 } ,{ 180.7882897190361, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ 250.0, 150.0 } ,{ 114.00072263521182, 150.0 } ,{ 114.00072263521182, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.ports[1],data_bus.port_a[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 180.7882897190361, 150.0 } ,{ 180.7882897190361, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ 250.0, 150.0 } ,{ 114.00072263521182, 150.0 } ,{ 114.00072263521182, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(space_3.heaPorAir,data_bus.port[3]) annotation (Line( -points={{ 500.0, 150.0 } ,{ 305.78828971903613, 150.0 } ,{ 305.78828971903613, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ 500.0, 150.0 } ,{ 239.00072263521184, 150.0 } ,{ 239.0007226352118, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None)); connect(space_3.ports[1],data_bus.port_a[3]) annotation (Line( -points={{ 500.0, 150.0 } ,{ 305.78828971903613, 150.0 } ,{ 305.78828971903613, 174.256268108397 } ,{ 111.5765794380722, 174.256268108397 } }, +points={{ 500.0, 150.0 } ,{ 239.00072263521184, 150.0 } ,{ 239.0007226352118, -198.13518227497354 } ,{ -21.998554729576362, -198.13518227497354 } }, thickness=0.05, smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-400.0,-425.0},{680.0,250.0}})), Icon( coordinateSystem(extent={{-400.0,-425.0},{680.0,250.0}}))); annotation ( - Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
emissions
nameparameterstype
valve
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
emission
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
internal_space_1_space_310.010.0wall
nameinternal_wall
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_1
parameters
emissions
nameparameterstype
valve_2
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
emission_2
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_210.0135.0wall
nameexternal_wall
ExternalWall
w2_210.00.0wall
nameexternal_wall
ExternalWall
w3_210.045.0wall
nameexternal_wall
ExternalWall
w4_210.090.0wall
nameexternal_wall
ExternalWall
floor_310.090.0floor
nameexternal_wall
FloorOnGround
win1_21.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
internal_space_2_space_310.010.0wall
nameinternal_wall
InternalElement
namespace_3
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_2
parameters
emissions
nameparameterstype
valve_3
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
emission_3
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_310.0135.0wall
nameexternal_wall
ExternalWall
w2_310.00.0wall
nameexternal_wall
ExternalWall
w3_310.045.0wall
nameexternal_wall
ExternalWall
w4_310.090.0wall
nameexternal_wall
ExternalWall
floor_410.090.0floor
nameexternal_wall
FloorOnGround
win1_31.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_310.010.0wall
nameinternal_wall
InternalElement
internal_space_2_space_310.010.0wall
nameinternal_wall
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameboiler
parameters
scaFacRad1.5
dTBoi_nominal20
dTRad_nominal10
a{0.9}
effCurBuildings.Fluid.Types.EfficiencyCurves.Constant
T_nominal353.15
fueBuildings.Fluid.Data.Fuels.HeatingOilLowerHeatingValue()
Q_flow_nominal2000
dp_nominal5000
linearizeFlowResistancefalse
deltaM0.1
show_Tfalse
VTan0.2
hTan2
nSeg4
dIns0.002
dp(3000 + 2000)*{2,1}
nominal_mass_flow_rate_boiler0.03571428571428571
nominal_mass_flow_radiator_loop0.07142857142857142
V_flow0.03571428571428571/1000*{0.5,1}
typeBoiler

Conclusions

Conclusions

")); + Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
emissions
nameparameterstype
valve
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
emission
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
internal_space_1_space_310.010.0wall
nameinternal_wall
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_1
parameters
emissions
nameparameterstype
valve_2
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
emission_2
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_210.0135.0wall
nameexternal_wall
ExternalWall
w2_210.00.0wall
nameexternal_wall
ExternalWall
w3_210.045.0wall
nameexternal_wall
ExternalWall
w4_210.090.0wall
nameexternal_wall
ExternalWall
floor_310.090.0floor
nameexternal_wall
FloorOnGround
win1_21.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
internal_space_2_space_310.010.0wall
nameinternal_wall
InternalElement
namespace_3
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_2
parameters
emissions
nameparameterstype
valve_3
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
emission_3
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_310.0135.0wall
nameexternal_wall
ExternalWall
w2_310.00.0wall
nameexternal_wall
ExternalWall
w3_310.045.0wall
nameexternal_wall
ExternalWall
w4_310.090.0wall
nameexternal_wall
ExternalWall
floor_410.090.0floor
nameexternal_wall
FloorOnGround
win1_31.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_310.010.0wall
nameinternal_wall
InternalElement
internal_space_2_space_310.010.0wall
nameinternal_wall
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameboiler
parameters
scaFacRad1.5
dTBoi_nominal20
dTRad_nominal10
a{0.9}
effCurBuildings.Fluid.Types.EfficiencyCurves.Constant
T_nominal353.15
fueBuildings.Fluid.Data.Fuels.HeatingOilLowerHeatingValue()
Q_flow_nominal2000
dp_nominal5000
linearizeFlowResistancefalse
deltaM0.1
show_Tfalse
VTan0.2
hTan2
nSeg4
dIns0.002
dp(3000 + 2000)*{2,1}
nominal_mass_flow_rate_boiler0.03571428571428571
nominal_mass_flow_radiator_loop0.07142857142857142
V_flow0.03571428571428571/1000*{0.5,1}
typeBoiler

Conclusions

Conclusions

")); end building; diff --git a/tests/data/buildings_two_rooms_with_storage.mo b/tests/data/buildings_two_rooms_with_storage.mo index b2aab1b..1af8773 100644 --- a/tests/data/buildings_two_rooms_with_storage.mo +++ b/tests/data/buildings_two_rooms_with_storage.mo @@ -631,12 +631,12 @@ Modelica.Blocks.Sources.RealExpression Modelica.Blocks.Sources.RealExpression TCooSetEmission_valve_control (y=298.15); -Modelica.Blocks.Sources.RealExpression - TAirOutBoiler_control - (y=0.0); Modelica.Blocks.Sources.RealExpression TColSetThree_way_valve_control (y=363.15); +Modelica.Blocks.Sources.RealExpression + TAirOutBoiler_control + (y=0.0); Modelica.Blocks.Sources.BooleanExpression triggerThree_way_valve_control (y=true); @@ -653,10 +653,10 @@ connect(dataBus.TCooSetSpace_2, TCooSetEmission_valve_control_2.y); connect(dataBus.TCooSetSpace_1, TCooSetEmission_valve_control.y); -connect(dataBus.TAirOutBoiler, -TAirOutBoiler_control.y); connect(dataBus.TColSetThree_way_valve_control, TColSetThree_way_valve_control.y); +connect(dataBus.TAirOutBoiler, +TAirOutBoiler_control.y); connect(dataBus.triggerThree_way_valve_control, triggerThree_way_valve_control.y); end DataServer; @@ -2564,7 +2564,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); buildings_two_rooms_with_storage.Common.Controls.ventilation.EmissionControlEmission_valve_control emission_valve_control annotation ( - Placement(transformation(origin = { -183.43661697088237, 1.5424485608542826 }, + Placement(transformation(origin = { 73.47205426829684, -163.2330310765357 }, extent = {{-10, -10}, {10, 10}} ))); buildings_two_rooms_with_storage.Common.Controls.ventilation.OccupancyOccupancy_0 @@ -2655,7 +2655,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); buildings_two_rooms_with_storage.Common.Controls.ventilation.EmissionControlEmission_valve_control_2 emission_valve_control_2 annotation ( - Placement(transformation(origin = { -43.51682048313197, 191.48124180685673 }, + Placement(transformation(origin = { 20.052904373409348, 193.98809711568768 }, extent = {{-10, -10}, {10, 10}} ))); buildings_two_rooms_with_storage.Common.Controls.ventilation.OccupancyOccupancy_1 @@ -2776,7 +2776,7 @@ redeclare package MediumW = MediumW) "Boiler" annotation ( buildings_two_rooms_with_storage.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { -194.43192799984902, -38.922151321567 }, + Placement(transformation(origin = { -166.19659850150762, -53.65076340189956 }, extent = {{-10, -10}, {10, 10}} ))); @@ -2812,7 +2812,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve.y,emission_valve_control.y) annotation (Line( -points={{ 0.0, -75.0 } ,{ -91.71830848544118, -75.0 } ,{ -91.71830848544118, 1.5424485608542826 } ,{ -183.43661697088237, 1.5424485608542826 } }, +points={{ 0.0, -75.0 } ,{ 36.73602713414842, -75.0 } ,{ 36.73602713414842, -163.2330310765357 } ,{ 73.47205426829684, -163.2330310765357 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve.port_b,emission.port_a) @@ -2851,7 +2851,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_2.y,emission_valve_control_2.y) annotation (Line( -points={{ 250.0, 75.0 } ,{ 103.241589758434, 75.0 } ,{ 103.24158975843403, 191.48124180685673 } ,{ -43.51682048313197, 191.48124180685673 } }, +points={{ 250.0, 75.0 } ,{ 135.02645218670466, 75.0 } ,{ 135.02645218670466, 193.98809711568768 } ,{ 20.052904373409348, 193.98809711568768 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_2.port_b,emission_2.port_a) @@ -2916,52 +2916,52 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(emission_valve_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -183.43661697088237, 1.5424485608542826 } ,{ -188.93427248536568, 1.5424485608542826 } ,{ -188.93427248536568, -38.922151321567 } ,{ -194.43192799984902, -38.922151321567 } }, +points={{ 73.47205426829684, -163.2330310765357 } ,{ -46.36227211660538, -163.2330310765357 } ,{ -46.362272116605396, -53.65076340189956 } ,{ -166.19659850150762, -53.65076340189956 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ -122.21596399992451, 0.0 } ,{ -122.21596399992451, -38.922151321567 } ,{ -194.43192799984902, -38.922151321567 } }, +points={{ -50.0, 0.0 } ,{ -108.09829925075381, 0.0 } ,{ -108.09829925075381, -53.65076340189956 } ,{ -166.19659850150762, -53.65076340189956 } }, thickness=0.05, smooth=Smooth.None)); connect(emission_valve_control_2.dataBus,data_bus.dataBus) annotation (Line( -points={{ -43.51682048313197, 191.48124180685673 } ,{ -118.9743742414905, 191.48124180685673 } ,{ -118.9743742414905, -38.922151321567 } ,{ -194.43192799984902, -38.922151321567 } }, +points={{ 20.052904373409348, 193.98809711568768 } ,{ -73.07184706404914, 193.98809711568768 } ,{ -73.07184706404914, -53.65076340189956 } ,{ -166.19659850150762, -53.65076340189956 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_1.dataBus,data_bus.dataBus) annotation (Line( -points={{ 200.0, 150.0 } ,{ 2.7840360000755027, 150.0 } ,{ 2.7840360000754742, -38.922151321567 } ,{ -194.43192799984902, -38.922151321567 } }, +points={{ 200.0, 150.0 } ,{ 16.901700749246174, 150.0 } ,{ 16.901700749246203, -53.65076340189956 } ,{ -166.19659850150762, -53.65076340189956 } }, thickness=0.05, smooth=Smooth.None)); connect(pump_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -250.0, -275.0 } ,{ -222.2159639999245, -275.0 } ,{ -222.2159639999245, -38.922151321567 } ,{ -194.43192799984902, -38.922151321567 } }, +points={{ -250.0, -275.0 } ,{ -208.09829925075383, -275.0 } ,{ -208.09829925075383, -53.65076340189956 } ,{ -166.19659850150762, -53.65076340189956 } }, thickness=0.05, smooth=Smooth.None)); connect(three_way_valve_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -350.0, -375.0 } ,{ -272.2159639999245, -375.0 } ,{ -272.2159639999245, -38.922151321567 } ,{ -194.43192799984902, -38.922151321567 } }, +points={{ -350.0, -375.0 } ,{ -258.0982992507538, -375.0 } ,{ -258.0982992507538, -53.65076340189956 } ,{ -166.19659850150762, -53.65076340189956 } }, thickness=0.05, smooth=Smooth.None)); connect(boiler_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -450.0, -475.0 } ,{ -322.2159639999245, -475.0 } ,{ -322.2159639999245, -38.922151321567 } ,{ -194.43192799984902, -38.922151321567 } }, +points={{ -450.0, -475.0 } ,{ -308.0982992507538, -475.0 } ,{ -308.0982992507538, -53.65076340189956 } ,{ -166.19659850150762, -53.65076340189956 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.heaPorAir,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ -97.21596399992451, 0.0 } ,{ -97.21596399992451, -38.922151321567 } ,{ -194.43192799984902, -38.922151321567 } }, +points={{ 0.0, 0.0 } ,{ -83.09829925075381, 0.0 } ,{ -83.09829925075381, -53.65076340189956 } ,{ -166.19659850150762, -53.65076340189956 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ -97.21596399992451, 0.0 } ,{ -97.21596399992451, -38.922151321567 } ,{ -194.43192799984902, -38.922151321567 } }, +points={{ 0.0, 0.0 } ,{ -83.09829925075381, 0.0 } ,{ -83.09829925075381, -53.65076340189956 } ,{ -166.19659850150762, -53.65076340189956 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.heaPorAir,data_bus.port[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 27.784036000075503, 150.0 } ,{ 27.784036000075474, -38.922151321567 } ,{ -194.43192799984902, -38.922151321567 } }, +points={{ 250.0, 150.0 } ,{ 41.901700749246174, 150.0 } ,{ 41.9017007492462, -53.65076340189956 } ,{ -166.19659850150762, -53.65076340189956 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.ports[1],data_bus.port_a[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 27.784036000075503, 150.0 } ,{ 27.784036000075474, -38.922151321567 } ,{ -194.43192799984902, -38.922151321567 } }, +points={{ 250.0, 150.0 } ,{ 41.901700749246174, 150.0 } ,{ 41.9017007492462, -53.65076340189956 } ,{ -166.19659850150762, -53.65076340189956 } }, thickness=0.05, smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-500.0,-525.0},{330.0,250.0}})), Icon( coordinateSystem(extent={{-500.0,-525.0},{330.0,250.0}}))); annotation ( - Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
emissions
nameparameterstype
valve
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
emission
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_1
parameters
emissions
nameparameterstype
valve_2
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
emission_2
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_210.0135.0wall
nameexternal_wall
ExternalWall
w2_210.00.0wall
nameexternal_wall
ExternalWall
w3_210.045.0wall
nameexternal_wall
ExternalWall
w4_210.090.0wall
nameexternal_wall
ExternalWall
floor_310.090.0floor
nameexternal_wall
FloorOnGround
win1_21.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameboiler
parameters
scaFacRad1.5
dTBoi_nominal20
dTRad_nominal10
a{0.9}
effCurBuildings.Fluid.Types.EfficiencyCurves.Constant
T_nominal353.15
fueBuildings.Fluid.Data.Fuels.HeatingOilLowerHeatingValue()
Q_flow_nominal2000
dp_nominal5000
linearizeFlowResistancefalse
deltaM0.1
show_Tfalse
VTan0.2
hTan2
nSeg4
dIns0.002
dp(3000 + 2000)*{2,1}
nominal_mass_flow_rate_boiler0.03571428571428571
nominal_mass_flow_radiator_loop0.07142857142857142
V_flow0.03571428571428571/1000*{0.5,1}
typeBoiler

Conclusions

Conclusions

")); + Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
emissions
nameparameterstype
valve
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
emission
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_1
parameters
emissions
nameparameterstype
valve_2
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
emission_2
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_210.0135.0wall
nameexternal_wall
ExternalWall
w2_210.00.0wall
nameexternal_wall
ExternalWall
w3_210.045.0wall
nameexternal_wall
ExternalWall
w4_210.090.0wall
nameexternal_wall
ExternalWall
floor_310.090.0floor
nameexternal_wall
FloorOnGround
win1_21.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameboiler
parameters
scaFacRad1.5
dTBoi_nominal20
dTRad_nominal10
a{0.9}
effCurBuildings.Fluid.Types.EfficiencyCurves.Constant
T_nominal353.15
fueBuildings.Fluid.Data.Fuels.HeatingOilLowerHeatingValue()
Q_flow_nominal2000
dp_nominal5000
linearizeFlowResistancefalse
deltaM0.1
show_Tfalse
VTan0.2
hTan2
nSeg4
dIns0.002
dp(3000 + 2000)*{2,1}
nominal_mass_flow_rate_boiler0.03571428571428571
nominal_mass_flow_radiator_loop0.07142857142857142
V_flow0.03571428571428571/1000*{0.5,1}
typeBoiler

Conclusions

Conclusions

")); end building; diff --git a/tests/data/house_model.mo b/tests/data/house_model.mo index b490607..3054566 100644 --- a/tests/data/house_model.mo +++ b/tests/data/house_model.mo @@ -1074,34 +1074,34 @@ iconTransformation(origin = {-2, -42}, extent = {{-110, -9}, {-90, 9}}))); Cont annotation (Placement(transformation( extent={{-120,-18},{-80,22}}), iconTransformation(extent={{-120,62},{-78,98}}))); Modelica.Blocks.Sources.RealExpression - TCooSetEmissioncontrol_4 + TColSetThreewayvalvecontrol_0 + (y=363.15); +Modelica.Blocks.Sources.RealExpression + TCooSetEmissioncontrol_0 (y=298.15); Modelica.Blocks.Sources.RealExpression - TCooSetEmissioncontrol_2 + y_gainCollectorcontrol_1 + (y=0.0); +Modelica.Blocks.Sources.RealExpression + TCooSetEmissioncontrol_4 (y=298.15); Modelica.Blocks.Sources.RealExpression TCooSetEmissioncontrol_3 (y=298.15); Modelica.Blocks.Sources.RealExpression - TColSetThreewayvalvecontrol_0 - (y=363.15); -Modelica.Blocks.Sources.RealExpression - TCooSetEmissioncontrol_5 + TCooSetEmissioncontrol_2 (y=298.15); Modelica.Blocks.Sources.RealExpression TCooSetEmissioncontrol_7 (y=298.15); Modelica.Blocks.Sources.RealExpression - TCooSetEmissioncontrol_6 + TCooSetEmissioncontrol_5 (y=298.15); Modelica.Blocks.Sources.RealExpression TCooSetEmissioncontrol_1 (y=298.15); Modelica.Blocks.Sources.RealExpression - y_gainCollectorcontrol_1 - (y=0.0); -Modelica.Blocks.Sources.RealExpression - TCooSetEmissioncontrol_0 + TCooSetEmissioncontrol_6 (y=298.15); Modelica.Blocks.Sources.BooleanExpression triggerThreewayvalvecontrol_0 @@ -1151,26 +1151,26 @@ connect(dataBus.ppmCO2Space_6, TRoo1[8].ppm); connect(dataBus.ppmCO2Space_7, TRoo1[9].ppm); connect(dataBus.ppmCO2Space_8, TRoo1[10].ppm); connect(dataBus.ppmCO2Space_9, TRoo1[11].ppm); +connect(dataBus.TColSetThreewayvalvecontrol_0, +TColSetThreewayvalvecontrol_0.y); +connect(dataBus.TCooSetSpace_1, +TCooSetEmissioncontrol_0.y); +connect(dataBus.y_gainBoiler_0, +y_gainCollectorcontrol_1.y); connect(dataBus.TCooSetSpace_5, TCooSetEmissioncontrol_4.y); -connect(dataBus.TCooSetSpace_3, -TCooSetEmissioncontrol_2.y); connect(dataBus.TCooSetSpace_4, TCooSetEmissioncontrol_3.y); -connect(dataBus.TColSetThreewayvalvecontrol_0, -TColSetThreewayvalvecontrol_0.y); -connect(dataBus.TCooSetSpace_6, -TCooSetEmissioncontrol_5.y); +connect(dataBus.TCooSetSpace_3, +TCooSetEmissioncontrol_2.y); connect(dataBus.TCooSetSpace_10, TCooSetEmissioncontrol_7.y); -connect(dataBus.TCooSetSpace_9, -TCooSetEmissioncontrol_6.y); +connect(dataBus.TCooSetSpace_6, +TCooSetEmissioncontrol_5.y); connect(dataBus.TCooSetSpace_2, TCooSetEmissioncontrol_1.y); -connect(dataBus.y_gainBoiler_0, -y_gainCollectorcontrol_1.y); -connect(dataBus.TCooSetSpace_1, -TCooSetEmissioncontrol_0.y); +connect(dataBus.TCooSetSpace_9, +TCooSetEmissioncontrol_6.y); connect(dataBus.triggerThreewayvalvecontrol_0, triggerThreewayvalvecontrol_0.y); end DataServer; @@ -3159,7 +3159,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); house_model.Common.Controls.ventilation.EmissionControlEmissioncontrol_2 emissioncontrol_2 annotation ( - Placement(transformation(origin = { 122.27182001004861, 140.2313759201957 }, + Placement(transformation(origin = { 32.57046864038124, 187.1881270010521 }, extent = {{-10, -10}, {10, 10}} ))); house_model.Common.Controls.ventilation.OccupancyOccupancy_2 @@ -3241,7 +3241,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); house_model.Common.Controls.ventilation.EmissionControlEmissioncontrol_1 emissioncontrol_1 annotation ( - Placement(transformation(origin = { -193.77189436075403, -56.17224447350472 }, + Placement(transformation(origin = { 136.1950660811626, -114.53188702098825 }, extent = {{-10, -10}, {10, 10}} ))); house_model.Common.Controls.ventilation.OccupancyOccupancy_1 @@ -3326,7 +3326,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); house_model.Common.Controls.ventilation.EmissionControlEmissioncontrol_0 emissioncontrol_0 annotation ( - Placement(transformation(origin = { 54.94897878938587, -188.5139735948251 }, + Placement(transformation(origin = { -90.9461114983165, -174.54162287534402 }, extent = {{-10, -10}, {10, 10}} ))); house_model.Common.Controls.ventilation.OccupancyOccupancy_0 @@ -3402,7 +3402,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); house_model.Common.Controls.ventilation.EmissionControlEmissioncontrol_5 emissioncontrol_5 annotation ( - Placement(transformation(origin = { -55.425523189588354, -179.03656784584598 }, + Placement(transformation(origin = { -165.673794182835, 70.53371294656888 }, extent = {{-10, -10}, {10, 10}} ))); house_model.Common.Controls.ventilation.OccupancyOccupancy_5 @@ -3487,7 +3487,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); house_model.Common.Controls.ventilation.EmissionControlEmissioncontrol_6 emissioncontrol_6 annotation ( - Placement(transformation(origin = { -180.70253247443293, -49.38602052138259 }, + Placement(transformation(origin = { 171.96630704490045, -8.179158833250296 }, extent = {{-10, -10}, {10, 10}} ))); house_model.Common.Controls.ventilation.OccupancyOccupancy_8 @@ -3625,7 +3625,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); house_model.Common.Controls.ventilation.EmissionControlEmissioncontrol_7 emissioncontrol_7 annotation ( - Placement(transformation(origin = { 102.41125364930383, 179.12428960941253 }, + Placement(transformation(origin = { -175.69949332451608, -77.56258841514898 }, extent = {{-10, -10}, {10, 10}} ))); house_model.Common.Controls.ventilation.OccupancyOccupancy_9 @@ -3743,7 +3743,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); house_model.Common.Controls.ventilation.EmissionControlEmissioncontrol_4 emissioncontrol_4 annotation ( - Placement(transformation(origin = { 119.85985928899323, -147.06895895942426 }, + Placement(transformation(origin = { -53.74528210259565, 180.26567429649583 }, extent = {{-10, -10}, {10, 10}} ))); house_model.Common.Controls.ventilation.OccupancyOccupancy_4 @@ -3834,7 +3834,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); house_model.Common.Controls.ventilation.EmissionControlEmissioncontrol_3 emissioncontrol_3 annotation ( - Placement(transformation(origin = { -194.59639211900304, -29.897001966857694 }, + Placement(transformation(origin = { 190.4040728997946, -62.80412306293323 }, extent = {{-10, -10}, {10, 10}} ))); house_model.Common.Controls.ventilation.OccupancyOccupancy_3 @@ -4078,7 +4078,7 @@ redeclare package MediumW = MediumW) "Boiler" annotation ( house_model.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { -198.26325293872657, -4.806619307545886 }, + Placement(transformation(origin = { -186.83946906613295, 45.16074913347302 }, extent = {{-10, -10}, {10, 10}} ))); @@ -4124,7 +4124,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_2.y,emissioncontrol_2.y) annotation (Line( -points={{ 0.0, -75.0 } ,{ 61.13591000502431, -75.0 } ,{ 61.13591000502431, 140.2313759201957 } ,{ 122.27182001004861, 140.2313759201957 } }, +points={{ 0.0, -75.0 } ,{ 16.28523432019062, -75.0 } ,{ 16.28523432019062, 187.1881270010521 } ,{ 32.57046864038124, 187.1881270010521 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_2.port_b,radiator_2.port_a) @@ -4173,7 +4173,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_1.y,emissioncontrol_1.y) annotation (Line( -points={{ 250.0, 75.0 } ,{ 28.114052819622998, 75.0 } ,{ 28.11405281962297, -56.17224447350472 } ,{ -193.77189436075403, -56.17224447350472 } }, +points={{ 250.0, 75.0 } ,{ 193.0975330405813, 75.0 } ,{ 193.0975330405813, -114.53188702098825 } ,{ 136.1950660811626, -114.53188702098825 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_1.port_b,radiator_1.port_a) @@ -4217,7 +4217,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_0.y,emissioncontrol_0.y) annotation (Line( -points={{ 500.0, 75.0 } ,{ 277.4744893946929, 75.0 } ,{ 277.4744893946929, -188.5139735948251 } ,{ 54.94897878938587, -188.5139735948251 } }, +points={{ 500.0, 75.0 } ,{ 204.52694425084178, 75.0 } ,{ 204.52694425084172, -174.54162287534402 } ,{ -90.9461114983165, -174.54162287534402 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_0.port_b,radiator_0.port_a) @@ -4266,7 +4266,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_5.y,emissioncontrol_5.y) annotation (Line( -points={{ 0.0, 75.0 } ,{ -27.712761594794177, 75.0 } ,{ -27.712761594794177, -179.03656784584598 } ,{ -55.425523189588354, -179.03656784584598 } }, +points={{ 0.0, 75.0 } ,{ -82.8368970914175, 75.0 } ,{ -82.8368970914175, 70.53371294656888 } ,{ -165.673794182835, 70.53371294656888 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_5.port_b,radiator_5.port_a) @@ -4305,7 +4305,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_6.y,emissioncontrol_6.y) annotation (Line( -points={{ 250.0, 225.0 } ,{ 34.648733762783536, 225.0 } ,{ 34.648733762783536, -49.38602052138259 } ,{ -180.70253247443293, -49.38602052138259 } }, +points={{ 250.0, 225.0 } ,{ 210.9831535224502, 225.0 } ,{ 210.9831535224502, -8.179158833250296 } ,{ 171.96630704490045, -8.179158833250296 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_6.port_b,radiator_6.port_a) @@ -4407,7 +4407,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_7.y,emissioncontrol_7.y) annotation (Line( -points={{ 250.0, 375.0 } ,{ 176.20562682465192, 375.0 } ,{ 176.20562682465192, 179.12428960941253 } ,{ 102.41125364930383, 179.12428960941253 } }, +points={{ 250.0, 375.0 } ,{ 37.15025333774196, 375.0 } ,{ 37.15025333774196, -77.56258841514898 } ,{ -175.69949332451608, -77.56258841514898 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_7.port_b,radiator_7.port_a) @@ -4465,7 +4465,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_4.y,emissioncontrol_4.y) annotation (Line( -points={{ 0.0, 375.0 } ,{ 59.92992964449662, 375.0 } ,{ 59.92992964449662, -147.06895895942426 } ,{ 119.85985928899323, -147.06895895942426 } }, +points={{ 0.0, 375.0 } ,{ -26.872641051297826, 375.0 } ,{ -26.872641051297826, 180.26567429649583 } ,{ -53.74528210259565, 180.26567429649583 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_4.port_b,radiator_4.port_a) @@ -4524,7 +4524,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_3.y,emissioncontrol_3.y) annotation (Line( -points={{ 250.0, 525.0 } ,{ 27.70180394049848, 525.0 } ,{ 27.70180394049848, -29.897001966857694 } ,{ -194.59639211900304, -29.897001966857694 } }, +points={{ 250.0, 525.0 } ,{ 220.20203644989732, 525.0 } ,{ 220.20203644989732, -62.80412306293323 } ,{ 190.4040728997946, -62.80412306293323 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_3.port_b,radiator_3.port_a) @@ -4619,184 +4619,184 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(emissioncontrol_2.dataBus,data_bus.dataBus) annotation (Line( -points={{ 122.27182001004861, 140.2313759201957 } ,{ -37.99571646433897, 140.2313759201957 } ,{ -37.99571646433898, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 32.57046864038124, 187.1881270010521 } ,{ -77.13450021287585, 187.1881270010521 } ,{ -77.13450021287585, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_2.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ -124.13162646936328, 0.0 } ,{ -124.13162646936328, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ -50.0, 0.0 } ,{ -118.41973453306647, 0.0 } ,{ -118.41973453306647, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(emissioncontrol_1.dataBus,data_bus.dataBus) annotation (Line( -points={{ -193.77189436075403, -56.17224447350472 } ,{ -196.0175736497403, -56.17224447350472 } ,{ -196.0175736497403, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 136.1950660811626, -114.53188702098825 } ,{ -25.322201492485163, -114.53188702098825 } ,{ -25.322201492485192, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_1.dataBus,data_bus.dataBus) annotation (Line( -points={{ 200.0, 150.0 } ,{ 0.8683735306367169, 150.0 } ,{ 0.8683735306367169, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 200.0, 150.0 } ,{ 6.580265466933525, 150.0 } ,{ 6.580265466933525, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(emissioncontrol_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ 54.94897878938587, -188.5139735948251 } ,{ -71.65713707467035, -188.5139735948251 } ,{ -71.65713707467035, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ -90.9461114983165, -174.54162287534402 } ,{ -138.89279028222472, -174.54162287534402 } ,{ -138.89279028222472, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ 450.0, 150.0 } ,{ 125.86837353063675, 150.0 } ,{ 125.86837353063669, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 450.0, 150.0 } ,{ 131.5802654669335, 150.0 } ,{ 131.58026546693355, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(emissioncontrol_5.dataBus,data_bus.dataBus) annotation (Line( -points={{ -55.425523189588354, -179.03656784584598 } ,{ -126.84438806415747, -179.03656784584598 } ,{ -126.84438806415746, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ -165.673794182835, 70.53371294656888 } ,{ -176.256631624484, 70.53371294656888 } ,{ -176.256631624484, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_5.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 150.0 } ,{ -124.13162646936328, 150.0 } ,{ -124.13162646936328, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ -50.0, 150.0 } ,{ -118.41973453306647, 150.0 } ,{ -118.41973453306647, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(emissioncontrol_6.dataBus,data_bus.dataBus) annotation (Line( -points={{ -180.70253247443293, -49.38602052138259 } ,{ -189.48289270657975, -49.38602052138259 } ,{ -189.48289270657975, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 171.96630704490045, -8.179158833250296 } ,{ -7.4365810106162655, -8.179158833250296 } ,{ -7.436581010616237, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_8.dataBus,data_bus.dataBus) annotation (Line( -points={{ 200.0, 300.0 } ,{ 0.8683735306367169, 300.0 } ,{ 0.8683735306367169, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 200.0, 300.0 } ,{ 6.580265466933525, 300.0 } ,{ 6.580265466933525, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_6.dataBus,data_bus.dataBus) annotation (Line( -points={{ 450.0, 300.0 } ,{ 125.86837353063675, 300.0 } ,{ 125.86837353063669, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 450.0, 300.0 } ,{ 131.5802654669335, 300.0 } ,{ 131.58026546693355, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_7.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 300.0 } ,{ -124.13162646936328, 300.0 } ,{ -124.13162646936328, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ -50.0, 300.0 } ,{ -118.41973453306647, 300.0 } ,{ -118.41973453306647, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(emissioncontrol_7.dataBus,data_bus.dataBus) annotation (Line( -points={{ 102.41125364930383, 179.12428960941253 } ,{ -47.92599964471137, 179.12428960941253 } ,{ -47.92599964471137, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ -175.69949332451608, -77.56258841514898 } ,{ -181.26948119532452, -77.56258841514898 } ,{ -181.26948119532452, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_9.dataBus,data_bus.dataBus) annotation (Line( -points={{ 200.0, 450.0 } ,{ 0.8683735306367169, 450.0 } ,{ 0.8683735306367169, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 200.0, 450.0 } ,{ 6.580265466933525, 450.0 } ,{ 6.580265466933525, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_10.dataBus,data_bus.dataBus) annotation (Line( -points={{ 450.0, 450.0 } ,{ 125.86837353063675, 450.0 } ,{ 125.86837353063669, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 450.0, 450.0 } ,{ 131.5802654669335, 450.0 } ,{ 131.58026546693355, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(emissioncontrol_4.dataBus,data_bus.dataBus) annotation (Line( -points={{ 119.85985928899323, -147.06895895942426 } ,{ -39.20169682486666, -147.06895895942426 } ,{ -39.20169682486667, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ -53.74528210259565, 180.26567429649583 } ,{ -120.29237558436431, 180.26567429649583 } ,{ -120.2923755843643, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_4.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 450.0 } ,{ -124.13162646936328, 450.0 } ,{ -124.13162646936328, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ -50.0, 450.0 } ,{ -118.41973453306647, 450.0 } ,{ -118.41973453306647, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(emissioncontrol_3.dataBus,data_bus.dataBus) annotation (Line( -points={{ -194.59639211900304, -29.897001966857694 } ,{ -196.4298225288648, -29.897001966857694 } ,{ -196.4298225288648, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 190.4040728997946, -62.80412306293323 } ,{ 1.7823019168308463, -62.80412306293323 } ,{ 1.7823019168308178, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_3.dataBus,data_bus.dataBus) annotation (Line( -points={{ 200.0, 600.0 } ,{ 0.8683735306367169, 600.0 } ,{ 0.8683735306367169, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 200.0, 600.0 } ,{ 6.580265466933525, 600.0 } ,{ 6.580265466933525, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(collectorcontrol_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -250.0, -275.0 } ,{ -224.13162646936328, -275.0 } ,{ -224.13162646936328, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ -250.0, -275.0 } ,{ -218.41973453306647, -275.0 } ,{ -218.41973453306647, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(threewayvalvecontrol_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -350.0, -375.0 } ,{ -274.13162646936325, -375.0 } ,{ -274.13162646936325, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ -350.0, -375.0 } ,{ -268.4197345330665, -375.0 } ,{ -268.4197345330665, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(collectorcontrol_1.dataBus,data_bus.dataBus) annotation (Line( -points={{ -450.0, -475.0 } ,{ -324.13162646936325, -475.0 } ,{ -324.13162646936325, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ -450.0, -475.0 } ,{ -318.4197345330665, -475.0 } ,{ -318.4197345330665, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.heaPorAir,data_bus.port[1]) annotation (Line( -points={{ 500.0, 150.0 } ,{ 150.86837353063675, 150.0 } ,{ 150.8683735306367, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 500.0, 150.0 } ,{ 156.5802654669335, 150.0 } ,{ 156.58026546693355, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 500.0, 150.0 } ,{ 150.86837353063675, 150.0 } ,{ 150.8683735306367, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 500.0, 150.0 } ,{ 156.5802654669335, 150.0 } ,{ 156.58026546693355, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_10.heaPorAir,data_bus.port[2]) annotation (Line( -points={{ 250.0, 450.0 } ,{ 25.868373530636717, 450.0 } ,{ 25.868373530636717, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 250.0, 450.0 } ,{ 31.580265466933525, 450.0 } ,{ 31.580265466933525, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_10.ports[1],data_bus.port_a[2]) annotation (Line( -points={{ 250.0, 450.0 } ,{ 25.868373530636717, 450.0 } ,{ 25.868373530636717, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 250.0, 450.0 } ,{ 31.580265466933525, 450.0 } ,{ 31.580265466933525, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_11.heaPorAir,data_bus.port[3]) annotation (Line( -points={{ 500.0, 450.0 } ,{ 150.86837353063675, 450.0 } ,{ 150.8683735306367, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 500.0, 450.0 } ,{ 156.5802654669335, 450.0 } ,{ 156.58026546693355, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_11.ports[1],data_bus.port_a[3]) annotation (Line( -points={{ 500.0, 450.0 } ,{ 150.86837353063675, 450.0 } ,{ 150.8683735306367, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 500.0, 450.0 } ,{ 156.5802654669335, 450.0 } ,{ 156.58026546693355, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.heaPorAir,data_bus.port[4]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 25.868373530636717, 150.0 } ,{ 25.868373530636717, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 250.0, 150.0 } ,{ 31.580265466933525, 150.0 } ,{ 31.580265466933525, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.ports[1],data_bus.port_a[4]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 25.868373530636717, 150.0 } ,{ 25.868373530636717, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 250.0, 150.0 } ,{ 31.580265466933525, 150.0 } ,{ 31.580265466933525, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_3.heaPorAir,data_bus.port[5]) annotation (Line( -points={{ 0.0, 0.0 } ,{ -99.13162646936328, 0.0 } ,{ -99.13162646936328, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 0.0, 0.0 } ,{ -93.41973453306647, 0.0 } ,{ -93.41973453306647, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_3.ports[1],data_bus.port_a[5]) annotation (Line( -points={{ 0.0, 0.0 } ,{ -99.13162646936328, 0.0 } ,{ -99.13162646936328, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 0.0, 0.0 } ,{ -93.41973453306647, 0.0 } ,{ -93.41973453306647, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_4.heaPorAir,data_bus.port[6]) annotation (Line( -points={{ 250.0, 600.0 } ,{ 25.868373530636717, 600.0 } ,{ 25.868373530636717, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 250.0, 600.0 } ,{ 31.580265466933525, 600.0 } ,{ 31.580265466933525, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_4.ports[1],data_bus.port_a[6]) annotation (Line( -points={{ 250.0, 600.0 } ,{ 25.868373530636717, 600.0 } ,{ 25.868373530636717, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 250.0, 600.0 } ,{ 31.580265466933525, 600.0 } ,{ 31.580265466933525, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_5.heaPorAir,data_bus.port[7]) annotation (Line( -points={{ 0.0, 450.0 } ,{ -99.13162646936328, 450.0 } ,{ -99.13162646936328, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 0.0, 450.0 } ,{ -93.41973453306647, 450.0 } ,{ -93.41973453306647, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_5.ports[1],data_bus.port_a[7]) annotation (Line( -points={{ 0.0, 450.0 } ,{ -99.13162646936328, 450.0 } ,{ -99.13162646936328, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 0.0, 450.0 } ,{ -93.41973453306647, 450.0 } ,{ -93.41973453306647, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_6.heaPorAir,data_bus.port[8]) annotation (Line( -points={{ 0.0, 150.0 } ,{ -99.13162646936328, 150.0 } ,{ -99.13162646936328, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 0.0, 150.0 } ,{ -93.41973453306647, 150.0 } ,{ -93.41973453306647, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_6.ports[1],data_bus.port_a[8]) annotation (Line( -points={{ 0.0, 150.0 } ,{ -99.13162646936328, 150.0 } ,{ -99.13162646936328, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 0.0, 150.0 } ,{ -93.41973453306647, 150.0 } ,{ -93.41973453306647, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_7.heaPorAir,data_bus.port[9]) annotation (Line( -points={{ 500.0, 300.0 } ,{ 150.86837353063675, 300.0 } ,{ 150.8683735306367, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 500.0, 300.0 } ,{ 156.5802654669335, 300.0 } ,{ 156.58026546693355, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_7.ports[1],data_bus.port_a[9]) annotation (Line( -points={{ 500.0, 300.0 } ,{ 150.86837353063675, 300.0 } ,{ 150.8683735306367, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 500.0, 300.0 } ,{ 156.5802654669335, 300.0 } ,{ 156.58026546693355, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_8.heaPorAir,data_bus.port[10]) annotation (Line( -points={{ 0.0, 300.0 } ,{ -99.13162646936328, 300.0 } ,{ -99.13162646936328, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 0.0, 300.0 } ,{ -93.41973453306647, 300.0 } ,{ -93.41973453306647, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_8.ports[1],data_bus.port_a[10]) annotation (Line( -points={{ 0.0, 300.0 } ,{ -99.13162646936328, 300.0 } ,{ -99.13162646936328, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 0.0, 300.0 } ,{ -93.41973453306647, 300.0 } ,{ -93.41973453306647, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_9.heaPorAir,data_bus.port[11]) annotation (Line( -points={{ 250.0, 300.0 } ,{ 25.868373530636717, 300.0 } ,{ 25.868373530636717, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 250.0, 300.0 } ,{ 31.580265466933525, 300.0 } ,{ 31.580265466933525, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None)); connect(space_9.ports[1],data_bus.port_a[11]) annotation (Line( -points={{ 250.0, 300.0 } ,{ 25.868373530636717, 300.0 } ,{ 25.868373530636717, -4.806619307545886 } ,{ -198.26325293872657, -4.806619307545886 } }, +points={{ 250.0, 300.0 } ,{ 31.580265466933525, 300.0 } ,{ 31.580265466933525, 45.16074913347302 } ,{ -186.83946906613295, 45.16074913347302 } }, thickness=0.05, smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-500.0,-525.0},{580.0,650.0}})), Icon( coordinateSystem(extent={{-500.0,-525.0},{580.0,650.0}}))); annotation ( - Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_3
parameters
mSenFac1.0
AFlo11.3
hRoo2.4
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume27.12
occupancy
nameoccupancy_2
parameters
emissions
nameparameterstype
valve_2
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_2
nEle1
fraRad0.3
Q_flow_nominal4000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.232
mDry105.2
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
flooronground_211.390.0floor
nameconstruction_6
FloorOnGround
window_21.30490.0wall
namesimple_glazing
Window
externalwall_49.02490.0wall
nameconstruction_4
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_67.2210.0wall
nameconstruction_5
InternalElement
internalelement_76.510.0wall
nameconstruction_5
InternalElement
internalelement_81.510.0wall
nameconstruction_5
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo2.7
hRoo3.8
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume10.26
occupancy
nameoccupancy_1
parameters
emissions
nameparameterstype
valve_1
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_1
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
externalwall_32.3790.0wall
nameconstruction_4
ExternalWall
flooronground_12.790.0floor
nameconstruction_6
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_23.6410.0wall
nameconstruction_5
InternalElement
internalelement_57.2210.0wall
nameconstruction_5
InternalElement
internalelement_67.2210.0wall
nameconstruction_5
InternalElement
namespace_1
parameters
mSenFac1.0
AFlo7.07
hRoo3.7
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume26.159000000000002
occupancy
nameoccupancy_0
parameters
emissions
nameparameterstype
valve_0
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_0
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
externaldoor_01.590.0wall
nameconstruction_3
ExternalDoor
window_03.365999999999999790.0wall
namesimple_glazing
Window
externalwall_16.4490.0wall
nameconstruction_4
ExternalWall
window_14.28845.0wall
namesimple_glazing
Window
externalwall_27.22445.0wall
nameconstruction_4
ExternalWall
flooronground_07.0790.0floor
nameconstruction_6
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_36.4410.0wall
nameconstruction_5
InternalElement
internalelement_57.2210.0wall
nameconstruction_5
InternalElement
namespace_6
parameters
mSenFac1.0
AFlo5.7
hRoo2.4
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume13.68
occupancy
nameoccupancy_5
parameters
emissions
nameparameterstype
valve_5
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_5
nEle1
fraRad0.3
Q_flow_nominal4000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.232
mDry105.2
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
flooronground_55.790.0floor
nameconstruction_6
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_76.510.0wall
nameconstruction_5
InternalElement
internalelement_96.510.0wall
nameconstruction_5
InternalElement
internalelement_105.010.0wall
nameconstruction_5
InternalElement
namespace_9
parameters
mSenFac1.0
AFlo15.7
hRoo3.7
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume58.09
occupancy
nameoccupancy_8
parameters
emissions
nameparameterstype
valve_6
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_6
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
externalwall_109.00.0ceiling
nameConstruction_1
ExternalWall
externalwall_119.090.0ceiling
nameConstruction_1
ExternalWall
window_61.96845.0wall
namesimple_glazing
Window
externalwall_1212.93845.0wall
nameconstruction_4
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_1515.710.0floor
nameconstruction_5
InternalElement
namespace_7
parameters
mSenFac1.0
AFlo5.7
hRoo2.4
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume13.68
occupancy
nameoccupancy_6
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
flooronground_65.790.0floor
nameconstruction_6
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_96.510.0wall
nameconstruction_5
InternalElement
internalelement_115.010.0wall
nameconstruction_5
InternalElement
internalelement_126.510.0wall
nameconstruction_5
InternalElement
namespace_8
parameters
mSenFac1.0
AFlo3.139
hRoo6.5
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume20.403499999999998
occupancy
nameoccupancy_7
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
flooronground_73.1990.0floor
nameconstruction_6
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_48.010.0wall
nameconstruction_5
InternalElement
internalelement_81.510.0wall
nameconstruction_5
InternalElement
internalelement_105.010.0wall
nameconstruction_5
InternalElement
internalelement_115.010.0wall
nameconstruction_5
InternalElement
internalelement_1312.32110.0wall
nameconstruction_5
InternalElement
namespace_10
parameters
mSenFac1.0
AFlo11.8116
hRoo3.7
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume43.702920000000006
occupancy
nameoccupancy_9
parameters
emissions
nameparameterstype
valve_7
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_7
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
externalwall_139.00.0ceiling
nameConstruction_1
ExternalWall
externalwall_149.090.0ceiling
nameConstruction_1
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_1312.32110.0wall
nameconstruction_5
InternalElement
internalelement_143.3310.0floor
nameconstruction_5
InternalElement
namespace_11
parameters
mSenFac1.0
AFlo6.6
hRoo1.6
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume10.56
occupancy
nameoccupancy_10
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
externalwall_159.090.0ceiling
nameConstruction_1
ExternalWall
externalwall_163.1645.0ceiling
nameConstruction_1
ExternalWall
namespace_5
parameters
mSenFac1.0
AFlo11.34
hRoo3.7
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume41.958
occupancy
nameoccupancy_4
parameters
emissions
nameparameterstype
valve_4
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_4
nEle1
fraRad0.3
Q_flow_nominal4000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.232
mDry105.2
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
flooronground_411.3490.0floor
nameconstruction_6
FloorOnGround
externalwall_813.00.0ceiling
nameConstruction_1
ExternalWall
window_52.83100000000000040.0wall
namesimple_glazing
Window
externalwall_911.340.0wall
nameconstruction_4
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_111.36810.0wall
nameconstruction_5
InternalElement
internalelement_126.510.0wall
nameconstruction_5
InternalElement
internalelement_143.3310.0floor
nameconstruction_5
InternalElement
namespace_4
parameters
mSenFac1.0
AFlo27.11
hRoo3.7
linearizeRadiationtrue
m_flow_nominal0.01
T_start299.15
volume100.307
occupancy
nameoccupancy_3
parameters
emissions
nameparameterstype
valve_3
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_3
nEle1
fraRad0.3
Q_flow_nominal4000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.232
mDry105.2
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
flooronground_327.1190.0floor
nameconstruction_6
FloorOnGround
externalwall_513.00.0ceiling
nameConstruction_1
ExternalWall
window_34.8810.0wall
namesimple_glazing
Window
externalwall_68.6640.0wall
nameconstruction_4
ExternalWall
window_44.28845.0wall
namesimple_glazing
Window
externalwall_718.02445.0wall
nameconstruction_4
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_111.36810.0wall
nameconstruction_5
InternalElement
internalelement_23.6410.0wall
nameconstruction_5
InternalElement
internalelement_36.4410.0wall
nameconstruction_5
InternalElement
internalelement_48.010.0wall
nameconstruction_5
InternalElement
internalelement_1515.710.0floor
nameconstruction_5
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameconstruction_6
layers
materialthickness
namematerial_8
k1.4
c840.0
rho2100.0
epsLw0.88
epsSw0.55
0.2
namematerial_3
k0.036
c1470.0
rho26.0
epsLw0.8
epsSw0.8
0.2
namematerial_3
k0.036
c1470.0
rho26.0
epsLw0.8
epsSw0.8
0.02
namematerial_5
k0.9
c840.0
rho1100.0
epsLw0.88
epsSw0.55
0.05
namematerial_6
k0.11
c1880.0
rho550.0
epsLw0.86
epsSw0.44
0.1
nameconstruction_3
layers
materialthickness
namematerial_7
k0.131
c1000.0
rho600.0
epsLw0.85
epsSw0.65
0.04
nameconstruction_5
layers
materialthickness
namematerial_2
k0.9
c840.0
rho975.0
epsLw0.85
epsSw0.65
0.02
namematerial_4
k0.84
c840.0
rho1400.0
epsLw0.88
epsSw0.55
0.14
namematerial_2
k0.9
c840.0
rho975.0
epsLw0.85
epsSw0.65
0.02
nameConstruction_1
layers
materialthickness
namematerial_12
k1.4
c840.0
rho2100.0
epsLw0.88
epsSw0.55
0.025
namematerial_1
k0.046
c940.0
rho80.0
epsLw0.85
epsSw0.65
0.05
namematerial_1
k0.046
c940.0
rho80.0
epsLw0.85
epsSw0.65
0.24
namematerial_2
k0.9
c840.0
rho975.0
epsLw0.85
epsSw0.65
0.02
namesimple_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4
nameconstruction_4
layers
materialthickness
namematerial_1
k0.046
c940.0
rho80.0
epsLw0.85
epsSw0.65
0.18
namematerial_10
k0.3
c880.0
rho850.0
epsLw0.88
epsSw0.55
0.09
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
0.02
namematerial_1
k0.046
c940.0
rho80.0
epsLw0.85
epsSw0.65
0.05
namematerial_11
k0.89
c800.0
rho1920.0
epsLw0.88
epsSw0.55
0.14
namematerial_9
k0.6
c840.0
rho975.0
epsLw0.85
epsSw0.65
0.01

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameboiler_0
parameters
scaFacRad1.5
dTBoi_nominal20
dTRad_nominal10
a{0.9}
effCurBuildings.Fluid.Types.EfficiencyCurves.Constant
T_nominal353.15
fueBuildings.Fluid.Data.Fuels.HeatingOilLowerHeatingValue()
Q_flow_nominal6000.0
dp_nominal5000
linearizeFlowResistancefalse
deltaM0.1
show_Tfalse
VTan0.2
hTan2
nSeg4
dIns0.002
dp(3000 + 2000)*{2,1}
nominal_mass_flow_rate_boiler0.10714285714285714
nominal_mass_flow_radiator_loop0.21428571428571427
V_flow0.10714285714285714/1000*{0.5,1}
typeBoiler

Conclusions

Conclusions

")); + Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_3
parameters
mSenFac1.0
AFlo11.3
hRoo2.4
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume27.12
occupancy
nameoccupancy_2
parameters
emissions
nameparameterstype
valve_2
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_2
nEle1
fraRad0.3
Q_flow_nominal4000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.232
mDry105.2
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
flooronground_211.390.0floor
nameconstruction_6
FloorOnGround
window_21.30490.0wall
namesimple_glazing
Window
externalwall_49.02490.0wall
nameconstruction_4
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_67.2210.0wall
nameconstruction_5
InternalElement
internalelement_76.510.0wall
nameconstruction_5
InternalElement
internalelement_81.510.0wall
nameconstruction_5
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo2.7
hRoo3.8
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume10.26
occupancy
nameoccupancy_1
parameters
emissions
nameparameterstype
valve_1
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_1
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
externalwall_32.3790.0wall
nameconstruction_4
ExternalWall
flooronground_12.790.0floor
nameconstruction_6
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_23.6410.0wall
nameconstruction_5
InternalElement
internalelement_57.2210.0wall
nameconstruction_5
InternalElement
internalelement_67.2210.0wall
nameconstruction_5
InternalElement
namespace_1
parameters
mSenFac1.0
AFlo7.07
hRoo3.7
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume26.159000000000002
occupancy
nameoccupancy_0
parameters
emissions
nameparameterstype
valve_0
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_0
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
externaldoor_01.590.0wall
nameconstruction_3
ExternalDoor
window_03.365999999999999790.0wall
namesimple_glazing
Window
externalwall_16.4490.0wall
nameconstruction_4
ExternalWall
window_14.28845.0wall
namesimple_glazing
Window
externalwall_27.22445.0wall
nameconstruction_4
ExternalWall
flooronground_07.0790.0floor
nameconstruction_6
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_36.4410.0wall
nameconstruction_5
InternalElement
internalelement_57.2210.0wall
nameconstruction_5
InternalElement
namespace_6
parameters
mSenFac1.0
AFlo5.7
hRoo2.4
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume13.68
occupancy
nameoccupancy_5
parameters
emissions
nameparameterstype
valve_5
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_5
nEle1
fraRad0.3
Q_flow_nominal4000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.232
mDry105.2
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
flooronground_55.790.0floor
nameconstruction_6
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_76.510.0wall
nameconstruction_5
InternalElement
internalelement_96.510.0wall
nameconstruction_5
InternalElement
internalelement_105.010.0wall
nameconstruction_5
InternalElement
namespace_9
parameters
mSenFac1.0
AFlo15.7
hRoo3.7
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume58.09
occupancy
nameoccupancy_8
parameters
emissions
nameparameterstype
valve_6
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_6
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
externalwall_109.00.0ceiling
nameConstruction_1
ExternalWall
externalwall_119.090.0ceiling
nameConstruction_1
ExternalWall
window_61.96845.0wall
namesimple_glazing
Window
externalwall_1212.93845.0wall
nameconstruction_4
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_1515.710.0floor
nameconstruction_5
InternalElement
namespace_7
parameters
mSenFac1.0
AFlo5.7
hRoo2.4
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume13.68
occupancy
nameoccupancy_6
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
flooronground_65.790.0floor
nameconstruction_6
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_96.510.0wall
nameconstruction_5
InternalElement
internalelement_115.010.0wall
nameconstruction_5
InternalElement
internalelement_126.510.0wall
nameconstruction_5
InternalElement
namespace_8
parameters
mSenFac1.0
AFlo3.139
hRoo6.5
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume20.403499999999998
occupancy
nameoccupancy_7
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
flooronground_73.1990.0floor
nameconstruction_6
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_48.010.0wall
nameconstruction_5
InternalElement
internalelement_81.510.0wall
nameconstruction_5
InternalElement
internalelement_105.010.0wall
nameconstruction_5
InternalElement
internalelement_115.010.0wall
nameconstruction_5
InternalElement
internalelement_1312.32110.0wall
nameconstruction_5
InternalElement
namespace_10
parameters
mSenFac1.0
AFlo11.8116
hRoo3.7
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume43.702920000000006
occupancy
nameoccupancy_9
parameters
emissions
nameparameterstype
valve_7
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_7
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
externalwall_139.00.0ceiling
nameConstruction_1
ExternalWall
externalwall_149.090.0ceiling
nameConstruction_1
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_1312.32110.0wall
nameconstruction_5
InternalElement
internalelement_143.3310.0floor
nameconstruction_5
InternalElement
namespace_11
parameters
mSenFac1.0
AFlo6.6
hRoo1.6
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume10.56
occupancy
nameoccupancy_10
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
externalwall_159.090.0ceiling
nameConstruction_1
ExternalWall
externalwall_163.1645.0ceiling
nameConstruction_1
ExternalWall
namespace_5
parameters
mSenFac1.0
AFlo11.34
hRoo3.7
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume41.958
occupancy
nameoccupancy_4
parameters
emissions
nameparameterstype
valve_4
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_4
nEle1
fraRad0.3
Q_flow_nominal4000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.232
mDry105.2
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
flooronground_411.3490.0floor
nameconstruction_6
FloorOnGround
externalwall_813.00.0ceiling
nameConstruction_1
ExternalWall
window_52.83100000000000040.0wall
namesimple_glazing
Window
externalwall_911.340.0wall
nameconstruction_4
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_111.36810.0wall
nameconstruction_5
InternalElement
internalelement_126.510.0wall
nameconstruction_5
InternalElement
internalelement_143.3310.0floor
nameconstruction_5
InternalElement
namespace_4
parameters
mSenFac1.0
AFlo27.11
hRoo3.7
linearizeRadiationtrue
m_flow_nominal0.01
T_start299.15
volume100.307
occupancy
nameoccupancy_3
parameters
emissions
nameparameterstype
valve_3
R50.0
delta00.01
dpFixed_nominal6000.0
l0.0001
from_dptrue
linearizedfalse
deltaM0.02
m_flow_nominal0.01
dpValve_nominal6000.0
Valve
radiator_3
nEle1
fraRad0.3
Q_flow_nominal4000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.232
mDry105.2
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
flooronground_327.1190.0floor
nameconstruction_6
FloorOnGround
externalwall_513.00.0ceiling
nameConstruction_1
ExternalWall
window_34.8810.0wall
namesimple_glazing
Window
externalwall_68.6640.0wall
nameconstruction_4
ExternalWall
window_44.28845.0wall
namesimple_glazing
Window
externalwall_718.02445.0wall
nameconstruction_4
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internalelement_111.36810.0wall
nameconstruction_5
InternalElement
internalelement_23.6410.0wall
nameconstruction_5
InternalElement
internalelement_36.4410.0wall
nameconstruction_5
InternalElement
internalelement_48.010.0wall
nameconstruction_5
InternalElement
internalelement_1515.710.0floor
nameconstruction_5
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameconstruction_6
layers
materialthickness
namematerial_8
k1.4
c840.0
rho2100.0
epsLw0.88
epsSw0.55
0.2
namematerial_3
k0.036
c1470.0
rho26.0
epsLw0.8
epsSw0.8
0.2
namematerial_3
k0.036
c1470.0
rho26.0
epsLw0.8
epsSw0.8
0.02
namematerial_5
k0.9
c840.0
rho1100.0
epsLw0.88
epsSw0.55
0.05
namematerial_6
k0.11
c1880.0
rho550.0
epsLw0.86
epsSw0.44
0.1
nameconstruction_5
layers
materialthickness
namematerial_2
k0.9
c840.0
rho975.0
epsLw0.85
epsSw0.65
0.02
namematerial_4
k0.84
c840.0
rho1400.0
epsLw0.88
epsSw0.55
0.14
namematerial_2
k0.9
c840.0
rho975.0
epsLw0.85
epsSw0.65
0.02
nameConstruction_1
layers
materialthickness
namematerial_12
k1.4
c840.0
rho2100.0
epsLw0.88
epsSw0.55
0.025
namematerial_1
k0.046
c940.0
rho80.0
epsLw0.85
epsSw0.65
0.05
namematerial_1
k0.046
c940.0
rho80.0
epsLw0.85
epsSw0.65
0.24
namematerial_2
k0.9
c840.0
rho975.0
epsLw0.85
epsSw0.65
0.02
nameconstruction_3
layers
materialthickness
namematerial_7
k0.131
c1000.0
rho600.0
epsLw0.85
epsSw0.65
0.04
namesimple_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4
nameconstruction_4
layers
materialthickness
namematerial_1
k0.046
c940.0
rho80.0
epsLw0.85
epsSw0.65
0.18
namematerial_10
k0.3
c880.0
rho850.0
epsLw0.88
epsSw0.55
0.09
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
0.02
namematerial_1
k0.046
c940.0
rho80.0
epsLw0.85
epsSw0.65
0.05
namematerial_11
k0.89
c800.0
rho1920.0
epsLw0.88
epsSw0.55
0.14
namematerial_9
k0.6
c840.0
rho975.0
epsLw0.85
epsSw0.65
0.01

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameboiler_0
parameters
scaFacRad1.5
dTBoi_nominal20
dTRad_nominal10
a{0.9}
effCurBuildings.Fluid.Types.EfficiencyCurves.Constant
T_nominal353.15
fueBuildings.Fluid.Data.Fuels.HeatingOilLowerHeatingValue()
Q_flow_nominal6000.0
dp_nominal5000
linearizeFlowResistancefalse
deltaM0.1
show_Tfalse
VTan0.2
hTan2
nSeg4
dIns0.002
dp(3000 + 2000)*{2,1}
nominal_mass_flow_rate_boiler0.10714285714285714
nominal_mass_flow_radiator_loop0.21428571428571427
V_flow0.10714285714285714/1000*{0.5,1}
typeBoiler

Conclusions

Conclusions

")); end building; diff --git a/tests/data/ideas_free_float_single_zone.mo b/tests/data/ideas_free_float_single_zone.mo index 63f862d..66770c4 100644 --- a/tests/data/ideas_free_float_single_zone.mo +++ b/tests/data/ideas_free_float_single_zone.mo @@ -2163,25 +2163,25 @@ extends Modelica.Icons.MaterialPropertiesPackage; end Glazing; package Materials "Library of construction materials" -extends Modelica.Icons.MaterialPropertiesPackage; record plywood = IDEAS.Buildings.Data.Interfaces.Material ( - k=0.12, - c=1210.0, - rho=540.0, - epsLw=0.88, - epsSw=0.55); record id_100 = IDEAS.Buildings.Data.Interfaces.Material ( +extends Modelica.Icons.MaterialPropertiesPackage; record id_100 = IDEAS.Buildings.Data.Interfaces.Material ( k=1.0, c=840.0, rho=2500.0, epsLw=0.88, + epsSw=0.55); record insulation_board = IDEAS.Buildings.Data.Interfaces.Material ( + k=0.03, + c=1200.0, + rho=40.0, + epsLw=0.88, epsSw=0.55); record concrete = IDEAS.Buildings.Data.Interfaces.Material ( k=1.4, c=840.0, rho=2240.0, epsLw=0.88, - epsSw=0.55); record insulation_board = IDEAS.Buildings.Data.Interfaces.Material ( - k=0.03, - c=1200.0, - rho=40.0, + epsSw=0.55); record plywood = IDEAS.Buildings.Data.Interfaces.Material ( + k=0.12, + c=1210.0, + rho=540.0, epsLw=0.88, epsSw=0.55); record Air = IDEAS.Buildings.Data.Interfaces.Material ( k=0.025, @@ -2228,7 +2228,7 @@ annotation (choicesAllMatching = true); final azi={ 135, 0, 45, 90 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 48.79334870711515, 199.99999999999997 }, + Placement(transformation(origin = { -96.2221558972595, 158.027120974634 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.Window[1] @@ -2239,7 +2239,7 @@ annotation (choicesAllMatching = true); final azi={ 45 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 186.98737194749273, 66.86707378720476 }, + Placement(transformation(origin = { 102.50430507628556, -175.22598795032337 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.SlabOnGround floor_2( @@ -2247,7 +2247,7 @@ annotation (choicesAllMatching = true); external_wall constructionType, redeclare package Medium = Medium, A=10) annotation ( - Placement(transformation(origin = { 146.9385914359433, -119.82246608434738 }, + Placement(transformation(origin = { 189.88184576946574, 5.503215674781191 }, extent = {{-10, -10}, {10, 10}} ))); inner IDEAS.BoundaryConditions.SimInfoManager @@ -2261,36 +2261,36 @@ annotation (Placement(transformation(extent={{-96,76},{-76,96}}))); annotati ideas_free_float_single_zone.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { -152.67907412032304, 130.8707688138268 }, + Placement(transformation(origin = { -200.0, 1.8176377396680672 }, extent = {{-10, -10}, {10, 10}} ))); equation connect(space_1.propsBus[1:4],merged_w1_1_w2_1_w3_1_w4_1[1:4].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ 24.396674353557575, 0.0 } ,{ 24.396674353557575, 199.99999999999997 } ,{ 48.79334870711515, 199.99999999999997 } }, +points={{ 0.0, 0.0 } ,{ -48.11107794862975, 0.0 } ,{ -48.11107794862975, 158.027120974634 } ,{ -96.2221558972595, 158.027120974634 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.propsBus[5],merged_win1_1[1].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ 93.49368597374637, 0.0 } ,{ 93.49368597374637, 66.86707378720476 } ,{ 186.98737194749273, 66.86707378720476 } }, +points={{ 0.0, 0.0 } ,{ 51.25215253814278, 0.0 } ,{ 51.25215253814278, -175.22598795032337 } ,{ 102.50430507628556, -175.22598795032337 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.propsBus[6],floor_2.propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ 73.46929571797165, 0.0 } ,{ 73.46929571797165, -119.82246608434738 } ,{ 146.9385914359433, -119.82246608434738 } }, +points={{ 0.0, 0.0 } ,{ 94.94092288473287, 0.0 } ,{ 94.94092288473287, 5.503215674781191 } ,{ 189.88184576946574, 5.503215674781191 } }, color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(space_1.gainCon,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ -76.33953706016152, 0.0 } ,{ -76.33953706016152, 130.8707688138268 } ,{ -152.67907412032304, 130.8707688138268 } }, +points={{ 0.0, 0.0 } ,{ -100.0, 0.0 } ,{ -100.0, 1.8176377396680672 } ,{ -200.0, 1.8176377396680672 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ -76.33953706016152, 0.0 } ,{ -76.33953706016152, 130.8707688138268 } ,{ -152.67907412032304, 130.8707688138268 } }, +points={{ 0.0, 0.0 } ,{ -100.0, 0.0 } ,{ -100.0, 1.8176377396680672 } ,{ -200.0, 1.8176377396680672 } }, thickness=0.05, -smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-202.67907412032304,-169.82246608434738},{236.98737194749273,250.0}})), Icon( - coordinateSystem(extent={{-202.67907412032304,-169.82246608434738},{236.98737194749273,250.0}}))); +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-250.0,-225.22598795032337},{239.88184576946574,250.0}})), Icon( + coordinateSystem(extent={{-250.0,-225.22598795032337},{239.88184576946574,250.0}}))); annotation ( Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); end building; diff --git a/tests/data/ideas_free_float_three_zones.mo b/tests/data/ideas_free_float_three_zones.mo index 28d6280..b2fa697 100644 --- a/tests/data/ideas_free_float_three_zones.mo +++ b/tests/data/ideas_free_float_three_zones.mo @@ -2171,16 +2171,16 @@ extends Modelica.Icons.MaterialPropertiesPackage; end Glazing; package Materials "Library of construction materials" -extends Modelica.Icons.MaterialPropertiesPackage; record plywood = IDEAS.Buildings.Data.Interfaces.Material ( - k=0.12, - c=1210.0, - rho=540.0, - epsLw=0.88, - epsSw=0.55); record id_100 = IDEAS.Buildings.Data.Interfaces.Material ( +extends Modelica.Icons.MaterialPropertiesPackage; record id_100 = IDEAS.Buildings.Data.Interfaces.Material ( k=1.0, c=840.0, rho=2500.0, epsLw=0.88, + epsSw=0.55); record insulation_board = IDEAS.Buildings.Data.Interfaces.Material ( + k=0.03, + c=1200.0, + rho=40.0, + epsLw=0.88, epsSw=0.55); record concrete = IDEAS.Buildings.Data.Interfaces.Material ( k=1.4, c=840.0, @@ -2191,10 +2191,10 @@ extends Modelica.Icons.MaterialPropertiesPackage; record plywood = IDEAS.Buil c=790.0, rho=1920.0, epsLw=0.88, - epsSw=0.55); record insulation_board = IDEAS.Buildings.Data.Interfaces.Material ( - k=0.03, - c=1200.0, - rho=40.0, + epsSw=0.55); record plywood = IDEAS.Buildings.Data.Interfaces.Material ( + k=0.12, + c=1210.0, + rho=540.0, epsLw=0.88, epsSw=0.55); record Air = IDEAS.Buildings.Data.Interfaces.Material ( k=0.025, @@ -2246,7 +2246,7 @@ annotation (choicesAllMatching = true); final azi={ 135, 0, 45, 90 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { -82.828167634051, -181.15623996038877 }, + Placement(transformation(origin = { 93.47740937791978, -156.1410784003279 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.Window[2] @@ -2257,7 +2257,7 @@ annotation (choicesAllMatching = true); final azi={ 45, 90 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 174.63587805082997, -33.81941515560287 }, + Placement(transformation(origin = { 30.3926345682833, -196.91186686603677 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.SlabOnGround floor_1( @@ -2265,7 +2265,7 @@ annotation (choicesAllMatching = true); external_wall constructionType, redeclare package Medium = Medium, A=10) annotation ( - Placement(transformation(origin = { -200.0, 0.8262822978530717 }, + Placement(transformation(origin = { -2.5709217767949935, 195.11798912547258 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.Zone space_2( @@ -2288,7 +2288,7 @@ annotation (choicesAllMatching = true); final azi={ 135, 0, 90 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 158.23411016385796, -100.22666361617807 }, + Placement(transformation(origin = { -148.87317906183785, 75.53860508708064 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.Window[2] @@ -2299,7 +2299,7 @@ annotation (choicesAllMatching = true); final azi={ 0, 90 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { -84.10414117330878, 184.89697105242726 }, + Placement(transformation(origin = { -180.4403240624778, -51.92328524501739 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.SlabOnGround floor_2( @@ -2307,7 +2307,7 @@ annotation (choicesAllMatching = true); external_wall constructionType, redeclare package Medium = Medium, A=10) annotation ( - Placement(transformation(origin = { -5.238215313441063, -196.41483922869767 }, + Placement(transformation(origin = { -40.43634181142905, -182.10271698566092 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.Zone space_3( @@ -2330,7 +2330,7 @@ annotation (choicesAllMatching = true); final azi={ 135, 0, 45 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 180.75569358895507, 34.15512334380171 }, + Placement(transformation(origin = { 59.265565867846384, 166.54639161165068 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.Window[1] @@ -2341,7 +2341,7 @@ annotation (choicesAllMatching = true); final azi={ 45 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { -171.9841091687827, 67.10592822814091 }, + Placement(transformation(origin = { -181.62339936620188, 19.592955768526235 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.SlabOnGround floor_3( @@ -2349,7 +2349,7 @@ annotation (choicesAllMatching = true); external_wall constructionType, redeclare package Medium = Medium, A=10) annotation ( - Placement(transformation(origin = { 48.84328745563495, -163.08607050185364 }, + Placement(transformation(origin = { 172.0999347435368, 90.49175798853952 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.InternalWall internal_space_1_space_2 @@ -2396,24 +2396,24 @@ annotation (Placement(transformation(extent={{-96,76},{-76,96}}))); annotati ideas_free_float_three_zones.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 178.37054374631128, 102.62620607664019 }, + Placement(transformation(origin = { -81.37617343048075, 186.05447220655606 }, extent = {{-10, -10}, {10, 10}} ))); equation connect(space_1.propsBus[1:4],merged_w1_1_w2_1_w3_1_w4_1[1:4].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ -41.4140838170255, 0.0 } ,{ -41.4140838170255, -181.15623996038877 } ,{ -82.828167634051, -181.15623996038877 } }, +points={{ 0.0, 0.0 } ,{ 46.73870468895989, 0.0 } ,{ 46.73870468895989, -156.1410784003279 } ,{ 93.47740937791978, -156.1410784003279 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.propsBus[5:6],merged_win1_1_win2_1[1:2].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ 87.31793902541499, 0.0 } ,{ 87.31793902541499, -33.81941515560287 } ,{ 174.63587805082997, -33.81941515560287 } }, +points={{ 0.0, 0.0 } ,{ 15.19631728414165, 0.0 } ,{ 15.19631728414165, -196.91186686603677 } ,{ 30.3926345682833, -196.91186686603677 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.propsBus[7],floor_1.propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ -100.0, 0.0 } ,{ -100.0, 0.8262822978530717 } ,{ -200.0, 0.8262822978530717 } }, +points={{ 0.0, 0.0 } ,{ -1.2854608883974967, 0.0 } ,{ -1.2854608883974967, 195.11798912547258 } ,{ -2.5709217767949935, 195.11798912547258 } }, color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(space_1.propsBus[8],internal_space_1_space_2.propsBus_a) @@ -2428,17 +2428,17 @@ color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(space_2.propsBus[1:3],merged_w1_2_w2_2_w3_2[1:3].propsBus_a) annotation (Line( -points={{ 250.0, 150.0 } ,{ 204.11705508192898, 150.0 } ,{ 204.11705508192898, -100.22666361617807 } ,{ 158.23411016385796, -100.22666361617807 } }, +points={{ 250.0, 150.0 } ,{ 50.56341046908108, 150.0 } ,{ 50.56341046908108, 75.53860508708064 } ,{ -148.87317906183785, 75.53860508708064 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_2.propsBus[4:5],merged_win1_2_win2_2[1:2].propsBus_a) annotation (Line( -points={{ 250.0, 150.0 } ,{ 82.9479294133456, 150.0 } ,{ 82.94792941334562, 184.89697105242726 } ,{ -84.10414117330878, 184.89697105242726 } }, +points={{ 250.0, 150.0 } ,{ 34.779837968761115, 150.0 } ,{ 34.779837968761086, -51.92328524501739 } ,{ -180.4403240624778, -51.92328524501739 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_2.propsBus[6],floor_2.propsBus_a) annotation (Line( -points={{ 250.0, 150.0 } ,{ 122.38089234327947, 150.0 } ,{ 122.38089234327947, -196.41483922869767 } ,{ -5.238215313441063, -196.41483922869767 } }, +points={{ 250.0, 150.0 } ,{ 104.78182909428548, 150.0 } ,{ 104.78182909428546, -182.10271698566092 } ,{ -40.43634181142905, -182.10271698566092 } }, color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(space_2.propsBus[7],internal_space_1_space_2.propsBus_b) @@ -2453,17 +2453,17 @@ color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(space_3.propsBus[1:3],merged_w1_3_w2_3_w3_3[1:3].propsBus_a) annotation (Line( -points={{ 500.0, 150.0 } ,{ 340.37784679447753, 150.0 } ,{ 340.37784679447753, 34.15512334380171 } ,{ 180.75569358895507, 34.15512334380171 } }, +points={{ 500.0, 150.0 } ,{ 279.6327829339232, 150.0 } ,{ 279.6327829339232, 166.54639161165068 } ,{ 59.265565867846384, 166.54639161165068 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_3.propsBus[4],merged_w4_3[1].propsBus_a) annotation (Line( -points={{ 500.0, 150.0 } ,{ 164.00794541560867, 150.0 } ,{ 164.00794541560862, 67.10592822814091 } ,{ -171.9841091687827, 67.10592822814091 } }, +points={{ 500.0, 150.0 } ,{ 159.18830031689907, 150.0 } ,{ 159.18830031689905, 19.592955768526235 } ,{ -181.62339936620188, 19.592955768526235 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_3.propsBus[5],floor_3.propsBus_a) annotation (Line( -points={{ 500.0, 150.0 } ,{ 274.42164372781747, 150.0 } ,{ 274.42164372781747, -163.08607050185364 } ,{ 48.84328745563495, -163.08607050185364 } }, +points={{ 500.0, 150.0 } ,{ 336.0499673717684, 150.0 } ,{ 336.0499673717684, 90.49175798853952 } ,{ 172.0999347435368, 90.49175798853952 } }, color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(space_3.propsBus[6],internal_space_1_space_3.propsBus_b) @@ -2478,30 +2478,30 @@ color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(space_1.gainCon,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 89.18527187315564, 0.0 } ,{ 89.18527187315564, 102.62620607664019 } ,{ 178.37054374631128, 102.62620607664019 } }, +points={{ 0.0, 0.0 } ,{ -40.688086715240374, 0.0 } ,{ -40.688086715240374, 186.05447220655606 } ,{ -81.37617343048075, 186.05447220655606 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 89.18527187315564, 0.0 } ,{ 89.18527187315564, 102.62620607664019 } ,{ 178.37054374631128, 102.62620607664019 } }, +points={{ 0.0, 0.0 } ,{ -40.688086715240374, 0.0 } ,{ -40.688086715240374, 186.05447220655606 } ,{ -81.37617343048075, 186.05447220655606 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.gainCon,data_bus.port[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 214.18527187315564, 150.0 } ,{ 214.18527187315564, 102.62620607664019 } ,{ 178.37054374631128, 102.62620607664019 } }, +points={{ 250.0, 150.0 } ,{ 84.31191328475961, 150.0 } ,{ 84.31191328475964, 186.05447220655606 } ,{ -81.37617343048075, 186.05447220655606 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.ports[1],data_bus.port_a[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 214.18527187315564, 150.0 } ,{ 214.18527187315564, 102.62620607664019 } ,{ 178.37054374631128, 102.62620607664019 } }, +points={{ 250.0, 150.0 } ,{ 84.31191328475961, 150.0 } ,{ 84.31191328475964, 186.05447220655606 } ,{ -81.37617343048075, 186.05447220655606 } }, thickness=0.05, smooth=Smooth.None)); connect(space_3.gainCon,data_bus.port[3]) annotation (Line( -points={{ 500.0, 150.0 } ,{ 339.18527187315567, 150.0 } ,{ 339.18527187315567, 102.62620607664019 } ,{ 178.37054374631128, 102.62620607664019 } }, +points={{ 500.0, 150.0 } ,{ 209.3119132847596, 150.0 } ,{ 209.31191328475964, 186.05447220655606 } ,{ -81.37617343048075, 186.05447220655606 } }, thickness=0.05, smooth=Smooth.None)); connect(space_3.ports[1],data_bus.port_a[3]) annotation (Line( -points={{ 500.0, 150.0 } ,{ 339.18527187315567, 150.0 } ,{ 339.18527187315567, 102.62620607664019 } ,{ 178.37054374631128, 102.62620607664019 } }, +points={{ 500.0, 150.0 } ,{ 209.3119132847596, 150.0 } ,{ 209.31191328475964, 186.05447220655606 } ,{ -81.37617343048075, 186.05447220655606 } }, thickness=0.05, -smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-250.0,-246.41483922869767},{550.0,250.0}})), Icon( - coordinateSystem(extent={{-250.0,-246.41483922869767},{550.0,250.0}}))); +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-231.62339936620188,-246.91186686603677},{550.0,250.0}})), Icon( + coordinateSystem(extent={{-231.62339936620188,-246.91186686603677},{550.0,250.0}}))); annotation ( Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
win1_110.045.0wall
namedouble_glazing
Window
win2_110.090.0wall
namedouble_glazing
Window
floor_110.090.0floor
nameexternal_wall
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
internal_space_1_space_310.010.0wall
nameinternal_wall
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_210.0135.0wall
nameexternal_wall
ExternalWall
w2_210.00.0wall
nameexternal_wall
ExternalWall
w3_210.090.0wall
nameexternal_wall
ExternalWall
win1_210.00.0wall
namedouble_glazing
Window
win2_210.090.0wall
namedouble_glazing
Window
floor_210.090.0floor
nameexternal_wall
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
internal_space_2_space_310.010.0wall
nameinternal_wall
InternalElement
namespace_3
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_310.0135.0wall
nameexternal_wall
ExternalWall
w2_310.00.0wall
nameexternal_wall
ExternalWall
w3_310.045.0wall
nameexternal_wall
ExternalWall
w4_310.045.0wall
namedouble_glazing
Window
floor_310.090.0floor
nameexternal_wall
FloorOnGround
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_310.010.0wall
nameinternal_wall
InternalElement
internal_space_2_space_310.010.0wall
nameinternal_wall
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); end building; diff --git a/tests/data/ideas_simple_hydronic_no_occupancy.mo b/tests/data/ideas_simple_hydronic_no_occupancy.mo index f73e712..ab8a973 100644 --- a/tests/data/ideas_simple_hydronic_no_occupancy.mo +++ b/tests/data/ideas_simple_hydronic_no_occupancy.mo @@ -554,12 +554,12 @@ iconTransformation(origin = {-2, -42}, extent = {{-110, -9}, {-90, 9}}))); Cont Modelica.Blocks.Sources.RealExpression TCooSetEmission_control (y=298.15); -Modelica.Blocks.Sources.RealExpression - TAirOutBoiler_control - (y=0.0); Modelica.Blocks.Sources.RealExpression TColSetThree_way_valve_control (y=363.15); +Modelica.Blocks.Sources.RealExpression + TAirOutBoiler_control + (y=0.0); Modelica.Blocks.Sources.BooleanExpression triggerThree_way_valve_control (y=true); @@ -570,10 +570,10 @@ connect(dataBus.TZonSpace_1, TRoo[1].T); connect(dataBus.ppmCO2Space_1, TRoo1[1].ppm); connect(dataBus.TCooSetSpace_1, TCooSetEmission_control.y); -connect(dataBus.TAirOutBoiler, -TAirOutBoiler_control.y); connect(dataBus.TColSetThree_way_valve_control, TColSetThree_way_valve_control.y); +connect(dataBus.TAirOutBoiler, +TAirOutBoiler_control.y); connect(dataBus.triggerThree_way_valve_control, triggerThree_way_valve_control.y); end DataServer; @@ -2336,25 +2336,25 @@ extends Modelica.Icons.MaterialPropertiesPackage; end Glazing; package Materials "Library of construction materials" -extends Modelica.Icons.MaterialPropertiesPackage; record plywood = IDEAS.Buildings.Data.Interfaces.Material ( - k=0.12, - c=1210.0, - rho=540.0, - epsLw=0.88, - epsSw=0.55); record id_100 = IDEAS.Buildings.Data.Interfaces.Material ( +extends Modelica.Icons.MaterialPropertiesPackage; record id_100 = IDEAS.Buildings.Data.Interfaces.Material ( k=1.0, c=840.0, rho=2500.0, epsLw=0.88, + epsSw=0.55); record insulation_board = IDEAS.Buildings.Data.Interfaces.Material ( + k=0.03, + c=1200.0, + rho=40.0, + epsLw=0.88, epsSw=0.55); record concrete = IDEAS.Buildings.Data.Interfaces.Material ( k=1.4, c=840.0, rho=2240.0, epsLw=0.88, - epsSw=0.55); record insulation_board = IDEAS.Buildings.Data.Interfaces.Material ( - k=0.03, - c=1200.0, - rho=40.0, + epsSw=0.55); record plywood = IDEAS.Buildings.Data.Interfaces.Material ( + k=0.12, + c=1210.0, + rho=540.0, epsLw=0.88, epsSw=0.55); record Air = IDEAS.Buildings.Data.Interfaces.Material ( k=0.025, @@ -2436,7 +2436,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 135, 0, 45, 90 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 198.78768578946583, -10.419214853567217 }, + Placement(transformation(origin = { 82.14467348101023, -168.77250906674882 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.Window[1] @@ -2447,7 +2447,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 45 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { -193.92343583639052, 44.31834428492774 }, + Placement(transformation(origin = { 24.294324483186408, 186.48340135015937 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.SlabOnGround floor_2( @@ -2455,7 +2455,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; external_wall constructionType, redeclare package Medium = Medium, A=10) annotation ( - Placement(transformation(origin = { -135.4666124471252, 97.59455630766482 }, + Placement(transformation(origin = { -138.92523916747783, 102.03086468809069 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Fluid.HeatExchangers.Radiators. @@ -2500,7 +2500,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; ))); ideas_simple_hydronic_no_occupancy.Common.Controls.ventilation.EmissionControlEmission_control emission_control annotation ( - Placement(transformation(origin = { -127.78799056216235, 152.89341525447873 }, + Placement(transformation(origin = { -127.22496229106049, 163.71714571781166 }, extent = {{-10, -10}, {10, 10}} ))); inner IDEAS.BoundaryConditions.SimInfoManager @@ -2605,24 +2605,24 @@ redeclare package MediumW = MediumW) "Boiler" annotation ( ideas_simple_hydronic_no_occupancy.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 71.28971097191544, -185.94552232465998 }, + Placement(transformation(origin = { -49.258480576665924, 191.3740790564722 }, extent = {{-10, -10}, {10, 10}} ))); equation connect(space_1.propsBus[1:4],merged_w1_1_w2_1_w3_1_w4_1[1:4].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ 99.39384289473291, 0.0 } ,{ 99.39384289473291, -10.419214853567217 } ,{ 198.78768578946583, -10.419214853567217 } }, +points={{ 0.0, 0.0 } ,{ 41.072336740505115, 0.0 } ,{ 41.072336740505115, -168.77250906674882 } ,{ 82.14467348101023, -168.77250906674882 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.propsBus[5],merged_win1_1[1].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ -96.96171791819526, 0.0 } ,{ -96.96171791819526, 44.31834428492774 } ,{ -193.92343583639052, 44.31834428492774 } }, +points={{ 0.0, 0.0 } ,{ 12.147162241593204, 0.0 } ,{ 12.147162241593204, 186.48340135015937 } ,{ 24.294324483186408, 186.48340135015937 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.propsBus[6],floor_2.propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ -67.7333062235626, 0.0 } ,{ -67.7333062235626, 97.59455630766482 } ,{ -135.4666124471252, 97.59455630766482 } }, +points={{ 0.0, 0.0 } ,{ -69.46261958373891, 0.0 } ,{ -69.46261958373891, 102.03086468809069 } ,{ -138.92523916747783, 102.03086468809069 } }, color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(space_1.gainCon,emission.heatPortCon) @@ -2642,7 +2642,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve.y,emission_control.y) annotation (Line( -points={{ 0.0, -75.0 } ,{ -63.893995281081175, -75.0 } ,{ -63.893995281081175, 152.89341525447873 } ,{ -127.78799056216235, 152.89341525447873 } }, +points={{ 0.0, -75.0 } ,{ -63.612481145530246, -75.0 } ,{ -63.612481145530246, 163.71714571781166 } ,{ -127.22496229106049, 163.71714571781166 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve.port_b,emission.port_a) @@ -2702,27 +2702,27 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(emission_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -127.78799056216235, 152.89341525447873 } ,{ -28.249139795123455, 152.89341525447873 } ,{ -28.249139795123455, -185.94552232465998 } ,{ 71.28971097191544, -185.94552232465998 } }, +points={{ -127.22496229106049, 163.71714571781166 } ,{ -88.2417214338632, 163.71714571781166 } ,{ -88.2417214338632, 191.3740790564722 } ,{ -49.258480576665924, 191.3740790564722 } }, thickness=0.05, smooth=Smooth.None)); connect(three_way_valve_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -250.0, -275.0 } ,{ -89.35514451404228, -275.0 } ,{ -89.35514451404228, -185.94552232465998 } ,{ 71.28971097191544, -185.94552232465998 } }, +points={{ -250.0, -275.0 } ,{ -149.62924028833297, -275.0 } ,{ -149.62924028833297, 191.3740790564722 } ,{ -49.258480576665924, 191.3740790564722 } }, thickness=0.05, smooth=Smooth.None)); connect(boiler_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ 180.0, -275.0 } ,{ 125.64485548595772, -275.0 } ,{ 125.64485548595772, -185.94552232465998 } ,{ 71.28971097191544, -185.94552232465998 } }, +points={{ 180.0, -275.0 } ,{ 65.37075971166703, -275.0 } ,{ 65.37075971166703, 191.3740790564722 } ,{ -49.258480576665924, 191.3740790564722 } }, thickness=0.05, smooth=Smooth.None)); connect(pump_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -350.0, -375.0 } ,{ -139.35514451404228, -375.0 } ,{ -139.35514451404228, -185.94552232465998 } ,{ 71.28971097191544, -185.94552232465998 } }, +points={{ -350.0, -375.0 } ,{ -199.62924028833297, -375.0 } ,{ -199.62924028833297, 191.3740790564722 } ,{ -49.258480576665924, 191.3740790564722 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.gainCon,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 35.64485548595772, 0.0 } ,{ 35.64485548595772, -185.94552232465998 } ,{ 71.28971097191544, -185.94552232465998 } }, +points={{ 0.0, 0.0 } ,{ -24.629240288332962, 0.0 } ,{ -24.629240288332962, 191.3740790564722 } ,{ -49.258480576665924, 191.3740790564722 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 35.64485548595772, 0.0 } ,{ 35.64485548595772, -185.94552232465998 } ,{ 71.28971097191544, -185.94552232465998 } }, +points={{ 0.0, 0.0 } ,{ -24.629240288332962, 0.0 } ,{ -24.629240288332962, 191.3740790564722 } ,{ -49.258480576665924, 191.3740790564722 } }, thickness=0.05, smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-400.0,-425.0},{280.0,250.0}})), Icon( coordinateSystem(extent={{-400.0,-425.0},{280.0,250.0}}))); diff --git a/tests/data/ideas_simple_hydronic_three_zones.mo b/tests/data/ideas_simple_hydronic_three_zones.mo index 5da8549..b5565b4 100644 --- a/tests/data/ideas_simple_hydronic_three_zones.mo +++ b/tests/data/ideas_simple_hydronic_three_zones.mo @@ -715,29 +715,29 @@ port_a(redeclare package Medium iconTransformation(origin = {-2, -42}, extent = {{-110, -9}, {-90, 9}}))); Controls.BaseClasses.DataBus dataBus annotation (Placement(transformation( extent={{-120,-18},{-80,22}}), iconTransformation(extent={{-120,62},{-78,98}}))); +Modelica.Blocks.Sources.RealExpression + TCooSetEmission_valve_control + (y=298.15); Modelica.Blocks.Sources.RealExpression TAirOutBoilercontrol (y=0.0); Modelica.Blocks.Sources.RealExpression - TColSetThree_way_valve_control - (y=363.15); + TCooSetEmission_valve_control_3 + (y=298.15); Modelica.Blocks.Sources.RealExpression TColSetThree_way_valve_control_2 (y=363.15); Modelica.Blocks.Sources.RealExpression - TCooSetEmission_valve_control_3 - (y=298.15); + TColSetThree_way_valve_control + (y=363.15); Modelica.Blocks.Sources.RealExpression TCooSetEmission_valve_control_2 (y=298.15); -Modelica.Blocks.Sources.RealExpression - TCooSetEmission_valve_control - (y=298.15); Modelica.Blocks.Sources.BooleanExpression - triggerThree_way_valve_control + triggerThree_way_valve_control_2 (y=true); Modelica.Blocks.Sources.BooleanExpression - triggerThree_way_valve_control_2 + triggerThree_way_valve_control (y=true); equation connect(port[1],TRoo[1]. port); @@ -752,22 +752,22 @@ connect(dataBus.TZonSpace_3, TRoo[3].T); connect(dataBus.ppmCO2Space_1, TRoo1[1].ppm); connect(dataBus.ppmCO2Space_2, TRoo1[2].ppm); connect(dataBus.ppmCO2Space_3, TRoo1[3].ppm); +connect(dataBus.TCooSetSpace_1, +TCooSetEmission_valve_control.y); connect(dataBus.TAirOutBoiler, TAirOutBoilercontrol.y); -connect(dataBus.TColSetThree_way_valve_control, -TColSetThree_way_valve_control.y); -connect(dataBus.TColSetThree_way_valve_control_2, -TColSetThree_way_valve_control_2.y); connect(dataBus.TCooSetSpace_3, TCooSetEmission_valve_control_3.y); +connect(dataBus.TColSetThree_way_valve_control_2, +TColSetThree_way_valve_control_2.y); +connect(dataBus.TColSetThree_way_valve_control, +TColSetThree_way_valve_control.y); connect(dataBus.TCooSetSpace_2, TCooSetEmission_valve_control_2.y); -connect(dataBus.TCooSetSpace_1, -TCooSetEmission_valve_control.y); -connect(dataBus.triggerThree_way_valve_control, -triggerThree_way_valve_control.y); connect(dataBus.triggerThree_way_valve_control_2, triggerThree_way_valve_control_2.y); +connect(dataBus.triggerThree_way_valve_control, +triggerThree_way_valve_control.y); end DataServer; @@ -2528,16 +2528,16 @@ extends Modelica.Icons.MaterialPropertiesPackage; end Glazing; package Materials "Library of construction materials" -extends Modelica.Icons.MaterialPropertiesPackage; record plywood = IDEAS.Buildings.Data.Interfaces.Material ( - k=0.12, - c=1210.0, - rho=540.0, - epsLw=0.88, - epsSw=0.55); record id_100 = IDEAS.Buildings.Data.Interfaces.Material ( +extends Modelica.Icons.MaterialPropertiesPackage; record id_100 = IDEAS.Buildings.Data.Interfaces.Material ( k=1.0, c=840.0, rho=2500.0, epsLw=0.88, + epsSw=0.55); record insulation_board = IDEAS.Buildings.Data.Interfaces.Material ( + k=0.03, + c=1200.0, + rho=40.0, + epsLw=0.88, epsSw=0.55); record concrete = IDEAS.Buildings.Data.Interfaces.Material ( k=1.4, c=840.0, @@ -2548,10 +2548,10 @@ extends Modelica.Icons.MaterialPropertiesPackage; record plywood = IDEAS.Buil c=790.0, rho=1920.0, epsLw=0.88, - epsSw=0.55); record insulation_board = IDEAS.Buildings.Data.Interfaces.Material ( - k=0.03, - c=1200.0, - rho=40.0, + epsSw=0.55); record plywood = IDEAS.Buildings.Data.Interfaces.Material ( + k=0.12, + c=1210.0, + rho=540.0, epsLw=0.88, epsSw=0.55); record Air = IDEAS.Buildings.Data.Interfaces.Material ( k=0.025, @@ -2638,7 +2638,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 135, 0, 45, 90 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 49.79263633344448, -178.80203418976853 }, + Placement(transformation(origin = { 135.24191708356662, -158.79808031297668 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.Window[1] @@ -2649,7 +2649,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 45 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { -44.656085234447936, -194.8467486110346 }, + Placement(transformation(origin = { -27.000406849588828, -193.2623823993902 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.SlabOnGround floor_2( @@ -2657,7 +2657,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; external_wall constructionType, redeclare package Medium = Medium, A=10) annotation ( - Placement(transformation(origin = { -145.49554157029937, 140.51476067645334 }, + Placement(transformation(origin = { 46.05702631328573, 194.037971063514 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Fluid.HeatExchangers.Radiators. @@ -2702,7 +2702,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; ))); ideas_simple_hydronic_three_zones.Common.Controls.ventilation.EmissionControlEmission_valve_control emission_valve_control annotation ( - Placement(transformation(origin = { 177.3517905711216, 74.54747070677044 }, + Placement(transformation(origin = { -127.98146284681098, -138.77015938734382 }, extent = {{-10, -10}, {10, 10}} ))); ideas_simple_hydronic_three_zones.Common.Controls.ventilation.OccupancyOccupancy_0 @@ -2733,7 +2733,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 135, 0, 45, 90 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 148.79973983056868, 94.62969252658415 }, + Placement(transformation(origin = { 94.8143886346521, -166.6390402319848 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.Window[1] @@ -2744,7 +2744,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 45 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 143.31071043428338, -153.98057296932973 }, + Placement(transformation(origin = { 154.80278289855528, 146.42587761181753 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.SlabOnGround floor_3( @@ -2752,7 +2752,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; external_wall constructionType, redeclare package Medium = Medium, A=10) annotation ( - Placement(transformation(origin = { 19.959898052464805, -192.75612687349727 }, + Placement(transformation(origin = { -50.15991149354098, -171.74617451462058 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Fluid.HeatExchangers.Radiators. @@ -2797,7 +2797,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; ))); ideas_simple_hydronic_three_zones.Common.Controls.ventilation.EmissionControlEmission_valve_control_2 emission_valve_control_2 annotation ( - Placement(transformation(origin = { -115.74828363356625, 150.9346665138215 }, + Placement(transformation(origin = { -195.69675717553068, 20.545946023448664 }, extent = {{-10, -10}, {10, 10}} ))); ideas_simple_hydronic_three_zones.Common.Controls.ventilation.OccupancyOccupancy_1 @@ -2828,7 +2828,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 135, 0, 45, 90 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { -94.08853074889609, -171.48309934090227 }, + Placement(transformation(origin = { -162.3137352450054, 96.02975694189372 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.Window[1] @@ -2839,7 +2839,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 45 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { -187.87191148918777, 41.68186405444979 }, + Placement(transformation(origin = { -79.58730506158766, -178.45686249914093 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.SlabOnGround floor_4( @@ -2847,7 +2847,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; external_wall constructionType, redeclare package Medium = Medium, A=10) annotation ( - Placement(transformation(origin = { -11.440183849028353, -183.24694871087752 }, + Placement(transformation(origin = { 151.30011097782935, -117.91632546734267 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Fluid.HeatExchangers.Radiators. @@ -2892,7 +2892,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; ))); ideas_simple_hydronic_three_zones.Common.Controls.ventilation.EmissionControlEmission_valve_control_3 emission_valve_control_3 annotation ( - Placement(transformation(origin = { -124.685035002055, -158.46358646287973 }, + Placement(transformation(origin = { 195.514897578814, 35.41076852931536 }, extent = {{-10, -10}, {10, 10}} ))); ideas_simple_hydronic_three_zones.Common.Controls.ventilation.OccupancyOccupancy_2 @@ -3080,24 +3080,24 @@ redeclare package MediumW = MediumW) "Boiler" annotation ( ideas_simple_hydronic_three_zones.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 195.1388975135201, 13.09855530291381 }, + Placement(transformation(origin = { 73.88878445320762, 145.27789740746704 }, extent = {{-10, -10}, {10, 10}} ))); equation connect(space_1.propsBus[1:4],merged_w1_1_w2_1_w3_1_w4_1[1:4].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ 24.89631816672224, 0.0 } ,{ 24.89631816672224, -178.80203418976853 } ,{ 49.79263633344448, -178.80203418976853 } }, +points={{ 0.0, 0.0 } ,{ 67.62095854178331, 0.0 } ,{ 67.62095854178331, -158.79808031297668 } ,{ 135.24191708356662, -158.79808031297668 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.propsBus[5],merged_win1_1[1].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ -22.328042617223968, 0.0 } ,{ -22.328042617223968, -194.8467486110346 } ,{ -44.656085234447936, -194.8467486110346 } }, +points={{ 0.0, 0.0 } ,{ -13.500203424794414, 0.0 } ,{ -13.500203424794414, -193.2623823993902 } ,{ -27.000406849588828, -193.2623823993902 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.propsBus[6],floor_2.propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ -72.74777078514968, 0.0 } ,{ -72.74777078514968, 140.51476067645334 } ,{ -145.49554157029937, 140.51476067645334 } }, +points={{ 0.0, 0.0 } ,{ 23.028513156642866, 0.0 } ,{ 23.028513156642866, 194.037971063514 } ,{ 46.05702631328573, 194.037971063514 } }, color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(space_1.gainCon,emission.heatPortCon) @@ -3132,7 +3132,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve.y,emission_valve_control.y) annotation (Line( -points={{ 0.0, -75.0 } ,{ 88.6758952855608, -75.0 } ,{ 88.6758952855608, 74.54747070677044 } ,{ 177.3517905711216, 74.54747070677044 } }, +points={{ 0.0, -75.0 } ,{ -63.99073142340549, -75.0 } ,{ -63.99073142340549, -138.77015938734382 } ,{ -127.98146284681098, -138.77015938734382 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve.port_b,emission.port_a) @@ -3142,17 +3142,17 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_2.propsBus[1:4],merged_w1_2_w2_2_w3_2_w4_2[1:4].propsBus_a) annotation (Line( -points={{ 250.0, 150.0 } ,{ 199.39986991528434, 150.0 } ,{ 199.39986991528434, 94.62969252658415 } ,{ 148.79973983056868, 94.62969252658415 } }, +points={{ 250.0, 150.0 } ,{ 172.40719431732606, 150.0 } ,{ 172.40719431732606, -166.6390402319848 } ,{ 94.8143886346521, -166.6390402319848 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_2.propsBus[5],merged_win1_2[1].propsBus_a) annotation (Line( -points={{ 250.0, 150.0 } ,{ 196.65535521714168, 150.0 } ,{ 196.65535521714168, -153.98057296932973 } ,{ 143.31071043428338, -153.98057296932973 } }, +points={{ 250.0, 150.0 } ,{ 202.40139144927764, 150.0 } ,{ 202.40139144927764, 146.42587761181753 } ,{ 154.80278289855528, 146.42587761181753 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_2.propsBus[6],floor_3.propsBus_a) annotation (Line( -points={{ 250.0, 150.0 } ,{ 134.97994902623242, 150.0 } ,{ 134.9799490262324, -192.75612687349727 } ,{ 19.959898052464805, -192.75612687349727 } }, +points={{ 250.0, 150.0 } ,{ 99.92004425322952, 150.0 } ,{ 99.92004425322949, -171.74617451462058 } ,{ -50.15991149354098, -171.74617451462058 } }, color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(space_2.gainCon,emission_2.heatPortCon) @@ -3187,7 +3187,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_2.y,emission_valve_control_2.y) annotation (Line( -points={{ 250.0, 75.0 } ,{ 67.12585818321688, 75.0 } ,{ 67.12585818321688, 150.9346665138215 } ,{ -115.74828363356625, 150.9346665138215 } }, +points={{ 250.0, 75.0 } ,{ 27.151621412234647, 75.0 } ,{ 27.151621412234675, 20.545946023448664 } ,{ -195.69675717553068, 20.545946023448664 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_2.port_b,emission_2.port_a) @@ -3197,17 +3197,17 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_3.propsBus[1:4],merged_w1_3_w2_3_w3_3_w4_3[1:4].propsBus_a) annotation (Line( -points={{ 500.0, 150.0 } ,{ 202.95573462555194, 150.0 } ,{ 202.95573462555197, -171.48309934090227 } ,{ -94.08853074889609, -171.48309934090227 } }, +points={{ 500.0, 150.0 } ,{ 168.84313237749728, 150.0 } ,{ 168.8431323774973, 96.02975694189372 } ,{ -162.3137352450054, 96.02975694189372 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_3.propsBus[5],merged_win1_3[1].propsBus_a) annotation (Line( -points={{ 500.0, 150.0 } ,{ 156.0640442554061, 150.0 } ,{ 156.06404425540615, 41.68186405444979 } ,{ -187.87191148918777, 41.68186405444979 } }, +points={{ 500.0, 150.0 } ,{ 210.20634746920615, 150.0 } ,{ 210.2063474692062, -178.45686249914093 } ,{ -79.58730506158766, -178.45686249914093 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_3.propsBus[6],floor_4.propsBus_a) annotation (Line( -points={{ 500.0, 150.0 } ,{ 244.27990807548582, 150.0 } ,{ 244.27990807548582, -183.24694871087752 } ,{ -11.440183849028353, -183.24694871087752 } }, +points={{ 500.0, 150.0 } ,{ 325.6500554889147, 150.0 } ,{ 325.65005548891463, -117.91632546734267 } ,{ 151.30011097782935, -117.91632546734267 } }, color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(space_3.gainCon,emission_3.heatPortCon) @@ -3242,7 +3242,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_3.y,emission_valve_control_3.y) annotation (Line( -points={{ 500.0, 75.0 } ,{ 187.6574824989725, 75.0 } ,{ 187.65748249897248, -158.46358646287973 } ,{ -124.685035002055, -158.46358646287973 } }, +points={{ 500.0, 75.0 } ,{ 347.757448789407, 75.0 } ,{ 347.757448789407, 35.41076852931536 } ,{ 195.514897578814, 35.41076852931536 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(valve_3.port_b,emission_3.port_a) @@ -3342,67 +3342,67 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(emission_valve_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ 177.3517905711216, 74.54747070677044 } ,{ 186.24534404232085, 74.54747070677044 } ,{ 186.24534404232085, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ -127.98146284681098, -138.77015938734382 } ,{ -27.046339196801682, -138.77015938734382 } ,{ -27.046339196801682, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ 72.56944875676005, 0.0 } ,{ 72.56944875676005, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ -50.0, 0.0 } ,{ 11.94439222660381, 0.0 } ,{ 11.94439222660381, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(emission_valve_control_2.dataBus,data_bus.dataBus) annotation (Line( -points={{ -115.74828363356625, 150.9346665138215 } ,{ 39.695306939976945, 150.9346665138215 } ,{ 39.695306939976916, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ -195.69675717553068, 20.545946023448664 } ,{ -60.90398636116154, 20.545946023448664 } ,{ -60.903986361161515, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_1.dataBus,data_bus.dataBus) annotation (Line( -points={{ 200.0, 150.0 } ,{ 197.56944875676004, 150.0 } ,{ 197.56944875676004, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ 200.0, 150.0 } ,{ 136.9443922266038, 150.0 } ,{ 136.9443922266038, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(emission_valve_control_3.dataBus,data_bus.dataBus) annotation (Line( -points={{ -124.685035002055, -158.46358646287973 } ,{ 35.22693125573255, -158.46358646287973 } ,{ 35.22693125573255, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ 195.514897578814, 35.41076852931536 } ,{ 134.7018410160108, 35.41076852931536 } ,{ 134.7018410160108, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_2.dataBus,data_bus.dataBus) annotation (Line( -points={{ 450.0, 150.0 } ,{ 322.56944875676004, 150.0 } ,{ 322.56944875676004, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ 450.0, 150.0 } ,{ 261.9443922266038, 150.0 } ,{ 261.9443922266038, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(three_way_valve_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -250.0, -275.0 } ,{ -27.43055124323996, -275.0 } ,{ -27.430551243239933, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ -250.0, -275.0 } ,{ -88.05560777339619, -275.0 } ,{ -88.05560777339619, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(three_way_valve_control_2.dataBus,data_bus.dataBus) annotation (Line( -points={{ 250.0, -125.0 } ,{ 222.56944875676004, -125.0 } ,{ 222.56944875676004, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ 250.0, -125.0 } ,{ 161.9443922266038, -125.0 } ,{ 161.9443922266038, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(BoilerControl.dataBus,data_bus.dataBus) annotation (Line( -points={{ 180.0, -275.0 } ,{ 187.56944875676004, -275.0 } ,{ 187.56944875676004, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ 180.0, -275.0 } ,{ 126.94439222660381, -275.0 } ,{ 126.94439222660381, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(pump_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -350.0, -375.0 } ,{ -77.43055124323996, -375.0 } ,{ -77.43055124323993, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ -350.0, -375.0 } ,{ -138.0556077733962, -375.0 } ,{ -138.0556077733962, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.gainCon,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 97.56944875676005, 0.0 } ,{ 97.56944875676005, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ 0.0, 0.0 } ,{ 36.94439222660381, 0.0 } ,{ 36.94439222660381, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 97.56944875676005, 0.0 } ,{ 97.56944875676005, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ 0.0, 0.0 } ,{ 36.94439222660381, 0.0 } ,{ 36.94439222660381, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.gainCon,data_bus.port[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 222.56944875676004, 150.0 } ,{ 222.56944875676004, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ 250.0, 150.0 } ,{ 161.9443922266038, 150.0 } ,{ 161.9443922266038, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.ports[1],data_bus.port_a[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 222.56944875676004, 150.0 } ,{ 222.56944875676004, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ 250.0, 150.0 } ,{ 161.9443922266038, 150.0 } ,{ 161.9443922266038, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(space_3.gainCon,data_bus.port[3]) annotation (Line( -points={{ 500.0, 150.0 } ,{ 347.56944875676004, 150.0 } ,{ 347.56944875676004, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ 500.0, 150.0 } ,{ 286.9443922266038, 150.0 } ,{ 286.9443922266038, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None)); connect(space_3.ports[1],data_bus.port_a[3]) annotation (Line( -points={{ 500.0, 150.0 } ,{ 347.56944875676004, 150.0 } ,{ 347.56944875676004, 13.09855530291381 } ,{ 195.1388975135201, 13.09855530291381 } }, +points={{ 500.0, 150.0 } ,{ 286.9443922266038, 150.0 } ,{ 286.9443922266038, 145.27789740746704 } ,{ 73.88878445320762, 145.27789740746704 } }, thickness=0.05, smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-400.0,-425.0},{680.0,250.0}})), Icon( coordinateSystem(extent={{-400.0,-425.0},{680.0,250.0}}))); diff --git a/tests/data/multiple_internal_walls_buildings.mo b/tests/data/multiple_internal_walls_buildings.mo index bc0c9a4..c610d69 100644 --- a/tests/data/multiple_internal_walls_buildings.mo +++ b/tests/data/multiple_internal_walls_buildings.mo @@ -2322,7 +2322,7 @@ parameter Integer nRoo = 2 "Number of rooms"; multiple_internal_walls_buildings.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 58.98819446517986, -194.11650020617583 }, + Placement(transformation(origin = { 192.41395361164584, 0.3193533320693757 }, extent = {{-10, -10}, {10, 10}} ))); @@ -2367,32 +2367,32 @@ color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ 4.4940972325899295, 0.0 } ,{ 4.4940972325899295, -194.11650020617583 } ,{ 58.98819446517986, -194.11650020617583 } }, +points={{ -50.0, 0.0 } ,{ 71.20697680582292, 0.0 } ,{ 71.20697680582292, 0.3193533320693757 } ,{ 192.41395361164584, 0.3193533320693757 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_1.dataBus,data_bus.dataBus) annotation (Line( -points={{ 200.0, 150.0 } ,{ 129.49409723258992, 150.0 } ,{ 129.49409723258992, -194.11650020617583 } ,{ 58.98819446517986, -194.11650020617583 } }, +points={{ 200.0, 150.0 } ,{ 196.20697680582293, 150.0 } ,{ 196.20697680582293, 0.3193533320693757 } ,{ 192.41395361164584, 0.3193533320693757 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.heaPorAir,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 29.49409723258993, 0.0 } ,{ 29.49409723258993, -194.11650020617583 } ,{ 58.98819446517986, -194.11650020617583 } }, +points={{ 0.0, 0.0 } ,{ 96.20697680582292, 0.0 } ,{ 96.20697680582292, 0.3193533320693757 } ,{ 192.41395361164584, 0.3193533320693757 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 29.49409723258993, 0.0 } ,{ 29.49409723258993, -194.11650020617583 } ,{ 58.98819446517986, -194.11650020617583 } }, +points={{ 0.0, 0.0 } ,{ 96.20697680582292, 0.0 } ,{ 96.20697680582292, 0.3193533320693757 } ,{ 192.41395361164584, 0.3193533320693757 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.heaPorAir,data_bus.port[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 154.49409723258992, 150.0 } ,{ 154.49409723258992, -194.11650020617583 } ,{ 58.98819446517986, -194.11650020617583 } }, +points={{ 250.0, 150.0 } ,{ 221.20697680582293, 150.0 } ,{ 221.20697680582293, 0.3193533320693757 } ,{ 192.41395361164584, 0.3193533320693757 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.ports[1],data_bus.port_a[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 154.49409723258992, 150.0 } ,{ 154.49409723258992, -194.11650020617583 } ,{ 58.98819446517986, -194.11650020617583 } }, +points={{ 250.0, 150.0 } ,{ 221.20697680582293, 150.0 } ,{ 221.20697680582293, 0.3193533320693757 } ,{ 192.41395361164584, 0.3193533320693757 } }, thickness=0.05, -smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-150.0,-244.11650020617583},{300.0,250.0}})), Icon( - coordinateSystem(extent={{-150.0,-244.11650020617583},{300.0,250.0}}))); +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-224.95624832327954,-149.4743392014778},{300.0,250.0}})), Icon( + coordinateSystem(extent={{-224.95624832327954,-149.4743392014778},{300.0,250.0}}))); annotation ( - Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo11.3
hRoo3.75
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume42.375
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
bw13.090.0wall
nameexternal_wall
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_2_110.045.0wall
nameinternal_wall
InternalElement
internal_space_1_space_2_210.010.0wall
nameDoor
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo11.3
hRoo3.75
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume42.375
occupancy
nameoccupancy_1
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
bw_113.090.0wall
nameexternal_wall
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_2_110.045.0wall
nameinternal_wall
InternalElement
internal_space_1_space_2_210.010.0wall
nameDoor
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameDoor
layers
materialthickness
namewood
k0.131
c1000.0
rho600.0
epsLw0.85
epsSw0.65
0.04
nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); + Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo11.3
hRoo3.75
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume42.375
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
bw13.090.0wall
nameexternal_wall
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_2_110.045.0wall
nameinternal_wall
InternalElement
internal_space_1_space_2_210.010.0wall
nameDoor
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo11.3
hRoo3.75
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume42.375
occupancy
nameoccupancy_1
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
bw_113.090.0wall
nameexternal_wall
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_2_110.045.0wall
nameinternal_wall
InternalElement
internal_space_1_space_2_210.010.0wall
nameDoor
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1
nameDoor
layers
materialthickness
namewood
k0.131
c1000.0
rho600.0
epsLw0.85
epsSw0.65
0.04

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); end building; diff --git a/tests/data/multiple_internal_walls_ideas.mo b/tests/data/multiple_internal_walls_ideas.mo index 0665be3..cc96296 100644 --- a/tests/data/multiple_internal_walls_ideas.mo +++ b/tests/data/multiple_internal_walls_ideas.mo @@ -2152,10 +2152,10 @@ extends Modelica.Icons.MaterialPropertiesPackage; end Glazing; package Materials "Library of construction materials" -extends Modelica.Icons.MaterialPropertiesPackage; record plywood = IDEAS.Buildings.Data.Interfaces.Material ( - k=0.12, - c=1210.0, - rho=540.0, +extends Modelica.Icons.MaterialPropertiesPackage; record insulation_board = IDEAS.Buildings.Data.Interfaces.Material ( + k=0.03, + c=1200.0, + rho=40.0, epsLw=0.88, epsSw=0.55); record concrete = IDEAS.Buildings.Data.Interfaces.Material ( k=1.4, @@ -2167,10 +2167,10 @@ extends Modelica.Icons.MaterialPropertiesPackage; record plywood = IDEAS.Buil c=790.0, rho=1920.0, epsLw=0.88, - epsSw=0.55); record insulation_board = IDEAS.Buildings.Data.Interfaces.Material ( - k=0.03, - c=1200.0, - rho=40.0, + epsSw=0.55); record plywood = IDEAS.Buildings.Data.Interfaces.Material ( + k=0.12, + c=1210.0, + rho=540.0, epsLw=0.88, epsSw=0.55); record wood = IDEAS.Buildings.Data.Interfaces.Material ( k=0.131, @@ -2178,12 +2178,7 @@ extends Modelica.Icons.MaterialPropertiesPackage; record plywood = IDEAS.Buil rho=600.0, epsLw=0.88, epsSw=0.55);end Materials; -package Constructions "Library of building envelope constructions" record Door - "Door" - extends IDEAS.Buildings.Data.Interfaces.Construction( - mats={multiple_internal_walls_ideas.Data.Materials.wood - (d=0.04) }); - end Door; record internal_wall +package Constructions "Library of building envelope constructions" record internal_wall "internal_wall" extends IDEAS.Buildings.Data.Interfaces.Construction( mats={multiple_internal_walls_ideas.Data.Materials.brick @@ -2195,7 +2190,12 @@ package Constructions "Library of building envelope constructions" record D (d=0.2),multiple_internal_walls_ideas.Data.Materials.insulation_board (d=0.02),multiple_internal_walls_ideas.Data.Materials.plywood (d=0.1) }); - end external_wall; + end external_wall; record Door + "Door" + extends IDEAS.Buildings.Data.Interfaces.Construction( + mats={multiple_internal_walls_ideas.Data.Materials.wood + (d=0.04) }); + end Door; end Constructions; end Data; model building @@ -2262,7 +2262,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 90 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 167.71497123696298, -82.64740717927515 }, + Placement(transformation(origin = { -25.60106298118816, 190.09353306050326 }, extent = {{-10, -10}, {10, 10}} ))); multiple_internal_walls_ideas.Common.Controls.ventilation.OccupancyOccupancy_0 @@ -2293,7 +2293,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 90 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 123.12048730183683, 123.89362820858419 }, + Placement(transformation(origin = { 190.14203916212932, 87.87125062373863 }, extent = {{-10, -10}, {10, 10}} ))); multiple_internal_walls_ideas.Common.Controls.ventilation.OccupancyOccupancy_1 @@ -2337,14 +2337,14 @@ annotation (Placement(transformation(extent={{-96,76},{-76,96}}))); annotati multiple_internal_walls_ideas.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { -147.37266538685583, -146.37464836918494 }, + Placement(transformation(origin = { -107.61111371376256, -173.17388316596563 }, extent = {{-10, -10}, {10, 10}} ))); equation connect(space_1.propsBus[1],merged_bw[1].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ 83.85748561848149, 0.0 } ,{ 83.85748561848149, -82.64740717927515 } ,{ 167.71497123696298, -82.64740717927515 } }, +points={{ 0.0, 0.0 } ,{ -12.80053149059408, 0.0 } ,{ -12.80053149059408, 190.09353306050326 } ,{ -25.60106298118816, 190.09353306050326 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.yOcc,occupancy_0.y) @@ -2364,7 +2364,7 @@ color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(space_2.propsBus[1],merged_bw_1[1].propsBus_a) annotation (Line( -points={{ 250.0, 150.0 } ,{ 186.5602436509184, 150.0 } ,{ 186.5602436509184, 123.89362820858419 } ,{ 123.12048730183683, 123.89362820858419 } }, +points={{ 250.0, 150.0 } ,{ 220.07101958106466, 150.0 } ,{ 220.07101958106466, 87.87125062373863 } ,{ 190.14203916212932, 87.87125062373863 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_2.yOcc,occupancy_1.y) @@ -2384,32 +2384,32 @@ color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ -98.68633269342791, 0.0 } ,{ -98.68633269342791, -146.37464836918494 } ,{ -147.37266538685583, -146.37464836918494 } }, +points={{ -50.0, 0.0 } ,{ -78.80555685688128, 0.0 } ,{ -78.80555685688128, -173.17388316596563 } ,{ -107.61111371376256, -173.17388316596563 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_1.dataBus,data_bus.dataBus) annotation (Line( -points={{ 200.0, 150.0 } ,{ 26.313667306572086, 150.0 } ,{ 26.313667306572086, -146.37464836918494 } ,{ -147.37266538685583, -146.37464836918494 } }, +points={{ 200.0, 150.0 } ,{ 46.19444314311872, 150.0 } ,{ 46.19444314311872, -173.17388316596563 } ,{ -107.61111371376256, -173.17388316596563 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.gainCon,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ -73.68633269342791, 0.0 } ,{ -73.68633269342791, -146.37464836918494 } ,{ -147.37266538685583, -146.37464836918494 } }, +points={{ 0.0, 0.0 } ,{ -53.80555685688128, 0.0 } ,{ -53.80555685688128, -173.17388316596563 } ,{ -107.61111371376256, -173.17388316596563 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ -73.68633269342791, 0.0 } ,{ -73.68633269342791, -146.37464836918494 } ,{ -147.37266538685583, -146.37464836918494 } }, +points={{ 0.0, 0.0 } ,{ -53.80555685688128, 0.0 } ,{ -53.80555685688128, -173.17388316596563 } ,{ -107.61111371376256, -173.17388316596563 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.gainCon,data_bus.port[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 51.313667306572086, 150.0 } ,{ 51.313667306572086, -146.37464836918494 } ,{ -147.37266538685583, -146.37464836918494 } }, +points={{ 250.0, 150.0 } ,{ 71.19444314311872, 150.0 } ,{ 71.19444314311872, -173.17388316596563 } ,{ -107.61111371376256, -173.17388316596563 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.ports[1],data_bus.port_a[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 51.313667306572086, 150.0 } ,{ 51.313667306572086, -146.37464836918494 } ,{ -147.37266538685583, -146.37464836918494 } }, +points={{ 250.0, 150.0 } ,{ 71.19444314311872, 150.0 } ,{ 71.19444314311872, -173.17388316596563 } ,{ -107.61111371376256, -173.17388316596563 } }, thickness=0.05, -smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-197.37266538685583,-196.37464836918494},{300.0,250.0}})), Icon( - coordinateSystem(extent={{-197.37266538685583,-196.37464836918494},{300.0,250.0}}))); +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-157.61111371376256,-223.17388316596563},{300.0,250.0}})), Icon( + coordinateSystem(extent={{-157.61111371376256,-223.17388316596563},{300.0,250.0}}))); annotation ( - Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo11.3
hRoo3.75
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume42.375
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
bw13.090.0wall
nameexternal_wall
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_2_110.045.0wall
nameinternal_wall
InternalElement
internal_space_1_space_2_210.010.0wall
nameDoor
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo11.3
hRoo3.75
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume42.375
occupancy
nameoccupancy_1
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
bw_113.090.0wall
nameexternal_wall
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_2_110.045.0wall
nameinternal_wall
InternalElement
internal_space_1_space_2_210.010.0wall
nameDoor
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameDoor
layers
materialthickness
namewood
k0.131
c1000.0
rho600.0
epsLw0.85
epsSw0.65
0.04
nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); + Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo11.3
hRoo3.75
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume42.375
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
bw13.090.0wall
nameexternal_wall
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_2_110.045.0wall
nameinternal_wall
InternalElement
internal_space_1_space_2_210.010.0wall
nameDoor
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo11.3
hRoo3.75
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume42.375
occupancy
nameoccupancy_1
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
bw_113.090.0wall
nameexternal_wall
ExternalWall
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_2_110.045.0wall
nameinternal_wall
InternalElement
internal_space_1_space_2_210.010.0wall
nameDoor
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2
nameDoor
layers
materialthickness
namewood
k0.131
c1000.0
rho600.0
epsLw0.85
epsSw0.65
0.04

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); end building; diff --git a/tests/data/one_spaces_air_handling_unit.mo b/tests/data/one_spaces_air_handling_unit.mo index ddf3736..49f9b58 100644 --- a/tests/data/one_spaces_air_handling_unit.mo +++ b/tests/data/one_spaces_air_handling_unit.mo @@ -566,15 +566,18 @@ iconTransformation(origin = {-2, -42}, extent = {{-110, -9}, {-90, 9}}))); Cont Modelica.Blocks.Sources.RealExpression TSupSetVav_in_control (y=293.15); +Modelica.Blocks.Sources.RealExpression + TCooSetVav_in_control + (y=298.15); Modelica.Blocks.Sources.RealExpression ppmCO2SetVav_in_control (y=0.0); Modelica.Blocks.Sources.RealExpression THeaSetVav_in_control (y=293.15); -Modelica.Blocks.Sources.RealExpression - TCooSetVav_in_control - (y=298.15); +Modelica.Blocks.Sources.IntegerExpression + oveFloSetVav_in_control + (y=0); Modelica.Blocks.Sources.IntegerExpression uOpeModVav_in_control (y=1); @@ -584,26 +587,23 @@ Modelica.Blocks.Sources.IntegerExpression Modelica.Blocks.Sources.IntegerExpression oveDamPosVav_in_control (y=0); -Modelica.Blocks.Sources.IntegerExpression - oveFloSetVav_in_control - (y=0); Modelica.Blocks.Sources.BooleanExpression - u1OccVav_in_control + uHeaOffVav_in_control (y=false); Modelica.Blocks.Sources.BooleanExpression - u1WinVav_in_control + u1HotPlaVav_in_control (y=false); Modelica.Blocks.Sources.BooleanExpression - u1FanVav_in_control + u1OccVav_in_control (y=false); Modelica.Blocks.Sources.BooleanExpression - u1SupFanAhu_control + u1WinVav_in_control (y=false); Modelica.Blocks.Sources.BooleanExpression - u1HotPlaVav_in_control + u1FanVav_in_control (y=false); Modelica.Blocks.Sources.BooleanExpression - uHeaOffVav_in_control + u1SupFanAhu_control (y=false); equation connect(port[1],TRoo[1]. port); @@ -612,20 +612,24 @@ connect(dataBus.TZonSpace_1, TRoo[1].T); connect(dataBus.ppmCO2Space_1, TRoo1[1].ppm); connect(dataBus.TSupSetSpace_1, TSupSetVav_in_control.y); +connect(dataBus.TCooSetSpace_1, +TCooSetVav_in_control.y); connect(dataBus.ppmCO2SetSpace_1, ppmCO2SetVav_in_control.y); connect(dataBus.THeaSetSpace_1, THeaSetVav_in_control.y); -connect(dataBus.TCooSetSpace_1, -TCooSetVav_in_control.y); +connect(dataBus.oveFloSetSpace_1, +oveFloSetVav_in_control.y); connect(dataBus.uOpeModSpace_1, uOpeModVav_in_control.y); connect(dataBus.uAhuOpeModAhu_control, uAhuOpeModAhu_control.y); connect(dataBus.oveDamPosSpace_1, oveDamPosVav_in_control.y); -connect(dataBus.oveFloSetSpace_1, -oveFloSetVav_in_control.y); +connect(dataBus.uHeaOffSpace_1, +uHeaOffVav_in_control.y); +connect(dataBus.u1HotPlaSpace_1, +u1HotPlaVav_in_control.y); connect(dataBus.u1OccSpace_1, u1OccVav_in_control.y); connect(dataBus.u1WinSpace_1, @@ -634,10 +638,6 @@ connect(dataBus.u1FanSpace_1, u1FanVav_in_control.y); connect(dataBus.u1SupFanAhu_control, u1SupFanAhu_control.y); -connect(dataBus.u1HotPlaSpace_1, -u1HotPlaVav_in_control.y); -connect(dataBus.uHeaOffSpace_1, -uHeaOffVav_in_control.y); end DataServer; @@ -2479,12 +2479,12 @@ package MediumW = Buildings.Media.Water "Medium model"; THeaAirInl_nominal=30, THeaAirDis_nominal=25 ) annotation ( - Placement(transformation(origin = { -150.51284691751368, -139.77931252815333 }, + Placement(transformation(origin = { 199.82121521501287, -6.27884261940033 }, extent = {{-10, -10}, {10, 10}} ))); one_spaces_air_handling_unit.Common.Controls.ventilation.VAVControlVav_in_control vav_in_control annotation ( - Placement(transformation(origin = { -168.92421648684052, 96.35556948450434 }, + Placement(transformation(origin = { 127.82249879365419, -161.02984981944442 }, extent = {{-10, -10}, {10, 10}} ))); Buildings.Fluid.FixedResistances.PressureDrop @@ -2493,7 +2493,7 @@ package MediumW = Buildings.Media.Water "Medium model"; redeclare package Medium = Medium, allowFlowReversal = false, dp_nominal=40) "Pressure drop for return duct" annotation ( - Placement(transformation(origin = { 30.311661602914803, 195.91526174530028 }, + Placement(transformation(origin = { 69.66114901095764, 186.9413362940161 }, extent = {{-10, -10}, {10, 10}} ))); Buildings.Fluid.FixedResistances.PressureDrop @@ -2502,7 +2502,7 @@ package MediumW = Buildings.Media.Water "Medium model"; redeclare package Medium = Medium, allowFlowReversal = false, dp_nominal=40) "Pressure drop for return duct" annotation ( - Placement(transformation(origin = { 4.014235779241073, -190.34213433329447 }, + Placement(transformation(origin = { -197.20022789842602, -28.760927401128225 }, extent = {{-10, -10}, {10, 10}} ))); Buildings.BoundaryConditions.WeatherData.ReaderTMY3 @@ -2520,12 +2520,12 @@ package MediumW = Buildings.Media.Water "Medium model"; VRoo={100,100}, AFlo={20,20}, mCooVAV_flow_nominal={0.01,0.01}) annotation ( - Placement(transformation(origin = { -183.76637025897378, -63.53269188708004 }, + Placement(transformation(origin = { -171.6361083034181, -114.49868992231835 }, extent = {{-10, -10}, {10, 10}} ))); one_spaces_air_handling_unit.Common.Controls.ventilation.AhuControlAhu_control ahu_control annotation ( - Placement(transformation(origin = { -53.18023193409751, 192.0040970114672 }, + Placement(transformation(origin = { -22.055025456519758, -200.0 }, extent = {{-10, -10}, {10, 10}} ))); Buildings.Fluid.Sources.Outside boundary @@ -2536,7 +2536,7 @@ package MediumW = Buildings.Media.Water "Medium model"; one_spaces_air_handling_unit.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 161.6235677810551, -129.75424684460367 }, + Placement(transformation(origin = { 188.0862206877723, 80.09808659738555 }, extent = {{-10, -10}, {10, 10}} ))); @@ -2548,7 +2548,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.ports[1],pressure_drop_duct_out.port_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ 15.155830801457402, 0.0 } ,{ 15.155830801457402, 195.91526174530028 } ,{ 30.311661602914803, 195.91526174530028 } }, +points={{ 0.0, 0.0 } ,{ 34.83057450547882, 0.0 } ,{ 34.83057450547882, 186.9413362940161 } ,{ 69.66114901095764, 186.9413362940161 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.weaBus,weather_12.weaBus) @@ -2557,37 +2557,37 @@ points={{ 0.0, 0.0 } ,{ -50.0, 0.0 } ,{ -50.0, 200.0 } ,{ -100.0, 200.0 thickness=0.05, smooth=Smooth.None)); connect(vav_in.dataBus,vav_in_control.dataBus) annotation (Line( -points={{ -150.51284691751368, -139.77931252815333 } ,{ -159.7185317021771, -139.77931252815333 } ,{ -159.7185317021771, 96.35556948450434 } ,{ -168.92421648684052, 96.35556948450434 } }, +points={{ 199.82121521501287, -6.27884261940033 } ,{ 163.82185700433354, -6.27884261940033 } ,{ 163.82185700433354, -161.02984981944442 } ,{ 127.82249879365419, -161.02984981944442 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(vav_in.port_bAir,space_1.ports[2]) annotation (Line( -points={{ -150.51284691751368, -139.77931252815333 } ,{ -75.25642345875684, -139.77931252815333 } ,{ -75.25642345875684, 0.0 } ,{ 0.0, 0.0 } }, +points={{ 199.82121521501287, -6.27884261940033 } ,{ 99.91060760750644, -6.27884261940033 } ,{ 99.91060760750644, 0.0 } ,{ 0.0, 0.0 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(pressure_drop_duct_out.port_b,ahu.port_a) annotation (Line( -points={{ 30.311661602914803, 195.91526174530028 } ,{ -76.72735432802949, 195.91526174530028 } ,{ -76.72735432802949, -63.53269188708004 } ,{ -183.76637025897378, -63.53269188708004 } }, +points={{ 69.66114901095764, 186.9413362940161 } ,{ -50.98747964623023, 186.9413362940161 } ,{ -50.98747964623023, -114.49868992231835 } ,{ -171.6361083034181, -114.49868992231835 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(pressure_drop_duct_in.port_b,vav_in.port_aAir) annotation (Line( -points={{ 4.014235779241073, -190.34213433329447 } ,{ -73.2493055691363, -190.34213433329447 } ,{ -73.24930556913631, -139.77931252815333 } ,{ -150.51284691751368, -139.77931252815333 } }, +points={{ -197.20022789842602, -28.760927401128225 } ,{ 1.3104936582934101, -28.760927401128225 } ,{ 1.3104936582934386, -6.27884261940033 } ,{ 199.82121521501287, -6.27884261940033 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(ahu.dataBus,ahu_control.dataBus) annotation (Line( -points={{ -183.76637025897378, -63.53269188708004 } ,{ -118.47330109653565, -63.53269188708004 } ,{ -118.47330109653564, 192.0040970114672 } ,{ -53.18023193409751, 192.0040970114672 } }, +points={{ -171.6361083034181, -114.49868992231835 } ,{ -96.84556687996893, -114.49868992231835 } ,{ -96.84556687996893, -200.0 } ,{ -22.055025456519758, -200.0 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(ahu.port_b,pressure_drop_duct_in.port_a) annotation (Line( -points={{ -183.76637025897378, -63.53269188708004 } ,{ -89.87606723986636, -63.53269188708004 } ,{ -89.87606723986634, -190.34213433329447 } ,{ 4.014235779241073, -190.34213433329447 } }, +points={{ -171.6361083034181, -114.49868992231835 } ,{ -184.41816810092206, -114.49868992231835 } ,{ -184.41816810092206, -28.760927401128225 } ,{ -197.20022789842602, -28.760927401128225 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(boundary.ports,ahu.ports) annotation (Line( -points={{ -200.0, 100.0 } ,{ -191.8831851294869, 100.0 } ,{ -191.8831851294869, -63.53269188708004 } ,{ -183.76637025897378, -63.53269188708004 } }, +points={{ -200.0, 100.0 } ,{ -185.81805415170905, 100.0 } ,{ -185.81805415170905, -114.49868992231835 } ,{ -171.6361083034181, -114.49868992231835 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(boundary.weaBus,weather_12.weaBus) @@ -2596,28 +2596,28 @@ points={{ -200.0, 100.0 } ,{ -150.0, 100.0 } ,{ -150.0, 200.0 } ,{ -100 thickness=0.05, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ 55.81178389052755, 0.0 } ,{ 55.81178389052755, -129.75424684460367 } ,{ 161.6235677810551, -129.75424684460367 } }, +points={{ -50.0, 0.0 } ,{ 69.04311034388616, 0.0 } ,{ 69.04311034388616, 80.09808659738555 } ,{ 188.0862206877723, 80.09808659738555 } }, thickness=0.05, smooth=Smooth.None)); connect(vav_in_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -168.92421648684052, 96.35556948450434 } ,{ -3.65032435289271, 96.35556948450434 } ,{ -3.65032435289271, -129.75424684460367 } ,{ 161.6235677810551, -129.75424684460367 } }, +points={{ 127.82249879365419, -161.02984981944442 } ,{ 157.95435974071324, -161.02984981944442 } ,{ 157.95435974071324, 80.09808659738555 } ,{ 188.0862206877723, 80.09808659738555 } }, thickness=0.05, smooth=Smooth.None)); connect(ahu_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -53.18023193409751, 192.0040970114672 } ,{ 54.2216679234788, 192.0040970114672 } ,{ 54.22166792347879, -129.75424684460367 } ,{ 161.6235677810551, -129.75424684460367 } }, +points={{ -22.055025456519758, -200.0 } ,{ 83.01559761562628, -200.0 } ,{ 83.01559761562628, 80.09808659738555 } ,{ 188.0862206877723, 80.09808659738555 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.heaPorAir,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 80.81178389052755, 0.0 } ,{ 80.81178389052755, -129.75424684460367 } ,{ 161.6235677810551, -129.75424684460367 } }, +points={{ 0.0, 0.0 } ,{ 94.04311034388616, 0.0 } ,{ 94.04311034388616, 80.09808659738555 } ,{ 188.0862206877723, 80.09808659738555 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[3],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 80.81178389052755, 0.0 } ,{ 80.81178389052755, -129.75424684460367 } ,{ 161.6235677810551, -129.75424684460367 } }, +points={{ 0.0, 0.0 } ,{ 94.04311034388616, 0.0 } ,{ 94.04311034388616, 80.09808659738555 } ,{ 188.0862206877723, 80.09808659738555 } }, thickness=0.05, -smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-250.0,-245.09006715824447},{250.0,250.0}})), Icon( - coordinateSystem(extent={{-250.0,-245.09006715824447},{250.0,250.0}}))); +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-250.0,-250.0},{249.82121521501287,250.0}})), Icon( + coordinateSystem(extent={{-250.0,-250.0},{249.82121521501287,250.0}}))); annotation ( - Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
ventilation_inlets
nametype
pressure_drop_duct_inDuct
vav_inVAV
ventilation_outlets
nametype
pressure_drop_duct_outDuct
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.045.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); + Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
ventilation_inlets
nametype
pressure_drop_duct_inDuct
vav_inVAV
ventilation_outlets
nametype
pressure_drop_duct_outDuct
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.045.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); end building; diff --git a/tests/data/space_1_different_construction_types.mo b/tests/data/space_1_different_construction_types.mo index 5bf01d2..ee93a95 100644 --- a/tests/data/space_1_different_construction_types.mo +++ b/tests/data/space_1_different_construction_types.mo @@ -2265,16 +2265,16 @@ extends Modelica.Icons.MaterialPropertiesPackage; end Glazing; package Materials "Library of construction materials" -extends Modelica.Icons.MaterialPropertiesPackage; record plywood = IDEAS.Buildings.Data.Interfaces.Material ( - k=0.12, - c=1210.0, - rho=540.0, - epsLw=0.88, - epsSw=0.55); record id_100 = IDEAS.Buildings.Data.Interfaces.Material ( +extends Modelica.Icons.MaterialPropertiesPackage; record id_100 = IDEAS.Buildings.Data.Interfaces.Material ( k=1.0, c=840.0, rho=2500.0, epsLw=0.88, + epsSw=0.55); record insulation_board = IDEAS.Buildings.Data.Interfaces.Material ( + k=0.03, + c=1200.0, + rho=40.0, + epsLw=0.88, epsSw=0.55); record concrete = IDEAS.Buildings.Data.Interfaces.Material ( k=1.4, c=840.0, @@ -2285,10 +2285,10 @@ extends Modelica.Icons.MaterialPropertiesPackage; record plywood = IDEAS.Buil c=790.0, rho=1920.0, epsLw=0.88, - epsSw=0.55); record insulation_board = IDEAS.Buildings.Data.Interfaces.Material ( - k=0.03, - c=1200.0, - rho=40.0, + epsSw=0.55); record plywood = IDEAS.Buildings.Data.Interfaces.Material ( + k=0.12, + c=1210.0, + rho=540.0, epsLw=0.88, epsSw=0.55); record Air = IDEAS.Buildings.Data.Interfaces.Material ( k=0.025, @@ -2296,19 +2296,19 @@ extends Modelica.Icons.MaterialPropertiesPackage; record plywood = IDEAS.Buil rho=1.2, epsLw=0.88, epsSw=0.55);end Materials; -package Constructions "Library of building envelope constructions" record test_wall +package Constructions "Library of building envelope constructions" record internal_wall + "internal_wall" + extends IDEAS.Buildings.Data.Interfaces.Construction( + mats={space_1_different_construction_types.Data.Materials.brick + (d=0.2) }); + end internal_wall; record test_wall "test_wall" extends IDEAS.Buildings.Data.Interfaces.Construction( mats={space_1_different_construction_types.Data.Materials.concrete (d=0.4),space_1_different_construction_types.Data.Materials.insulation_board (d=0.2),space_1_different_construction_types.Data.Materials.plywood (d=0.4) }); - end test_wall; record internal_wall - "internal_wall" - extends IDEAS.Buildings.Data.Interfaces.Construction( - mats={space_1_different_construction_types.Data.Materials.brick - (d=0.2) }); - end internal_wall; record external_wall + end test_wall; record external_wall "external_wall" extends IDEAS.Buildings.Data.Interfaces.Construction( mats={space_1_different_construction_types.Data.Materials.concrete @@ -2382,7 +2382,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 135, 45 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { -153.14385020515127, -120.7550662379531 }, + Placement(transformation(origin = { 136.32752044560192, -179.46598022137943 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.OuterWall[1] @@ -2394,7 +2394,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 0 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { -114.11201848875822, 138.3232651835887 }, + Placement(transformation(origin = { 161.5156784333875, 133.33367409056308 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.OuterWall[1] @@ -2406,7 +2406,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 90 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { -183.7944482663084, 85.30391717467985 }, + Placement(transformation(origin = { 196.96959997326564, -82.67720371486831 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.Window[1] @@ -2417,7 +2417,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 45 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 28.867782113021793, -175.02200898200633 }, + Placement(transformation(origin = { -85.47294357112247, -183.13478537679586 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.Window[1] @@ -2428,7 +2428,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 45 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 71.10660827531794, 180.7775036064118 }, + Placement(transformation(origin = { -22.039269191394617, 172.62787013329265 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.SlabOnGround floor_2( @@ -2436,7 +2436,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; external_wall constructionType, redeclare package Medium = Medium, A=10) annotation ( - Placement(transformation(origin = { 136.08140004253198, 111.11633125404191 }, + Placement(transformation(origin = { 25.025085777844296, -194.49681539869383 }, extent = {{-10, -10}, {10, 10}} ))); space_1_different_construction_types.Common.HeatTransfer.IdealHeatingSystem.IdealHeatEmission @@ -2446,7 +2446,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; ))); space_1_different_construction_types.Common.Controls.ventilation.EmissionControlEmission_control emission_control annotation ( - Placement(transformation(origin = { -36.363714629404534, 187.99418645709468 }, + Placement(transformation(origin = { -197.172842074761, 100.88190689954969 }, extent = {{-10, -10}, {10, 10}} ))); space_1_different_construction_types.Common.Controls.ventilation.OccupancyOccupancy_0 @@ -2468,39 +2468,39 @@ annotation (Placement(transformation(extent={{-96,76},{-76,96}}))); annotati space_1_different_construction_types.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 200.00000000000003, -68.85685458387428 }, + Placement(transformation(origin = { 197.88775253969862, 26.422018226336395 }, extent = {{-10, -10}, {10, 10}} ))); equation connect(space_1.propsBus[1:2],merged_w1_1_w3_1[1:2].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ -76.57192510257563, 0.0 } ,{ -76.57192510257563, -120.7550662379531 } ,{ -153.14385020515127, -120.7550662379531 } }, +points={{ 0.0, 0.0 } ,{ 68.16376022280096, 0.0 } ,{ 68.16376022280096, -179.46598022137943 } ,{ 136.32752044560192, -179.46598022137943 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.propsBus[3],merged_w2_1[1].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ -57.05600924437911, 0.0 } ,{ -57.05600924437911, 138.3232651835887 } ,{ -114.11201848875822, 138.3232651835887 } }, +points={{ 0.0, 0.0 } ,{ 80.75783921669375, 0.0 } ,{ 80.75783921669375, 133.33367409056308 } ,{ 161.5156784333875, 133.33367409056308 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.propsBus[4],merged_w4_1[1].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ -91.8972241331542, 0.0 } ,{ -91.8972241331542, 85.30391717467985 } ,{ -183.7944482663084, 85.30391717467985 } }, +points={{ 0.0, 0.0 } ,{ 98.48479998663282, 0.0 } ,{ 98.48479998663282, -82.67720371486831 } ,{ 196.96959997326564, -82.67720371486831 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.propsBus[5],merged_win1_1[1].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ 14.433891056510896, 0.0 } ,{ 14.433891056510896, -175.02200898200633 } ,{ 28.867782113021793, -175.02200898200633 } }, +points={{ 0.0, 0.0 } ,{ -42.736471785561235, 0.0 } ,{ -42.736471785561235, -183.13478537679586 } ,{ -85.47294357112247, -183.13478537679586 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.propsBus[6],merged_win1_2[1].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ 35.55330413765897, 0.0 } ,{ 35.55330413765897, 180.7775036064118 } ,{ 71.10660827531794, 180.7775036064118 } }, +points={{ 0.0, 0.0 } ,{ -11.019634595697308, 0.0 } ,{ -11.019634595697308, 172.62787013329265 } ,{ -22.039269191394617, 172.62787013329265 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.propsBus[7],floor_2.propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ 68.04070002126599, 0.0 } ,{ 68.04070002126599, 111.11633125404191 } ,{ 136.08140004253198, 111.11633125404191 } }, +points={{ 0.0, 0.0 } ,{ 12.512542888922148, 0.0 } ,{ 12.512542888922148, -194.49681539869383 } ,{ 25.025085777844296, -194.49681539869383 } }, color={191,0,0}, thickness=0.1, smooth=Smooth.None)); connect(space_1.gainCon,emission.heatPortCon) @@ -2520,27 +2520,27 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(emission.y,emission_control.y) annotation (Line( -points={{ 0.0, -75.0 } ,{ -18.181857314702267, -75.0 } ,{ -18.181857314702267, 187.99418645709468 } ,{ -36.363714629404534, 187.99418645709468 } }, +points={{ 0.0, -75.0 } ,{ -98.5864210373805, -75.0 } ,{ -98.5864210373805, 100.88190689954969 } ,{ -197.172842074761, 100.88190689954969 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(emission_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -36.363714629404534, 187.99418645709468 } ,{ 81.81814268529774, 187.99418645709468 } ,{ 81.81814268529774, -68.85685458387428 } ,{ 200.00000000000003, -68.85685458387428 } }, +points={{ -197.172842074761, 100.88190689954969 } ,{ 0.3574552324688227, 100.88190689954969 } ,{ 0.3574552324687943, 26.422018226336395 } ,{ 197.88775253969862, 26.422018226336395 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ 75.00000000000001, 0.0 } ,{ 75.00000000000001, -68.85685458387428 } ,{ 200.00000000000003, -68.85685458387428 } }, +points={{ -50.0, 0.0 } ,{ 73.94387626984931, 0.0 } ,{ 73.94387626984931, 26.422018226336395 } ,{ 197.88775253969862, 26.422018226336395 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.gainCon,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 100.00000000000001, 0.0 } ,{ 100.00000000000001, -68.85685458387428 } ,{ 200.00000000000003, -68.85685458387428 } }, +points={{ 0.0, 0.0 } ,{ 98.94387626984931, 0.0 } ,{ 98.94387626984931, 26.422018226336395 } ,{ 197.88775253969862, 26.422018226336395 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 100.00000000000001, 0.0 } ,{ 100.00000000000001, -68.85685458387428 } ,{ 200.00000000000003, -68.85685458387428 } }, +points={{ 0.0, 0.0 } ,{ 98.94387626984931, 0.0 } ,{ 98.94387626984931, 26.422018226336395 } ,{ 197.88775253969862, 26.422018226336395 } }, thickness=0.05, -smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-233.7944482663084,-225.02200898200633},{250.00000000000003,250.0}})), Icon( - coordinateSystem(extent={{-233.7944482663084,-225.02200898200633},{250.00000000000003,250.0}}))); +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-247.172842074761,-244.49681539869383},{247.88775253969862,250.0}})), Icon( + coordinateSystem(extent={{-247.172842074761,-244.49681539869383},{247.88775253969862,250.0}}))); annotation ( Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
emissions
nameparameterstype
emission
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameinternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nametest_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window
win1_21.045.0wall
namesimple_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); end building; diff --git a/tests/data/space_1_ideal_heating.mo b/tests/data/space_1_ideal_heating.mo index 31aed61..36e24a0 100644 --- a/tests/data/space_1_ideal_heating.mo +++ b/tests/data/space_1_ideal_heating.mo @@ -2325,7 +2325,7 @@ parameter Integer nRoo = 2 "Number of rooms"; ))); space_1_ideal_heating.Common.Controls.ventilation.EmissionControlEmission_control emission_control annotation ( - Placement(transformation(origin = { -163.42227328259352, -65.99527679132261 }, + Placement(transformation(origin = { 134.23239501606082, -162.31560873343372 }, extent = {{-10, -10}, {10, 10}} ))); space_1_ideal_heating.Common.Controls.ventilation.OccupancyOccupancy_0 @@ -2346,7 +2346,7 @@ parameter Integer nRoo = 2 "Number of rooms"; space_1_ideal_heating.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { -71.31967759633159, 160.52124278667586 }, + Placement(transformation(origin = { -58.366370354839745, 181.17694629324455 }, extent = {{-10, -10}, {10, 10}} ))); @@ -2372,29 +2372,29 @@ points={{ 0.0, 0.0 } ,{ -50.0, 0.0 } ,{ -50.0, 200.0 } ,{ -100.0, 200.0 thickness=0.05, smooth=Smooth.None)); connect(emission.y,emission_control.y) annotation (Line( -points={{ 0.0, -75.0 } ,{ -81.71113664129676, -75.0 } ,{ -81.71113664129676, -65.99527679132261 } ,{ -163.42227328259352, -65.99527679132261 } }, +points={{ 0.0, -75.0 } ,{ 67.11619750803041, -75.0 } ,{ 67.11619750803041, -162.31560873343372 } ,{ 134.23239501606082, -162.31560873343372 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(emission_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -163.42227328259352, -65.99527679132261 } ,{ -117.37097543946255, -65.99527679132261 } ,{ -117.37097543946255, 160.52124278667586 } ,{ -71.31967759633159, 160.52124278667586 } }, +points={{ 134.23239501606082, -162.31560873343372 } ,{ 37.93301233061054, -162.31560873343372 } ,{ 37.93301233061054, 181.17694629324455 } ,{ -58.366370354839745, 181.17694629324455 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ -60.659838798165794, 0.0 } ,{ -60.659838798165794, 160.52124278667586 } ,{ -71.31967759633159, 160.52124278667586 } }, +points={{ -50.0, 0.0 } ,{ -54.18318517741987, 0.0 } ,{ -54.18318517741987, 181.17694629324455 } ,{ -58.366370354839745, 181.17694629324455 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.heaPorAir,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ -35.659838798165794, 0.0 } ,{ -35.659838798165794, 160.52124278667586 } ,{ -71.31967759633159, 160.52124278667586 } }, +points={{ 0.0, 0.0 } ,{ -29.183185177419873, 0.0 } ,{ -29.183185177419873, 181.17694629324455 } ,{ -58.366370354839745, 181.17694629324455 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ -35.659838798165794, 0.0 } ,{ -35.659838798165794, 160.52124278667586 } ,{ -71.31967759633159, 160.52124278667586 } }, +points={{ 0.0, 0.0 } ,{ -29.183185177419873, 0.0 } ,{ -29.183185177419873, 181.17694629324455 } ,{ -58.366370354839745, 181.17694629324455 } }, thickness=0.05, -smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-238.35793064073835,-194.60168094023214},{244.63092341402935,250.0}})), Icon( - coordinateSystem(extent={{-238.35793064073835,-194.60168094023214},{244.63092341402935,250.0}}))); +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-230.76457629600134,-232.96248440417313},{209.46669320826734,250.0}})), Icon( + coordinateSystem(extent={{-230.76457629600134,-232.96248440417313},{209.46669320826734,250.0}}))); annotation ( - Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
emissions
nameparameterstype
emission
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); + Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
emissions
nameparameterstype
emission
nEle1
fraRad0.3
Q_flow_nominal2000.0
T_a_nominal363.15
T_b_nominal353.15
TAir_nominal293.15
TRad_nominal293.15
n1.24
deltaM0.01
from_dpfalse
dp_nominal0.0
linearizedfalse
VWat0.116
mDry52.6
Radiator
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.00.0wall
nameexternal_wall
ExternalWall
w3_110.045.0wall
nameexternal_wall
ExternalWall
w4_110.090.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); end building; diff --git a/tests/data/space_with_door.mo b/tests/data/space_with_door.mo index b485ea6..94b56ea 100644 --- a/tests/data/space_with_door.mo +++ b/tests/data/space_with_door.mo @@ -2277,7 +2277,7 @@ parameter Integer nRoo = 2 "Number of rooms"; space_with_door.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 69.46870267023506, 157.41804282952975 }, + Placement(transformation(origin = { -10.94676587384974, 151.66337776987723 }, extent = {{-10, -10}, {10, 10}} ))); @@ -2293,20 +2293,20 @@ points={{ 0.0, 0.0 } ,{ -50.0, 0.0 } ,{ -50.0, 200.0 } ,{ -100.0, 200.0 thickness=0.05, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ 9.73435133511753, 0.0 } ,{ 9.73435133511753, 157.41804282952975 } ,{ 69.46870267023506, 157.41804282952975 } }, +points={{ -50.0, 0.0 } ,{ -30.47338293692487, 0.0 } ,{ -30.47338293692487, 151.66337776987723 } ,{ -10.94676587384974, 151.66337776987723 } }, thickness=0.05, smooth=Smooth.None)); connect(door.heaPorAir,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 34.73435133511753, 0.0 } ,{ 34.73435133511753, 157.41804282952975 } ,{ 69.46870267023506, 157.41804282952975 } }, +points={{ 0.0, 0.0 } ,{ -5.47338293692487, 0.0 } ,{ -5.47338293692487, 151.66337776987723 } ,{ -10.94676587384974, 151.66337776987723 } }, thickness=0.05, smooth=Smooth.None)); connect(door.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 34.73435133511753, 0.0 } ,{ 34.73435133511753, 157.41804282952975 } ,{ 69.46870267023506, 157.41804282952975 } }, +points={{ 0.0, 0.0 } ,{ -5.47338293692487, 0.0 } ,{ -5.47338293692487, 151.66337776987723 } ,{ -10.94676587384974, 151.66337776987723 } }, thickness=0.05, -smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-193.5023295484076,-168.93653892527817},{187.99189307373135,250.0}})), Icon( - coordinateSystem(extent={{-193.5023295484076,-168.93653892527817},{187.99189307373135,250.0}}))); +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-248.82236022309633,-219.23434916343209},{184.81498675021984,250.0}})), Icon( + coordinateSystem(extent={{-248.82236022309633,-219.23434916343209},{184.81498675021984,250.0}}))); annotation ( - Documentation(info="Spaces

Spaces

Introduction

Introduction

namedoor
parameters
mSenFac1.0
AFlo11.3
hRoo3.75
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume42.375
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
door13.090.0wall
nameDoor
ExternalDoor
wall9.2990.0wall
nameexternal_wall
ExternalWall
window1.390.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameDoor
layers
materialthickness
namewood
k0.131
c1000.0
rho600.0
epsLw0.85
epsSw0.65
0.04
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); + Documentation(info="Spaces

Spaces

Introduction

Introduction

namedoor
parameters
mSenFac1.0
AFlo11.3
hRoo3.75
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume42.375
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
door13.090.0wall
nameDoor
ExternalDoor
wall9.2990.0wall
nameexternal_wall
ExternalWall
window1.390.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4
nameDoor
layers
materialthickness
namewood
k0.131
c1000.0
rho600.0
epsLw0.85
epsSw0.65
0.04

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); end building; diff --git a/tests/data/space_with_same_properties.mo b/tests/data/space_with_same_properties.mo index 4b17658..151dd67 100644 --- a/tests/data/space_with_same_properties.mo +++ b/tests/data/space_with_same_properties.mo @@ -2270,7 +2270,7 @@ parameter Integer nRoo = 2 "Number of rooms"; space_with_same_properties.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 132.90934572894005, -167.03172301574025 }, + Placement(transformation(origin = { -116.13831805277532, 111.61910823419102 }, extent = {{-10, -10}, {10, 10}} ))); @@ -2286,20 +2286,20 @@ points={{ 0.0, 0.0 } ,{ -50.0, 0.0 } ,{ -50.0, 200.0 } ,{ -100.0, 200.0 thickness=0.05, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ 41.45467286447003, 0.0 } ,{ 41.45467286447003, -167.03172301574025 } ,{ 132.90934572894005, -167.03172301574025 } }, +points={{ -50.0, 0.0 } ,{ -83.06915902638767, 0.0 } ,{ -83.06915902638767, 111.61910823419102 } ,{ -116.13831805277532, 111.61910823419102 } }, thickness=0.05, smooth=Smooth.None)); connect(bed.heaPorAir,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 66.45467286447003, 0.0 } ,{ 66.45467286447003, -167.03172301574025 } ,{ 132.90934572894005, -167.03172301574025 } }, +points={{ 0.0, 0.0 } ,{ -58.06915902638766, 0.0 } ,{ -58.06915902638766, 111.61910823419102 } ,{ -116.13831805277532, 111.61910823419102 } }, thickness=0.05, smooth=Smooth.None)); connect(bed.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 66.45467286447003, 0.0 } ,{ 66.45467286447003, -167.03172301574025 } ,{ 132.90934572894005, -167.03172301574025 } }, +points={{ 0.0, 0.0 } ,{ -58.06915902638766, 0.0 } ,{ -58.06915902638766, 111.61910823419102 } ,{ -116.13831805277532, 111.61910823419102 } }, thickness=0.05, -smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-216.96238241953782,-217.03172301574025},{250.0,250.0}})), Icon( - coordinateSystem(extent={{-216.96238241953782,-217.03172301574025},{250.0,250.0}}))); +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-250.0,-198.53154936864402},{245.2584014135589,250.0}})), Icon( + coordinateSystem(extent={{-250.0,-198.53154936864402},{245.2584014135589,250.0}}))); annotation ( - Documentation(info="Spaces

Spaces

Introduction

Introduction

namebed
parameters
mSenFac1.0
AFlo11.3
hRoo3.75
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume42.375
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
bw13.090.0wall
nameexternal_wall
ExternalWall
bw29.2990.0wall
nameexternal_wall
ExternalWall
window1.390.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); + Documentation(info="Spaces

Spaces

Introduction

Introduction

namebed
parameters
mSenFac1.0
AFlo11.3
hRoo3.75
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume42.375
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
bw13.090.0wall
nameexternal_wall
ExternalWall
bw29.2990.0wall
nameexternal_wall
ExternalWall
window1.390.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); end building; diff --git a/tests/data/space_with_same_properties_ideas.mo b/tests/data/space_with_same_properties_ideas.mo index df17ce3..ebcb42c 100644 --- a/tests/data/space_with_same_properties_ideas.mo +++ b/tests/data/space_with_same_properties_ideas.mo @@ -2172,25 +2172,25 @@ extends Modelica.Icons.MaterialPropertiesPackage; end Glazing; package Materials "Library of construction materials" -extends Modelica.Icons.MaterialPropertiesPackage; record plywood = IDEAS.Buildings.Data.Interfaces.Material ( - k=0.12, - c=1210.0, - rho=540.0, - epsLw=0.88, - epsSw=0.55); record id_100 = IDEAS.Buildings.Data.Interfaces.Material ( +extends Modelica.Icons.MaterialPropertiesPackage; record id_100 = IDEAS.Buildings.Data.Interfaces.Material ( k=1.0, c=840.0, rho=2500.0, epsLw=0.88, + epsSw=0.55); record insulation_board = IDEAS.Buildings.Data.Interfaces.Material ( + k=0.03, + c=1200.0, + rho=40.0, + epsLw=0.88, epsSw=0.55); record concrete = IDEAS.Buildings.Data.Interfaces.Material ( k=1.4, c=840.0, rho=2240.0, epsLw=0.88, - epsSw=0.55); record insulation_board = IDEAS.Buildings.Data.Interfaces.Material ( - k=0.03, - c=1200.0, - rho=40.0, + epsSw=0.55); record plywood = IDEAS.Buildings.Data.Interfaces.Material ( + k=0.12, + c=1210.0, + rho=540.0, epsLw=0.88, epsSw=0.55); record Air = IDEAS.Buildings.Data.Interfaces.Material ( k=0.025, @@ -2272,7 +2272,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 90, 90 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall, IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 141.0775684611967, 72.8211292359156 }, + Placement(transformation(origin = { -160.86687964242313, -105.21452077566666 }, extent = {{-10, -10}, {10, 10}} ))); IDEAS.Buildings.Components.Window[1] @@ -2283,7 +2283,7 @@ package MediumW = IDEAS.Media.Water "Medium model"; final azi={ 90 }, redeclare package Medium = Medium, final inc={ IDEAS.Types.Tilt.Wall }) annotation ( - Placement(transformation(origin = { 167.7410498353156, -94.28628338270491 }, + Placement(transformation(origin = { 14.701628709211143, -200.0 }, extent = {{-10, -10}, {10, 10}} ))); space_with_same_properties_ideas.Common.Controls.ventilation.OccupancyOccupancy_0 @@ -2305,19 +2305,19 @@ annotation (Placement(transformation(extent={{-96,76},{-76,96}}))); annotati space_with_same_properties_ideas.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 10.092627546600188, 184.53799520944943 }, + Placement(transformation(origin = { 158.78660185617986, 121.54255435293895 }, extent = {{-10, -10}, {10, 10}} ))); equation connect(bed.propsBus[1:2],merged_bw_bw2[1:2].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ 70.53878423059835, 0.0 } ,{ 70.53878423059835, 72.8211292359156 } ,{ 141.0775684611967, 72.8211292359156 } }, +points={{ 0.0, 0.0 } ,{ -80.43343982121156, 0.0 } ,{ -80.43343982121156, -105.21452077566666 } ,{ -160.86687964242313, -105.21452077566666 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(bed.propsBus[3],merged_window[1].propsBus_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ 83.8705249176578, 0.0 } ,{ 83.8705249176578, -94.28628338270491 } ,{ 167.7410498353156, -94.28628338270491 } }, +points={{ 0.0, 0.0 } ,{ 7.350814354605571, 0.0 } ,{ 7.350814354605571, -200.0 } ,{ 14.701628709211143, -200.0 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(bed.yOcc,occupancy_0.y) @@ -2327,18 +2327,18 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ -19.953686226699908, 0.0 } ,{ -19.953686226699904, 184.53799520944943 } ,{ 10.092627546600188, 184.53799520944943 } }, +points={{ -50.0, 0.0 } ,{ 54.39330092808993, 0.0 } ,{ 54.39330092808993, 121.54255435293895 } ,{ 158.78660185617986, 121.54255435293895 } }, thickness=0.05, smooth=Smooth.None)); connect(bed.gainCon,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 5.046313773300094, 0.0 } ,{ 5.046313773300094, 184.53799520944943 } ,{ 10.092627546600188, 184.53799520944943 } }, +points={{ 0.0, 0.0 } ,{ 79.39330092808993, 0.0 } ,{ 79.39330092808993, 121.54255435293895 } ,{ 158.78660185617986, 121.54255435293895 } }, thickness=0.05, smooth=Smooth.None)); connect(bed.ports[1],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 5.046313773300094, 0.0 } ,{ 5.046313773300094, 184.53799520944943 } ,{ 10.092627546600188, 184.53799520944943 } }, +points={{ 0.0, 0.0 } ,{ 79.39330092808993, 0.0 } ,{ 79.39330092808993, 121.54255435293895 } ,{ 158.78660185617986, 121.54255435293895 } }, thickness=0.05, -smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-150.0,-144.2862833827049},{217.7410498353156,250.0}})), Icon( - coordinateSystem(extent={{-150.0,-144.2862833827049},{217.7410498353156,250.0}}))); +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-210.86687964242313,-250.0},{208.78660185617986,250.0}})), Icon( + coordinateSystem(extent={{-210.86687964242313,-250.0},{208.78660185617986,250.0}}))); annotation ( Documentation(info="Spaces

Spaces

Introduction

Introduction

namebed
parameters
mSenFac1.0
AFlo11.3
hRoo3.75
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume42.375
occupancy
nameoccupancy_0
parameters
external_boundaries
namesurfaceazimuthtiltconstructiontype
bw13.090.0wall
nameexternal_wall
ExternalWall
bw29.2990.0wall
nameexternal_wall
ExternalWall
window1.390.0wall
namedouble_glazing
Window

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); end building; diff --git a/tests/data/two_spaces_air_handling_unit.mo b/tests/data/two_spaces_air_handling_unit.mo index 1f06a15..407edbe 100644 --- a/tests/data/two_spaces_air_handling_unit.mo +++ b/tests/data/two_spaces_air_handling_unit.mo @@ -639,13 +639,10 @@ Modelica.Blocks.Sources.RealExpression THeaSetVav_in_control (y=293.15); Modelica.Blocks.Sources.RealExpression - TSupSetVav_in_control - (y=293.15); -Modelica.Blocks.Sources.RealExpression - TSupSetVav_in_control_2 - (y=293.15); + TCooSetVav_in_control + (y=298.15); Modelica.Blocks.Sources.RealExpression - THeaSetVav_in_control_2 + TSupSetVav_in_control (y=293.15); Modelica.Blocks.Sources.RealExpression TCooSetVav_in_control_2 @@ -654,14 +651,11 @@ Modelica.Blocks.Sources.RealExpression ppmCO2SetVav_in_control_2 (y=0.0); Modelica.Blocks.Sources.RealExpression - TCooSetVav_in_control - (y=298.15); -Modelica.Blocks.Sources.IntegerExpression - uOpeModVav_in_control - (y=1); -Modelica.Blocks.Sources.IntegerExpression - uOpeModVav_in_control_2 - (y=1); + THeaSetVav_in_control_2 + (y=293.15); +Modelica.Blocks.Sources.RealExpression + TSupSetVav_in_control_2 + (y=293.15); Modelica.Blocks.Sources.IntegerExpression oveFloSetVav_in_control_2 (y=0); @@ -669,19 +663,25 @@ Modelica.Blocks.Sources.IntegerExpression uAhuOpeModAhu_control (y=0); Modelica.Blocks.Sources.IntegerExpression - oveFloSetVav_in_control + oveDamPosVav_in_control (y=0); Modelica.Blocks.Sources.IntegerExpression - oveDamPosVav_in_control + uOpeModVav_in_control + (y=1); +Modelica.Blocks.Sources.IntegerExpression + oveFloSetVav_in_control (y=0); +Modelica.Blocks.Sources.IntegerExpression + uOpeModVav_in_control_2 + (y=1); Modelica.Blocks.Sources.IntegerExpression oveDamPosVav_in_control_2 (y=0); Modelica.Blocks.Sources.BooleanExpression - u1OccVav_in_control + uHeaOffVav_in_control (y=false); Modelica.Blocks.Sources.BooleanExpression - u1OccVav_in_control_2 + u1OccVav_in_control (y=false); Modelica.Blocks.Sources.BooleanExpression u1WinVav_in_control @@ -690,25 +690,25 @@ Modelica.Blocks.Sources.BooleanExpression u1SupFanAhu_control (y=false); Modelica.Blocks.Sources.BooleanExpression - u1FanVav_in_control_2 + uHeaOffVav_in_control_2 (y=false); Modelica.Blocks.Sources.BooleanExpression - u1FanVav_in_control + u1HotPlaVav_in_control (y=false); Modelica.Blocks.Sources.BooleanExpression - u1HotPlaVav_in_control_2 + u1WinVav_in_control_2 (y=false); Modelica.Blocks.Sources.BooleanExpression - uHeaOffVav_in_control_2 + u1FanVav_in_control (y=false); Modelica.Blocks.Sources.BooleanExpression - u1HotPlaVav_in_control + u1OccVav_in_control_2 (y=false); Modelica.Blocks.Sources.BooleanExpression - u1WinVav_in_control_2 + u1FanVav_in_control_2 (y=false); Modelica.Blocks.Sources.BooleanExpression - uHeaOffVav_in_control + u1HotPlaVav_in_control_2 (y=false); equation connect(port[1],TRoo[1]. port); @@ -723,54 +723,54 @@ connect(dataBus.ppmCO2SetSpace_1, ppmCO2SetVav_in_control.y); connect(dataBus.THeaSetSpace_1, THeaSetVav_in_control.y); +connect(dataBus.TCooSetSpace_1, +TCooSetVav_in_control.y); connect(dataBus.TSupSetSpace_1, TSupSetVav_in_control.y); -connect(dataBus.TSupSetSpace_2, -TSupSetVav_in_control_2.y); -connect(dataBus.THeaSetSpace_2, -THeaSetVav_in_control_2.y); connect(dataBus.TCooSetSpace_2, TCooSetVav_in_control_2.y); connect(dataBus.ppmCO2SetSpace_2, ppmCO2SetVav_in_control_2.y); -connect(dataBus.TCooSetSpace_1, -TCooSetVav_in_control.y); -connect(dataBus.uOpeModSpace_1, -uOpeModVav_in_control.y); -connect(dataBus.uOpeModSpace_2, -uOpeModVav_in_control_2.y); +connect(dataBus.THeaSetSpace_2, +THeaSetVav_in_control_2.y); +connect(dataBus.TSupSetSpace_2, +TSupSetVav_in_control_2.y); connect(dataBus.oveFloSetSpace_2, oveFloSetVav_in_control_2.y); connect(dataBus.uAhuOpeModAhu_control, uAhuOpeModAhu_control.y); -connect(dataBus.oveFloSetSpace_1, -oveFloSetVav_in_control.y); connect(dataBus.oveDamPosSpace_1, oveDamPosVav_in_control.y); +connect(dataBus.uOpeModSpace_1, +uOpeModVav_in_control.y); +connect(dataBus.oveFloSetSpace_1, +oveFloSetVav_in_control.y); +connect(dataBus.uOpeModSpace_2, +uOpeModVav_in_control_2.y); connect(dataBus.oveDamPosSpace_2, oveDamPosVav_in_control_2.y); +connect(dataBus.uHeaOffSpace_1, +uHeaOffVav_in_control.y); connect(dataBus.u1OccSpace_1, u1OccVav_in_control.y); -connect(dataBus.u1OccSpace_2, -u1OccVav_in_control_2.y); connect(dataBus.u1WinSpace_1, u1WinVav_in_control.y); connect(dataBus.u1SupFanAhu_control, u1SupFanAhu_control.y); -connect(dataBus.u1FanSpace_2, -u1FanVav_in_control_2.y); -connect(dataBus.u1FanSpace_1, -u1FanVav_in_control.y); -connect(dataBus.u1HotPlaSpace_2, -u1HotPlaVav_in_control_2.y); connect(dataBus.uHeaOffSpace_2, uHeaOffVav_in_control_2.y); connect(dataBus.u1HotPlaSpace_1, u1HotPlaVav_in_control.y); connect(dataBus.u1WinSpace_2, u1WinVav_in_control_2.y); -connect(dataBus.uHeaOffSpace_1, -uHeaOffVav_in_control.y); +connect(dataBus.u1FanSpace_1, +u1FanVav_in_control.y); +connect(dataBus.u1OccSpace_2, +u1OccVav_in_control_2.y); +connect(dataBus.u1FanSpace_2, +u1FanVav_in_control_2.y); +connect(dataBus.u1HotPlaSpace_2, +u1HotPlaVav_in_control_2.y); end DataServer; @@ -2641,12 +2641,12 @@ package MediumW = Buildings.Media.Water "Medium model"; THeaAirInl_nominal=30, THeaAirDis_nominal=25 ) annotation ( - Placement(transformation(origin = { 164.95197364931252, 74.31594626792436 }, + Placement(transformation(origin = { -42.18942382969115, -193.7928671787851 }, extent = {{-10, -10}, {10, 10}} ))); two_spaces_air_handling_unit.Common.Controls.ventilation.VAVControlVav_in_control vav_in_control annotation ( - Placement(transformation(origin = { -176.40223006405134, 95.47915700300635 }, + Placement(transformation(origin = { 3.893154391652493, -181.8084809304654 }, extent = {{-10, -10}, {10, 10}} ))); Buildings.Fluid.FixedResistances.PressureDrop @@ -2655,7 +2655,7 @@ package MediumW = Buildings.Media.Water "Medium model"; redeclare package Medium = Medium, allowFlowReversal = false, dp_nominal=40) "Pressure drop for return duct" annotation ( - Placement(transformation(origin = { 156.38746252907885, -140.6722015605671 }, + Placement(transformation(origin = { -183.05674198924842, -15.426709704910158 }, extent = {{-10, -10}, {10, 10}} ))); Buildings.Fluid.FixedResistances.PressureDrop @@ -2664,7 +2664,7 @@ package MediumW = Buildings.Media.Water "Medium model"; redeclare package Medium = Medium, allowFlowReversal = false, dp_nominal=40) "Pressure drop for return duct" annotation ( - Placement(transformation(origin = { -67.17848348206576, 190.8613867114545 }, + Placement(transformation(origin = { 183.0685063465907, 45.380706034375606 }, extent = {{-10, -10}, {10, 10}} ))); Buildings.ThermalZones.Detailed.MixedAir space_2( @@ -2720,12 +2720,12 @@ package MediumW = Buildings.Media.Water "Medium model"; THeaAirInl_nominal=30, THeaAirDis_nominal=25 ) annotation ( - Placement(transformation(origin = { -174.42669580192026, 4.235990554446563 }, + Placement(transformation(origin = { -94.03025699552035, -182.31190177543226 }, extent = {{-10, -10}, {10, 10}} ))); two_spaces_air_handling_unit.Common.Controls.ventilation.VAVControlVav_in_control_2 vav_in_control_2 annotation ( - Placement(transformation(origin = { 187.5711666797016, -77.56111454629621 }, + Placement(transformation(origin = { 191.13299713849628, -3.963150272392045 }, extent = {{-10, -10}, {10, 10}} ))); Buildings.Fluid.FixedResistances.PressureDrop @@ -2734,7 +2734,7 @@ package MediumW = Buildings.Media.Water "Medium model"; redeclare package Medium = Medium, allowFlowReversal = false, dp_nominal=40) "Pressure drop for return duct" annotation ( - Placement(transformation(origin = { 59.37506817505022, 149.29250651518188 }, + Placement(transformation(origin = { 71.41398045498889, 181.96479994663645 }, extent = {{-10, -10}, {10, 10}} ))); Buildings.Fluid.FixedResistances.PressureDrop @@ -2743,7 +2743,7 @@ package MediumW = Buildings.Media.Water "Medium model"; redeclare package Medium = Medium, allowFlowReversal = false, dp_nominal=40) "Pressure drop for return duct" annotation ( - Placement(transformation(origin = { -100.94785981784116, -171.88462796749013 }, + Placement(transformation(origin = { 21.878211695475137, 181.70323506908244 }, extent = {{-10, -10}, {10, 10}} ))); Buildings.HeatTransfer.Conduction.MultiLayer @@ -2770,12 +2770,12 @@ package MediumW = Buildings.Media.Water "Medium model"; VRoo={100,100}, AFlo={20,20}, mCooVAV_flow_nominal={0.01,0.01}) annotation ( - Placement(transformation(origin = { 48.66759485562305, -196.05064744529253 }, + Placement(transformation(origin = { 126.36757299978272, 164.2106838289815 }, extent = {{-10, -10}, {10, 10}} ))); two_spaces_air_handling_unit.Common.Controls.ventilation.AhuControlAhu_control ahu_control annotation ( - Placement(transformation(origin = { -50.110430993536895, -193.16133155068778 }, + Placement(transformation(origin = { -152.11465791130294, 123.53394572242983 }, extent = {{-10, -10}, {10, 10}} ))); Buildings.Fluid.Sources.Outside boundary @@ -2786,7 +2786,7 @@ package MediumW = Buildings.Media.Water "Medium model"; two_spaces_air_handling_unit.Common.Controls.ventilation.DataServer data_bus (redeclare package Medium = Medium) annotation ( - Placement(transformation(origin = { 101.19871563885845, -176.09655274507708 }, + Placement(transformation(origin = { 100.75643283737656, -170.95960089910207 }, extent = {{-10, -10}, {10, 10}} ))); @@ -2798,7 +2798,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.ports[1],pressure_drop_duct_out.port_a) annotation (Line( -points={{ 0.0, 0.0 } ,{ 78.19373126453942, 0.0 } ,{ 78.19373126453942, -140.6722015605671 } ,{ 156.38746252907885, -140.6722015605671 } }, +points={{ 0.0, 0.0 } ,{ -91.52837099462421, 0.0 } ,{ -91.52837099462421, -15.426709704910158 } ,{ -183.05674198924842, -15.426709704910158 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_1.surf_surBou[1],internal_space_1_space_2.port_a) @@ -2812,22 +2812,22 @@ points={{ 0.0, 0.0 } ,{ -50.0, 0.0 } ,{ -50.0, 200.0 } ,{ -100.0, 200.0 thickness=0.05, smooth=Smooth.None)); connect(vav_in.dataBus,vav_in_control.dataBus) annotation (Line( -points={{ 164.95197364931252, 74.31594626792436 } ,{ -5.7251282073694085, 74.31594626792436 } ,{ -5.7251282073694085, 95.47915700300635 } ,{ -176.40223006405134, 95.47915700300635 } }, +points={{ -42.18942382969115, -193.7928671787851 } ,{ -19.14813471901933, -193.7928671787851 } ,{ -19.14813471901933, -181.8084809304654 } ,{ 3.893154391652493, -181.8084809304654 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(vav_in.port_bAir,space_1.ports[2]) annotation (Line( -points={{ 164.95197364931252, 74.31594626792436 } ,{ 82.47598682465626, 74.31594626792436 } ,{ 82.47598682465626, 0.0 } ,{ 0.0, 0.0 } }, +points={{ -42.18942382969115, -193.7928671787851 } ,{ -21.094711914845576, -193.7928671787851 } ,{ -21.094711914845576, 0.0 } ,{ 0.0, 0.0 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(pressure_drop_duct_out.port_b,ahu.port_a) annotation (Line( -points={{ 156.38746252907885, -140.6722015605671 } ,{ 102.52752869235096, -140.6722015605671 } ,{ 102.52752869235096, -196.05064744529253 } ,{ 48.66759485562305, -196.05064744529253 } }, +points={{ -183.05674198924842, -15.426709704910158 } ,{ -28.344584494732857, -15.426709704910158 } ,{ -28.344584494732842, 164.2106838289815 } ,{ 126.36757299978272, 164.2106838289815 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(pressure_drop_duct_in.port_b,vav_in.port_aAir) annotation (Line( -points={{ -67.17848348206576, 190.8613867114545 } ,{ 48.88674508362338, 190.8613867114545 } ,{ 48.88674508362338, 74.31594626792436 } ,{ 164.95197364931252, 74.31594626792436 } }, +points={{ 183.0685063465907, 45.380706034375606 } ,{ 70.43954125844978, 45.380706034375606 } ,{ 70.43954125844978, -193.7928671787851 } ,{ -42.18942382969115, -193.7928671787851 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_2.qGai_flow,occupancy_1.y) @@ -2837,7 +2837,7 @@ color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_2.ports[1],pressure_drop_duct_out_2.port_a) annotation (Line( -points={{ 250.0, 150.0 } ,{ 154.6875340875251, 150.0 } ,{ 154.6875340875251, 149.29250651518188 } ,{ 59.37506817505022, 149.29250651518188 } }, +points={{ 250.0, 150.0 } ,{ 160.70699022749443, 150.0 } ,{ 160.70699022749443, 181.96479994663645 } ,{ 71.41398045498889, 181.96479994663645 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(space_2.surf_surBou[1],internal_space_1_space_2.port_b) @@ -2851,42 +2851,42 @@ points={{ 250.0, 150.0 } ,{ 75.0, 150.0 } ,{ 75.0, 200.0 } ,{ -100.0, 2 thickness=0.05, smooth=Smooth.None)); connect(vav_in_2.dataBus,vav_in_control_2.dataBus) annotation (Line( -points={{ -174.42669580192026, 4.235990554446563 } ,{ 6.572235438890658, 4.235990554446563 } ,{ 6.5722354388906865, -77.56111454629621 } ,{ 187.5711666797016, -77.56111454629621 } }, +points={{ -94.03025699552035, -182.31190177543226 } ,{ 48.55137007148795, -182.31190177543226 } ,{ 48.55137007148798, -3.963150272392045 } ,{ 191.13299713849628, -3.963150272392045 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(vav_in_2.port_bAir,space_2.ports[2]) annotation (Line( -points={{ -174.42669580192026, 4.235990554446563 } ,{ 37.786652099039856, 4.235990554446563 } ,{ 37.786652099039884, 150.0 } ,{ 250.0, 150.0 } }, +points={{ -94.03025699552035, -182.31190177543226 } ,{ 77.98487150223983, -182.31190177543226 } ,{ 77.98487150223983, 150.0 } ,{ 250.0, 150.0 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(pressure_drop_duct_out_2.port_b,ahu.port_a) annotation (Line( -points={{ 59.37506817505022, 149.29250651518188 } ,{ 54.021331515336634, 149.29250651518188 } ,{ 54.021331515336634, -196.05064744529253 } ,{ 48.66759485562305, -196.05064744529253 } }, +points={{ 71.41398045498889, 181.96479994663645 } ,{ 98.8907767273858, 181.96479994663645 } ,{ 98.8907767273858, 164.2106838289815 } ,{ 126.36757299978272, 164.2106838289815 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(pressure_drop_duct_in_2.port_b,vav_in_2.port_aAir) annotation (Line( -points={{ -100.94785981784116, -171.88462796749013 } ,{ -137.6872778098807, -171.88462796749013 } ,{ -137.6872778098807, 4.235990554446563 } ,{ -174.42669580192026, 4.235990554446563 } }, +points={{ 21.878211695475137, 181.70323506908244 } ,{ -36.0760226500226, 181.70323506908244 } ,{ -36.07602265002261, -182.31190177543226 } ,{ -94.03025699552035, -182.31190177543226 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(ahu.dataBus,ahu_control.dataBus) annotation (Line( -points={{ 48.66759485562305, -196.05064744529253 } ,{ -0.7214180689569218, -196.05064744529253 } ,{ -0.7214180689569218, -193.16133155068778 } ,{ -50.110430993536895, -193.16133155068778 } }, +points={{ 126.36757299978272, 164.2106838289815 } ,{ -12.873542455760102, 164.2106838289815 } ,{ -12.873542455760116, 123.53394572242983 } ,{ -152.11465791130294, 123.53394572242983 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(ahu.port_b,pressure_drop_duct_in.port_a) annotation (Line( -points={{ 48.66759485562305, -196.05064744529253 } ,{ -9.255444313221354, -196.05064744529253 } ,{ -9.255444313221354, 190.8613867114545 } ,{ -67.17848348206576, 190.8613867114545 } }, +points={{ 126.36757299978272, 164.2106838289815 } ,{ 154.71803967318672, 164.2106838289815 } ,{ 154.71803967318672, 45.380706034375606 } ,{ 183.0685063465907, 45.380706034375606 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(ahu.port_b,pressure_drop_duct_in_2.port_a) annotation (Line( -points={{ 48.66759485562305, -196.05064744529253 } ,{ -26.140132481109063, -196.05064744529253 } ,{ -26.14013248110905, -171.88462796749013 } ,{ -100.94785981784116, -171.88462796749013 } }, +points={{ 126.36757299978272, 164.2106838289815 } ,{ 74.12289234762893, 164.2106838289815 } ,{ 74.12289234762892, 181.70323506908244 } ,{ 21.878211695475137, 181.70323506908244 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(boundary.ports,ahu.ports) annotation (Line( -points={{ -200.0, 100.0 } ,{ -75.66620257218847, 100.0 } ,{ -75.66620257218848, -196.05064744529253 } ,{ 48.66759485562305, -196.05064744529253 } }, +points={{ -200.0, 100.0 } ,{ -36.81621350010863, 100.0 } ,{ -36.816213500108645, 164.2106838289815 } ,{ 126.36757299978272, 164.2106838289815 } }, color={255,204,51}, thickness=0.5, smooth=Smooth.None)); connect(boundary.weaBus,weather_13.weaBus) @@ -2895,44 +2895,44 @@ points={{ -200.0, 100.0 } ,{ -150.0, 100.0 } ,{ -150.0, 200.0 } ,{ -100 thickness=0.05, smooth=Smooth.None)); connect(occupancy_0.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.0, 0.0 } ,{ 25.59935781942923, 0.0 } ,{ 25.599357819429216, -176.09655274507708 } ,{ 101.19871563885845, -176.09655274507708 } }, +points={{ -50.0, 0.0 } ,{ 25.378216418688282, 0.0 } ,{ 25.378216418688282, -170.95960089910207 } ,{ 100.75643283737656, -170.95960089910207 } }, thickness=0.05, smooth=Smooth.None)); connect(vav_in_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -176.40223006405134, 95.47915700300635 } ,{ -37.60175721259645, 95.47915700300635 } ,{ -37.60175721259644, -176.09655274507708 } ,{ 101.19871563885845, -176.09655274507708 } }, +points={{ 3.893154391652493, -181.8084809304654 } ,{ 52.32479361451453, -181.8084809304654 } ,{ 52.324793614514526, -170.95960089910207 } ,{ 100.75643283737656, -170.95960089910207 } }, thickness=0.05, smooth=Smooth.None)); connect(occupancy_1.dataBus,data_bus.dataBus) annotation (Line( -points={{ 200.0, 150.0 } ,{ 150.59935781942923, 150.0 } ,{ 150.59935781942923, -176.09655274507708 } ,{ 101.19871563885845, -176.09655274507708 } }, +points={{ 200.0, 150.0 } ,{ 150.37821641868828, 150.0 } ,{ 150.37821641868828, -170.95960089910207 } ,{ 100.75643283737656, -170.95960089910207 } }, thickness=0.05, smooth=Smooth.None)); connect(vav_in_control_2.dataBus,data_bus.dataBus) annotation (Line( -points={{ 187.5711666797016, -77.56111454629621 } ,{ 144.38494115928003, -77.56111454629621 } ,{ 144.38494115928003, -176.09655274507708 } ,{ 101.19871563885845, -176.09655274507708 } }, +points={{ 191.13299713849628, -3.963150272392045 } ,{ 145.94471498793644, -3.963150272392045 } ,{ 145.94471498793644, -170.95960089910207 } ,{ 100.75643283737656, -170.95960089910207 } }, thickness=0.05, smooth=Smooth.None)); connect(ahu_control.dataBus,data_bus.dataBus) annotation (Line( -points={{ -50.110430993536895, -193.16133155068778 } ,{ 25.544142322660775, -193.16133155068778 } ,{ 25.544142322660775, -176.09655274507708 } ,{ 101.19871563885845, -176.09655274507708 } }, +points={{ -152.11465791130294, 123.53394572242983 } ,{ -25.67911253696319, 123.53394572242983 } ,{ -25.67911253696319, -170.95960089910207 } ,{ 100.75643283737656, -170.95960089910207 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.heaPorAir,data_bus.port[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 50.59935781942922, 0.0 } ,{ 50.59935781942922, -176.09655274507708 } ,{ 101.19871563885845, -176.09655274507708 } }, +points={{ 0.0, 0.0 } ,{ 50.37821641868828, 0.0 } ,{ 50.37821641868828, -170.95960089910207 } ,{ 100.75643283737656, -170.95960089910207 } }, thickness=0.05, smooth=Smooth.None)); connect(space_1.ports[3],data_bus.port_a[1]) annotation (Line( -points={{ 0.0, 0.0 } ,{ 50.59935781942922, 0.0 } ,{ 50.59935781942922, -176.09655274507708 } ,{ 101.19871563885845, -176.09655274507708 } }, +points={{ 0.0, 0.0 } ,{ 50.37821641868828, 0.0 } ,{ 50.37821641868828, -170.95960089910207 } ,{ 100.75643283737656, -170.95960089910207 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.heaPorAir,data_bus.port[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 175.59935781942923, 150.0 } ,{ 175.5993578194292, -176.09655274507708 } ,{ 101.19871563885845, -176.09655274507708 } }, +points={{ 250.0, 150.0 } ,{ 175.37821641868828, 150.0 } ,{ 175.37821641868828, -170.95960089910207 } ,{ 100.75643283737656, -170.95960089910207 } }, thickness=0.05, smooth=Smooth.None)); connect(space_2.ports[3],data_bus.port_a[2]) annotation (Line( -points={{ 250.0, 150.0 } ,{ 175.59935781942923, 150.0 } ,{ 175.5993578194292, -176.09655274507708 } ,{ 101.19871563885845, -176.09655274507708 } }, +points={{ 250.0, 150.0 } ,{ 175.37821641868828, 150.0 } ,{ 175.37821641868828, -170.95960089910207 } ,{ 100.75643283737656, -170.95960089910207 } }, thickness=0.05, -smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-250.0,-246.05064744529253},{300.0,250.0}})), Icon( - coordinateSystem(extent={{-250.0,-246.05064744529253},{300.0,250.0}}))); +smooth=Smooth.None));annotation (Diagram(coordinateSystem(extent={{-250.00000000000003,-243.7928671787851},{300.0,250.0}})), Icon( + coordinateSystem(extent={{-250.00000000000003,-243.7928671787851},{300.0,250.0}}))); annotation ( - Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
ventilation_inlets
nametype
pressure_drop_duct_inDuct
vav_inVAV
ventilation_outlets
nametype
pressure_drop_duct_outDuct
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.045.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_1
parameters
ventilation_inlets
nametype
pressure_drop_duct_in_2Duct
vav_in_2VAV
ventilation_outlets
nametype
pressure_drop_duct_out_2Duct
external_boundaries
namesurfaceazimuthtiltconstructiontype
w2_210.045.0wall
nameexternal_wall
ExternalWall
floor_310.090.0floor
nameexternal_wall
FloorOnGround
win1_21.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); + Documentation(info="Spaces

Spaces

Introduction

Introduction

namespace_1
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_0
parameters
ventilation_inlets
nametype
pressure_drop_duct_inDuct
vav_inVAV
ventilation_outlets
nametype
pressure_drop_duct_outDuct
external_boundaries
namesurfaceazimuthtiltconstructiontype
w1_110.0135.0wall
nameexternal_wall
ExternalWall
w2_110.045.0wall
nameexternal_wall
ExternalWall
floor_210.090.0floor
nameexternal_wall
FloorOnGround
win1_11.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement
namespace_2
parameters
mSenFac1.0
AFlo20.0
hRoo2.0
linearizeRadiationtrue
m_flow_nominal0.01
T_start294.15
volume40.0
occupancy
nameoccupancy_1
parameters
ventilation_inlets
nametype
pressure_drop_duct_in_2Duct
vav_in_2VAV
ventilation_outlets
nametype
pressure_drop_duct_out_2Duct
external_boundaries
namesurfaceazimuthtiltconstructiontype
w2_210.045.0wall
nameexternal_wall
ExternalWall
floor_310.090.0floor
nameexternal_wall
FloorOnGround
win1_21.045.0wall
namedouble_glazing
Window
internal_elements
namesurfaceazimuthtiltconstructiontype
internal_space_1_space_210.010.0wall
nameinternal_wall
InternalElement

Conclusions

Conclusions

Spaces

Introduction

Introduction

nameinternal_wall
layers
materialthickness
namebrick
k0.89
c790.0
rho1920.0
epsLw0.85
epsSw0.65
0.2
nameexternal_wall
layers
materialthickness
nameconcrete
k1.4
c840.0
rho2240.0
epsLw0.85
epsSw0.65
0.2
nameinsulation_board
k0.03
c1200.0
rho40.0
epsLw0.85
epsSw0.65
0.02
nameplywood
k0.12
c1210.0
rho540.0
epsLw0.85
epsSw0.65
0.1
namedouble_glazing
layers
thicknessmateriallayer_type
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
0.0127
nameAir
k0.025
c1005.0
rho1.2
epsLw0.85
epsSw0.65
gas
0.003
nameid_100
k1.0
c840.0
rho2500.0
epsLw0.85
epsSw0.65
solar_transmittance
  • 0.646
solar_reflectance_outside_facing
  • 0.062
solar_reflectance_room_facing
  • 0.063
infrared_transmissivity0.0
infrared_absorptivity_outside_facing0.84
infrared_absorptivity_room_facing0.84
glass
u_value_frame1.4

Conclusions

Conclusions

Spaces

Introduction

Introduction

Conclusions

Conclusions

")); end building; diff --git a/tests/test_data_reader.py b/tests/test_data_reader.py index d56b92e..fee2d1e 100644 --- a/tests/test_data_reader.py +++ b/tests/test_data_reader.py @@ -1,10 +1,6 @@ from pathlib import Path -from tests.test_template import _read, clean_model -from trano.library.library import Buildings from trano.models.elements.bus import transform_csv_to_table -from trano.models.elements.space import Space -from trano.topology import Network def test_transform_csv_to_table() -> None: @@ -12,19 +8,3 @@ def test_transform_csv_to_table() -> None: Path(__file__).parent.joinpath("resources", "validation.csv") ) assert validation_data.data is not None - - -def test_template_buildings_free_float_single_zone_with_data( - simple_space_1_with_occupancy: Space, -) -> None: - network = Network( - name="buildings_free_float_single_zone", - library=Buildings( - constants="""package Medium = Buildings.Media.Air(extraPropertiesNames={"CO2"}) "Medium model"; - package MediumW = Buildings.Media.Water "Medium model";""" - ), - external_data=Path(__file__).parent.joinpath("resources", "validation.csv"), - ) - network.add_boiler_plate_spaces([simple_space_1_with_occupancy]) - model_ = network.model() - assert clean_model(model_, network.name) == set(_read(network.name)) diff --git a/tests/test_template.py b/tests/test_template.py index 27c2378..52b5417 100755 --- a/tests/test_template.py +++ b/tests/test_template.py @@ -2,7 +2,9 @@ from pathlib import Path from typing import Set -from trano.library.library import Ideas +import pytest + +from trano.library.library import Buildings, Ideas from trano.models.elements.space import Space from trano.topology import Network @@ -65,6 +67,7 @@ def _read(file_name: str) -> Set: } +@pytest.mark.run(order=1) # TODO: code smell! def test_template_buildings_free_float_single_zone( buildings_free_float_single_zone: Network, ) -> None: @@ -74,6 +77,7 @@ def test_template_buildings_free_float_single_zone( ) +@pytest.mark.run(order=2) def test_template_buildings_free_float_two_zones( buildings_free_float_two_zones: Network, ) -> None: @@ -83,6 +87,7 @@ def test_template_buildings_free_float_two_zones( ) +@pytest.mark.run(order=3) def test_template_buildings_free_float_three_zones( buildings_free_float_three_zones: Network, ) -> None: @@ -92,6 +97,7 @@ def test_template_buildings_free_float_three_zones( ) +@pytest.mark.run(order=4) def test_buildings_two_rooms_with_storage( buildings_two_rooms_with_storage: Network, ) -> None: @@ -101,6 +107,7 @@ def test_buildings_two_rooms_with_storage( ) +@pytest.mark.run(order=5) def test_template_buildings_simple_hydronic( buildings_simple_hydronic: Network, ) -> None: @@ -110,6 +117,7 @@ def test_template_buildings_simple_hydronic( ) +@pytest.mark.run(order=6) def test_template_buildings_simple_hydronic_three_zones( buildings_simple_hydronic_three_zones: Network, ) -> None: @@ -119,6 +127,7 @@ def test_template_buildings_simple_hydronic_three_zones( ) +@pytest.mark.run(order=7) def test_template_ideas_free_float_single_zone( ideas_free_float_single_zone: Network, ) -> None: @@ -128,6 +137,7 @@ def test_template_ideas_free_float_single_zone( ) +@pytest.mark.run(order=8) def test_template_ideas_free_float_three_zones( ideas_free_float_three_zones: Network, ) -> None: @@ -137,6 +147,7 @@ def test_template_ideas_free_float_three_zones( ) +@pytest.mark.run(order=9) def test_ideas_simple_hydronic_three_zones( ideas_simple_hydronic_three_zones: Network, ) -> None: @@ -146,6 +157,7 @@ def test_ideas_simple_hydronic_three_zones( ) +@pytest.mark.run(order=10) def test_ideas_simple_hydronic_no_occupancy( ideas_simple_hydronic_no_occupancy: Network, ) -> None: @@ -155,6 +167,7 @@ def test_ideas_simple_hydronic_no_occupancy( ) +@pytest.mark.run(order=11) def test_space_1_ideal_heating( space_1_ideal_heating_network: Network, ) -> None: @@ -165,6 +178,7 @@ def test_space_1_ideal_heating( ) +@pytest.mark.run(order=12) def test_space_1_different_construction_types( space_1_different_construction_types_network: Network, ) -> None: @@ -175,6 +189,7 @@ def test_space_1_different_construction_types( ) == set(_read(space_1_different_construction_types_network.name)) +@pytest.mark.run(order=13) def test_one_spaces_air_handling_unit(one_spaces_air_handling_unit: Network) -> None: model_ = one_spaces_air_handling_unit.model() @@ -183,6 +198,7 @@ def test_one_spaces_air_handling_unit(one_spaces_air_handling_unit: Network) -> ) +@pytest.mark.run(order=14) def test_two_spaces_air_handling_unit(two_spaces_air_handling_unit: Network) -> None: model_ = two_spaces_air_handling_unit.model() assert clean_model(model_, two_spaces_air_handling_unit.name) == set( @@ -190,6 +206,7 @@ def test_two_spaces_air_handling_unit(two_spaces_air_handling_unit: Network) -> ) +@pytest.mark.run(order=15) def test_space_with_same_properties(space_with_same_properties: Space) -> None: network = Network( name="space_with_same_properties", @@ -199,6 +216,7 @@ def test_space_with_same_properties(space_with_same_properties: Space) -> None: assert clean_model(model_, network.name) == set(_read(network.name)) +@pytest.mark.run(order=16) def test_space_with_same_properties_ideas(space_with_same_properties: Space) -> None: network = Network(name="space_with_same_properties_ideas", library=Ideas()) network.add_boiler_plate_spaces([space_with_same_properties]) @@ -206,11 +224,13 @@ def test_space_with_same_properties_ideas(space_with_same_properties: Space) -> assert clean_model(model_, network.name) == set(_read(network.name)) +@pytest.mark.run(order=17) def test_space_with_door(space_with_door: Network) -> None: model_ = space_with_door.model() assert clean_model(model_, space_with_door.name) == set(_read(space_with_door.name)) +@pytest.mark.run(order=18) def test_building_multiple_internal_walls( building_multiple_internal_walls: Network, ) -> None: @@ -220,6 +240,7 @@ def test_building_multiple_internal_walls( ) +@pytest.mark.run(order=19) def test_building_multiple_internal_walls_ideas( building_multiple_internal_walls_ideas: Network, ) -> None: @@ -229,6 +250,24 @@ def test_building_multiple_internal_walls_ideas( ) +@pytest.mark.run(order=20) def test_house_model(house_model: Network) -> None: model_ = house_model.model() assert clean_model(model_, house_model.name) == set(_read(house_model.name)) + + +@pytest.mark.run(order=21) +def test_template_buildings_free_float_single_zone_with_data( + simple_space_1_with_occupancy: Space, +) -> None: + network = Network( + name="buildings_free_float_single_zone_with_data", + library=Buildings( + constants="""package Medium = Buildings.Media.Air(extraPropertiesNames={"CO2"}) "Medium model"; + package MediumW = Buildings.Media.Water "Medium model";""" + ), + external_data=Path(__file__).parent.joinpath("resources", "validation.csv"), + ) + network.add_boiler_plate_spaces([simple_space_1_with_occupancy]) + model_ = network.model() + assert clean_model(model_, network.name) == set(_read(network.name)) diff --git a/trano/models/elements/base.py b/trano/models/elements/base.py index 81ae5a8..831a439 100644 --- a/trano/models/elements/base.py +++ b/trano/models/elements/base.py @@ -224,7 +224,9 @@ class BaseParameter(BaseModel): class BaseElement(BaseModel): - name_counter: ClassVar[int] = 0 + name_counter: ClassVar[ + int + ] = 0 # TODO: this needs to be removed and replaced with a proper solution. name: Optional[str] = Field(default=None) annotation_template: str = """annotation ( Placement(transformation(origin = {{ macros.join_list(element.position) }}, diff --git a/trano/models/elements/controls/ahu.py b/trano/models/elements/controls/ahu.py index ff4e6d6..293bd73 100644 --- a/trano/models/elements/controls/ahu.py +++ b/trano/models/elements/controls/ahu.py @@ -12,6 +12,8 @@ ) from trano.models.elements.bus import DataBus from trano.models.elements.controls.base import Control +from trano.models.elements.damper import VAV +from trano.models.elements.space import Space from trano.models.elements.system import System dynamic_ahu_controller_template = DynamicComponentTemplate( @@ -86,8 +88,8 @@ class BaseAhuControl(LibraryData): class AhuControl(Control): - spaces: Optional[List[str]] = None - vavs: Optional[List[str]] = None + spaces: Optional[List[Space]] = None + vavs: Optional[List[VAV]] = None libraries_data: AvailableLibraries = AvailableLibraries( ideas=[BaseAhuControl], buildings=[BaseAhuControl], diff --git a/trano/models/elements/controls/collector.py b/trano/models/elements/controls/collector.py index 12cbb0e..e5a7844 100644 --- a/trano/models/elements/controls/collector.py +++ b/trano/models/elements/controls/collector.py @@ -12,6 +12,7 @@ from trano.models.elements.bus import DataBus from trano.models.elements.controls.base import Control, PIDParameters from trano.models.elements.system import System +from trano.models.elements.valve import Valve dynamic_collector_control_template = DynamicComponentTemplate( template="""model CollectorControl{{ element.name | capitalize}} @@ -106,7 +107,7 @@ class BaseCollectorControl(LibraryData): class CollectorControl(Control): - valves: Optional[List[str]] = None + valves: Optional[List[Valve]] = None parameters: PIDParameters = Field(default=PIDParameters()) libraries_data: AvailableLibraries = AvailableLibraries( ideas=[BaseCollectorControl], diff --git a/trano/models/elements/envelope/base.py b/trano/models/elements/envelope/base.py index 5b97845..0cfcff7 100644 --- a/trano/models/elements/envelope/base.py +++ b/trano/models/elements/envelope/base.py @@ -107,7 +107,7 @@ def from_base_elements( constructions=[construction], ) merged_walls.append(merged_wall) - return sorted(merged_walls, key=lambda x: x.name) + return sorted(merged_walls, key=lambda x: x.name) # type: ignore #TODO: what is the issue with this!!! class MergedBaseWindow(MergedBaseWall): diff --git a/trano/models/elements/envelope/merged_windows.py b/trano/models/elements/envelope/merged_windows.py index 8596bac..35858a8 100644 --- a/trano/models/elements/envelope/merged_windows.py +++ b/trano/models/elements/envelope/merged_windows.py @@ -46,4 +46,4 @@ def from_base_windows(cls, base_walls: List["BaseWindow"]) -> List["MergedWindow widths=data["width"], ) merged_windows.append(merged_window) - return sorted(merged_windows, key=lambda x: x.name) + return sorted(merged_windows, key=lambda x: x.name) # type: ignore diff --git a/trano/topology.py b/trano/topology.py index f714176..2802487 100644 --- a/trano/topology.py +++ b/trano/topology.py @@ -26,8 +26,10 @@ ) from trano.models.elements.boiler import Boiler from trano.models.elements.bus import DataBus +from trano.models.elements.controls.ahu import AhuControl from trano.models.elements.controls.base import Control from trano.models.elements.controls.collector import CollectorControl +from trano.models.elements.controls.vav import VAVControl from trano.models.elements.damper import VAV from trano.models.elements.envelope.internal_element import InternalElement from trano.models.elements.materials.properties import extract_properties @@ -141,11 +143,11 @@ def _build_data_bus(self) -> DataBus: ) controls = sorted( [node for node in self.graph.nodes if isinstance(node, Control)], - key=lambda x: x.name, + key=lambda x: x.name, # type: ignore ) ahus = sorted( [node for node in self.graph.nodes if isinstance(node, AirHandlingUnit)], - key=lambda x: x.name, + key=lambda x: x.name, # type: ignore ) data_bus = DataBus( name="data_bus", @@ -187,7 +189,9 @@ def _build_full_space_control(self) -> None: ) ) for controllable_element in controllable_ventilation_elements: - if controllable_element.control: + if controllable_element.control and isinstance( + controllable_element.control, VAVControl + ): controllable_element.control.ahu = next( (n for n in neighbors if isinstance(n, AirHandlingUnit)), None ) @@ -212,6 +216,8 @@ def connect_spaces( construction=Constructions.internal_wall, tilt=Tilt.wall, ) + if space_1.position is None or space_2.position is None: + raise Exception("Position not assigned to spaces") internal_element.position = [ space_1.position[0] + (space_2.position[0] - space_1.position[0]) / 2, space_1.position[1], @@ -343,7 +349,13 @@ def _connect_space_controls(self) -> None: for system_control in self._system_controls: shortest_path(undirected_graph, system_control, space_control) - def get_ahu_elements( + def get_ahu_space_elements(self, ahu: AirHandlingUnit) -> List[Space]: + return [x for x in self._get_ahu_elements(ahu, Space) if isinstance(x, Space)] + + def get_ahu_vav_elements(self, ahu: AirHandlingUnit) -> List[VAV]: + return [x for x in self._get_ahu_elements(ahu, VAV) if isinstance(x, VAV)] + + def _get_ahu_elements( self, ahu: AirHandlingUnit, element_type: Type[Union[VAV, Space]] ) -> List[Union[VAV, Space]]: elements_: List[Union[VAV, Space]] = [] @@ -358,9 +370,9 @@ def get_ahu_elements( def configure_ahu_control(self) -> None: ahus = [node for node in self.graph.nodes if isinstance(node, AirHandlingUnit)] for ahu in ahus: - if ahu.control: - ahu.control.spaces = self.get_ahu_elements(ahu, Space) - ahu.control.vavs = self.get_ahu_elements(ahu, VAV) + if ahu.control and isinstance(ahu.control, AhuControl): + ahu.control.spaces = self.get_ahu_space_elements(ahu) + ahu.control.vavs = self.get_ahu_vav_elements(ahu) def get_linked_valves(self, pump_collector: BaseElement) -> List[Valve]: valves_: List[Valve] = [] @@ -382,7 +394,8 @@ def configure_collector_control(self) -> None: and isinstance(node.control, CollectorControl) ] for pump_collector in pump_collectors: - pump_collector.control.valves = self.get_linked_valves(pump_collector) + if isinstance(pump_collector.control, CollectorControl): + pump_collector.control.valves = self.get_linked_valves(pump_collector) def set_weather_path_to_container_path(self, project_path: Path) -> None: for node in self.graph.nodes: