Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue1171 storage spring cleaning #1226

Open
wants to merge 44 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 9 commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
a2149d0
Add conversion script for renaming #1171 [skip ci]
LauraMaier Jan 27, 2022
4bdc81f
Change version number in AixLib #1171 [skip ci]
LauraMaier Jan 27, 2022
612b155
Rename storage models #1171 [skip ci]
LauraMaier Jan 27, 2022
2fbb2af
Adapt package order #1171 [skip ci]
LauraMaier Jan 27, 2022
fce547e
Automatic path change in example models #1171 [skip ci]
LauraMaier Jan 27, 2022
c8aebd7
Adapt documentation to increase comprehensibility #1171 [skip ci]
LauraMaier Jan 27, 2022
080200b
Add temperature sensors in simple storage #1171
LauraMaier Jan 27, 2022
5d38fd0
ci_correct_html
ebc-aixlib-bot Jan 27, 2022
f2d1b77
Merge pull request #1225 from RWTH-EBC/Correct_HTML_issue1171_Storage…
LauraMaier Jan 28, 2022
4027ea0
Change used class in geothermal example #1171
LauraMaier Jan 28, 2022
6378d97
Adapt name of data base due to renaming of bufferStorage [skip ci] #1171
LauraMaier Jan 28, 2022
03d3e4d
Adapt conversion script for new data base record #1171
LauraMaier Jan 28, 2022
7f709c7
Replace HC1 to old position and change path to data base #1171
LauraMaier Jan 28, 2022
fbe8d82
Merge branch 'development' into issue1171_StorageSpringCleaning
LauraMaier Mar 23, 2022
7508612
Adapt baseData in partialHeatTransfer #1171
LauraMaier Mar 23, 2022
1066f23
Adapt conversion script and rename example #1171
LauraMaier Mar 23, 2022
81249b4
Adapt simulate and plot script to new name #1171 [skip-ci]
LauraMaier Mar 23, 2022
74ec10e
Add simulate and plot script #1171
LauraMaier Mar 23, 2022
9810289
Add simulate and plot scripts for storage related examples #1171
LauraMaier Mar 23, 2022
823eba6
Automatic push of CI with new regression reference files.Please pull …
ebc-aixlib-bot Mar 23, 2022
61b730c
Replace obsolete pump and valve models in example model #1171 "ci_upd…
LauraMaier Mar 23, 2022
ec7f364
Replace obsolete pump model in StorageBoiler example #1171 "ci_update…
LauraMaier Mar 23, 2022
0d61e63
Automatic push of CI with updated or new regression reference files.P…
ebc-aixlib-bot Mar 23, 2022
6fc9854
Merge branch 'IBPSA_Merge' into issue1171_StorageSpringCleaning
LauraMaier Jul 14, 2022
9a26a02
Merge branch 'IBPSA_Merge' into issue1171_StorageSpringCleaning #1171
LauraMaier Jul 14, 2022
2000641
Refactor SI units path in storage models #1171
LauraMaier Jul 14, 2022
643f429
Add conversion script and update version #1171
LauraMaier Jul 14, 2022
7c033a6
Add conversion script #1171
LauraMaier Jul 14, 2022
6b22338
Adapt conversion script #1171
LauraMaier Jul 14, 2022
4fea999
Delete Medium model due to double declaration #1171
LauraMaier Jul 14, 2022
8bda225
Adapt white list for CI #1171
LauraMaier Jul 14, 2022
ad99c48
Replace Storage in exergy meter example with correct path #1171
LauraMaier Jul 14, 2022
b5e83bf
Merge branch 'development' into issue1171_StorageSpringCleaning
LauraMaier Oct 12, 2022
92c7431
Add conversion script and update AL version #1171
LauraMaier Oct 12, 2022
dabb343
Merge branch 'development' into issue1171_StorageSpringCleaning
LauraMaier Oct 13, 2022
3829755
Add Storage example on update list "ci_update_ref" #1171
LauraMaier Oct 13, 2022
48488da
Automatic push of CI with updated or new regression reference files.P…
ebc-aixlib-bot Oct 13, 2022
b1e05ae
Merge branch 'development' into issue1171_StorageSpringCleaning
LauraMaier Oct 13, 2022
812ab0f
Adapt storage examples to avoid warnings and "ci_update_ref" #1171
LauraMaier Oct 14, 2022
d862f12
Automatic push of CI with updated or new regression reference files.P…
ebc-aixlib-bot Oct 14, 2022
1f23ab7
Delete import SI and change to full paths #1171
LauraMaier Oct 28, 2022
e148bd7
Merge branch 'development' into issue1171_StorageSpringCleaning
LauraMaier Oct 28, 2022
f00bda7
Merge branch 'development' into issue1171_StorageSpringCleaning
LauraMaier Nov 1, 2022
5c46e4b
Merge branch 'development' into issue1171_StorageSpringCleaning
LauraMaier Nov 14, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion AixLib/Fluid/Storage/Examples/BufferStorage.mo
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ model BufferStorage
replaceable package Medium =
Modelica.Media.Water.ConstantPropertyLiquidWater
constrainedby Modelica.Media.Interfaces.PartialMedium;
AixLib.Fluid.Storage.BufferStorage bufferStorage(
AixLib.Fluid.Storage.StorageDetailed bufferStorage(
energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial,
massDynamics=Modelica.Fluid.Types.Dynamics.SteadyStateInitial,
m1_flow_nominal=const.k,
Expand Down
3 changes: 1 addition & 2 deletions AixLib/Fluid/Storage/Examples/StorageBoiler.mo
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,7 @@ model StorageBoiler
Modelica.Media.Water.ConstantPropertyLiquidWater
constrainedby Modelica.Media.Interfaces.PartialMedium;

AixLib.Fluid.Storage.BufferStorage
bufferStorage(
AixLib.Fluid.Storage.StorageDetailed bufferStorage(
redeclare package MediumHC1 = Medium,
redeclare package MediumHC2 = Medium,
m1_flow_nominal=pipe1.m_flow_nominal,
Expand Down
3 changes: 1 addition & 2 deletions AixLib/Fluid/Storage/Examples/StorageSolarCollector.mo
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,7 @@ model StorageSolarCollector

replaceable package Medium = AixLib.Media.Water;

AixLib.Fluid.Storage.BufferStorage
bufferStorage(
AixLib.Fluid.Storage.StorageDetailed bufferStorage(
redeclare package MediumHC1 = Medium,
redeclare package MediumHC2 = Medium,
m1_flow_nominal=solarThermal.m_flow_nominal,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
within AixLib.Fluid.Storage;
model BufferStorage
model StorageDetailed
"Buffer Storage Model with support for heating rod and two heating coils"
import SI = Modelica.SIunits;

Expand Down Expand Up @@ -36,7 +36,8 @@ model BufferStorage

parameter SI.Temperature TStart=298.15 "Start Temperature of fluid" annotation (Dialog(tab="Initialization", group="Storage specific"));

replaceable parameter DataBase.Storage.BufferStorageBaseDataDefinition data constrainedby DataBase.Storage.BufferStorageBaseDataDefinition "Data record for Storage"
replaceable parameter DataBase.Storage.BufferStorageBaseDataDefinition data constrainedby
DataBase.Storage.BufferStorageBaseDataDefinition "Data record for Storage"
FWuellhorst marked this conversation as resolved.
Show resolved Hide resolved
annotation (choicesAllMatching);

parameter Integer n(min=3)=5 " Model assumptions Number of Layers";
Expand Down Expand Up @@ -139,22 +140,25 @@ model BufferStorage
extent={{-5,5},{5,-5}},
rotation=0,
origin={-80,-80})));
Modelica.Fluid.Interfaces.FluidPort_a fluidportTop1(redeclare final package Medium =
Medium)
Modelica.Fluid.Interfaces.FluidPort_a fluidportTop1(redeclare final package
Medium = Medium)
"Fluid connector a (positive design flow direction is from port_a to port_b)"
annotation (Placement(transformation(extent={{-38,92},{-18,110}},rotation=
0), iconTransformation(extent={{-38,92},{-18,110}})));
Modelica.Fluid.Interfaces.FluidPort_a fluidportBottom2(redeclare final package Medium =
Modelica.Fluid.Interfaces.FluidPort_a fluidportBottom2(redeclare final
package Medium =
Medium)
"Fluid connector a (positive design flow direction is from port_a to port_b)"
annotation (Placement(transformation(extent={{14,-110},{32,-92}},rotation=
0), iconTransformation(extent={{14,-110},{32,-92}})));
Modelica.Fluid.Interfaces.FluidPort_b fluidportBottom1(redeclare final package Medium =
Modelica.Fluid.Interfaces.FluidPort_b fluidportBottom1(redeclare final
package Medium =
Medium)
"Fluid connector b (positive design flow direction is from port_a to port_b)"
annotation (Placement(transformation(extent={{-36,-112},{-18,-92}},
rotation=0), iconTransformation(extent={{-36,-112},{-18,-92}})));
Modelica.Fluid.Interfaces.FluidPort_b fluidportTop2(redeclare final package Medium =
Modelica.Fluid.Interfaces.FluidPort_b fluidportTop2(redeclare final package
Medium =
Medium)
"Fluid connector b (positive design flow direction is from port_a to port_b)"
annotation (Placement(transformation(extent={{14,92},{36,110}},rotation=0),
Expand All @@ -166,6 +170,12 @@ model BufferStorage
"Heat transfer model" annotation (Placement(transformation(extent={{-34,0},
{-14,20}}, rotation=0)));

Modelica.Fluid.Interfaces.FluidPort_b portHC1Out(redeclare final package
Medium =
MediumHC1) if useHeatingCoil1
"Fluid connector b (positive design flow direction is from port_a to port_b)"
annotation (Placement(transformation(extent={{-90,2},{-70,22}}),
iconTransformation(extent={{-88,20},{-74,32}})));
FWuellhorst marked this conversation as resolved.
Show resolved Hide resolved
AixLib.Fluid.MixingVolumes.MixingVolume layer[n](
each final energyDynamics=energyDynamics,
each final massDynamics=massDynamics,
Expand Down Expand Up @@ -197,27 +207,25 @@ model BufferStorage
/////HEATING COIL 1 ////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////

Modelica.Fluid.Interfaces.FluidPort_a portHC1In(redeclare final package Medium =
Modelica.Fluid.Interfaces.FluidPort_a portHC1In(redeclare final package
Medium =
MediumHC1) if useHeatingCoil1
"Fluid connector a (positive design flow direction is from port_a to port_b)"
annotation (Placement(transformation(extent={{-92,36},{-72,56}}),
iconTransformation(extent={{-90,50},{-74,64}})));
Modelica.Fluid.Interfaces.FluidPort_b portHC1Out(redeclare final package Medium =
MediumHC1) if useHeatingCoil1
"Fluid connector b (positive design flow direction is from port_a to port_b)"
annotation (Placement(transformation(extent={{-90,2},{-70,22}}),
iconTransformation(extent={{-88,20},{-74,32}})));

//////////////////////////////////////////////////////////////////////////////////////////
/////HEATING COIL 2 ////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////

Modelica.Fluid.Interfaces.FluidPort_a portHC2In(redeclare final package Medium =
Modelica.Fluid.Interfaces.FluidPort_a portHC2In(redeclare final package
Medium =
MediumHC2) if useHeatingCoil2
"Fluid connector a (positive design flow direction is from port_a to port_b)"
annotation (Placement(transformation(extent={{-92,-30},{-72,-10}}),
iconTransformation(extent={{-88,-32},{-74,-18}})));
Modelica.Fluid.Interfaces.FluidPort_b portHC2Out(redeclare final package Medium =
Modelica.Fluid.Interfaces.FluidPort_b portHC2Out(redeclare final package
Medium =
MediumHC2) if useHeatingCoil2
"Fluid connector b (positive design flow direction is from port_a to port_b)"
annotation (Placement(transformation(extent={{-92,-68},{-72,-48}}),
Expand Down Expand Up @@ -812,16 +820,16 @@ for i in 2:(n-1) loop
</li>
</ul>
</html>",
info="<html><h4>
<span style=\"color: #008000\">Overview</span>
</h4>
info="<html><p>
<b><span style=\"color: #008000;\">Overview</span></b>
</p>
<p>
Detailed thermal energy storage model with optional heating rod and
two heating coils based on a pipe model.
</p>
<p>
Buffer Storage Model with support for heating rod and two heating
coils.
<b><span style=\"color: #008000;\">Concept</span></b>
</p>
<h4>
<span style=\"color: #008000\">Concept</span>
</h4>
<p>
It represents a buffer storage stratified into n layers where 1
represents the bottom layer and n represents the top layer. The
Expand Down Expand Up @@ -873,22 +881,22 @@ for i in 2:(n-1) loop
included. Thus external pressure loss models are required for the use
of the model.
</p>
<h4>
<span style=\"color: #008000\">Sources</span>
</h4>
<p>
<b><span style=\"color: #008000;\">Sources</span></b>
</p>
<ul>
<li>R. Viskanta, A. KaraIds: Interferometric observations of the
temperature structure in water cooled or heated from above.
<i>Advances in Water Resources,</i> volume 1, 1977, pages 57-69.
Bibtex-Key [R.VISKANTA1977]
</li>
</ul>
<h4>
<span style=\"color: #008000;\">Example Results</span>
</h4>
<p>
<b><span style=\"color: #008000;\">Example Results</span></b>
</p>
<p>
<a href=
\"AixLib.Fluid.Storage.Examples.BufferStorageCharging\">AixLib.Fluid.Storage.Examples.BufferStorageCharging</a>
</p>
</html>"));
end BufferStorage;
end StorageDetailed;
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
within AixLib.Fluid.Storage;
model Storage
model StorageSimple
"Simplified multi-layer storage model with volumes as heat exchangers without pressure losses"

replaceable package Medium =
Modelica.Media.Water.ConstantPropertyLiquidWater
Expand Down Expand Up @@ -95,6 +96,54 @@ model Storage
parameter Modelica.SIunits.MassFlowRate m_flow_small_layer_HE=1E-4*abs(m_flow_nominal_HE)
"Small mass flow rate for regularization of zero flow" annotation(Dialog(tab="Advanced"));

Modelica.Blocks.Interfaces.RealOutput TTopLayer(
final quantity="ThermodynamicTemperature",
final unit="K",
min=0,
displayUnit="degC") "Temperature in the top layer" annotation (Placement(
transformation(
origin={-99,85},
extent={{5,5},{-5,-5}},
rotation=0), iconTransformation(
extent={{5,5},{-5,-5}},
rotation=0,
origin={-76,88})));
Modelica.Blocks.Interfaces.RealOutput TBottomLayer(
final quantity="ThermodynamicTemperature",
final unit="K",
min=0,
displayUnit="degC") "Temperature in the bottom layer" annotation (Placement(
transformation(
origin={-99,-83},
extent={{5,5},{-5,-5}},
rotation=0), iconTransformation(
extent={{5,5},{-5,-5}},
rotation=0,
origin={-76,-80})));
Modelica.Blocks.Interfaces.RealOutput TTopLayer_HE(
final quantity="ThermodynamicTemperature",
final unit="K",
min=0,
displayUnit="degC") "Temperature in the top layer" annotation (Placement(
transformation(
origin={97,71},
extent={{-5,5},{5,-5}},
rotation=0), iconTransformation(
extent={{-5,5},{5,-5}},
rotation=0,
origin={102,88})));
Modelica.Blocks.Interfaces.RealOutput TBottomLayer_HE(
final quantity="ThermodynamicTemperature",
final unit="K",
min=0,
displayUnit="degC") "Temperature in the top layer" annotation (Placement(
transformation(
origin={95,-69},
extent={{-5,5},{5,-5}},
rotation=0), iconTransformation(
extent={{-5,5},{5,-5}},
rotation=0,
origin={102,-80})));
protected
parameter Modelica.SIunits.Volume V = A * h;
parameter Modelica.SIunits.Area A = Modelica.Constants.pi * d ^ 2 / 4;
Expand Down Expand Up @@ -142,24 +191,38 @@ equation
end for;
connect(heatPort, heatPort) annotation(Line(points = {{-106, 0}, {-106, 0}}, color = {191, 0, 0}));

///////////////////////////////////////////////////////////////////////////////
/////////////////// connection of Temperature Sensor//////////////////////////
///////////////////////////////////////////////////////////////////////////////

TBottomLayer = layer[1].heatPort.T;

TTopLayer = layer[n].heatPort.T;

TBottomLayer_HE = layer_HE[1].heatPort.T;

TTopLayer_HE = layer_HE[n].heatPort.T;

annotation (Icon(coordinateSystem(preserveAspectRatio = false, extent = {{-100, -100}, {100, 100}}), graphics={ Polygon(points = {{-154, 3}, {-136, -7}, {-110, -3}, {-84, -7}, {-48, -5}, {-18, -9}, {6, -3}, {6, -41}, {-154, -41}, {-154, 3}}, lineColor = {0, 0, 255}, pattern = LinePattern.None, fillColor = {0, 0, 255},
fillPattern = FillPattern.Solid, origin = {78, -59}, rotation = 360), Polygon(points = {{-154, 3}, {-134, -3}, {-110, 1}, {-84, -1}, {-56, -5}, {-30, -11}, {6, -3}, {6, -41}, {-154, -41}, {-154, 3}}, lineColor = {0, 0, 255}, pattern = LinePattern.None, fillColor = {14, 110, 255},
fillPattern = FillPattern.Solid, origin = {78, -27}, rotation = 360), Rectangle(extent = {{-80, -71}, {80, 71}}, lineColor = {0, 0, 255}, pattern = LinePattern.None, fillColor = {85, 170, 255},
fillPattern = FillPattern.Solid, origin = {4, 1}, rotation = 360), Polygon(points = {{-24, -67}, {-16, -67}, {-8, -67}, {4, -67}, {12, -67}, {36, -67}, {76, -67}, {110, -67}, {136, -67}, {136, 39}, {-24, 35}, {-24, -67}}, lineColor = {0, 0, 255}, pattern = LinePattern.None, fillColor = {170, 213, 255},
fillPattern = FillPattern.Solid, origin = {-52, 33}, rotation = 360), Polygon(points = {{-39, -30}, {-31, -30}, {-11, -30}, {23, -30}, {67, -30}, {93, -30}, {121, -30}, {121, 24}, {-39, 26}, {-39, -30}}, lineColor = {0, 0, 255}, pattern = LinePattern.None, fillColor = {255, 170, 170},
fillPattern = FillPattern.Solid, origin = {-37, 38}, rotation = 360), Polygon(points = {{-80, 100}, {-80, 54}, {-62, 54}, {-30, 54}, {32, 54}, {80, 54}, {80, 82}, {80, 100}, {-80, 100}}, lineColor = {0, 0, 255}, pattern = LinePattern.None, fillColor = {255, 62, 62},
fillPattern = FillPattern.Solid, origin = {4, 0}, rotation = 360), Rectangle(extent = {{-76, 100}, {84, -100}}, lineColor = {0, 0, 0},
lineThickness = 1), Line(points = {{-21, 94}, {-21, 132}}, color = {0, 0, 0}, smooth = Smooth.Bezier, thickness = 1, arrow = {Arrow.Filled, Arrow.None}, origin = {-56, 67}, rotation = 270, visible = use_heatingCoil1), Line(points = {{-54, 88}, {68, 56}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1), Line(points = {{68, 56}, {-48, 44}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1), Line(points = {{-48, 44}, {62, 6}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1), Line(points = {{62, 6}, {-44, -16}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1), Line(points = {{76, -81}, {-26, -81}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1), Line(points = {{0, -9}, {0, 9}}, color = {0, 0, 0}, smooth = Smooth.Bezier, thickness = 1, arrow = {Arrow.Filled, Arrow.None}, origin = {-34, -81}, rotation = 90, visible = use_heatingCoil1), Line(points = {{62, -42}, {-44, -16}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1), Line(points = {{62, -42}, {-42, -80}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1), Line(points = {{48, 88}, {-54, 88}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1)}), Documentation(info = "<html><h4>
<span style=\"color:#008000\">Overview</span>
</h4>
lineThickness = 1), Line(points = {{-21, 94}, {-21, 132}}, color = {0, 0, 0}, smooth = Smooth.Bezier, thickness = 1, arrow = {Arrow.Filled, Arrow.None}, origin = {-56, 67}, rotation = 270, visible = use_heatingCoil1), Line(points = {{-54, 88}, {68, 56}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1), Line(points = {{68, 56}, {-48, 44}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1), Line(points = {{-48, 44}, {62, 6}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1), Line(points = {{62, 6}, {-44, -16}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1), Line(points = {{76, -81}, {-26, -81}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1), Line(points = {{0, -9}, {0, 9}}, color = {0, 0, 0}, smooth = Smooth.Bezier, thickness = 1, arrow = {Arrow.Filled, Arrow.None}, origin = {-34, -81}, rotation = 90, visible = use_heatingCoil1), Line(points = {{62, -42}, {-44, -16}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1), Line(points = {{62, -42}, {-42, -80}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1), Line(points = {{48, 88}, {-54, 88}}, color = {0, 0, 0}, thickness = 1, smooth = Smooth.Bezier, visible = use_heatingCoil1)}), Documentation(info="<html><p>
<b><span style=\"color: #008000;\">Overview</span></b>
</p>
<p>
Simple multi-layer thermal energy storage model with volumes as heat
exchangers (no pressure losses).
</p>
<p>
Simple model for a buffer storage.
<b><span style=\"color: #008000;\">Concept</span></b>
</p>
<h4>
<span style=\"color:#008000\">Concept</span>
</h4>
<p>
The water volume can be discretised in several layers.
The water volume of the thermal energy storage can be discretised in
several layers.
</p>
<p>
The following physical processes are modelled
Expand All @@ -174,7 +237,24 @@ equation
</ul>
<p>
<br/>
<b><span style=\"color: #008000\">Example Results</span></b>
In contrast to the StorageDetailed model, the following
simplifications are taken as a basis:
</p>
<ul>
<li>Only indirect charging and discharging using a heat exchanger is
possible. Thus, there are two separated hydraulic circuits.
</li>
<li>The heat exchanger is an array of volumes without any pressure
losses
</li>
<li>There is no optional heating coil and no second heating coil.
Hence, the StorageSimple model is limited to a two-circuit
application.
</li>
</ul>
<p>
<br/>
<b><span style=\"color: #008000;\">Example Results</span></b>
</p>
<p>
<a href=
Expand All @@ -185,6 +265,14 @@ equation
\"AixLib.HVAC.Storage.Examples.StorageSolarCollector\">AixLib.HVAC.Storage.Examples.StorageSolarCollector</a>
</p>
<ul>
<li>November 2022 by Laura Maier:
</li>
<li style=\"list-style: none; display: inline\">
<p>
Rename model and specify difference compared to detailed thermal
energy storage model
</p>
</li>
<li>
<i>November 2014&#160;</i> by Marcus Fuchs:<br/>
Changed model to use Annex 60 base class
Expand All @@ -195,4 +283,4 @@ equation
</li>
</ul>
</html>"));
end Storage;
end StorageSimple;
4 changes: 2 additions & 2 deletions AixLib/Fluid/Storage/package.order
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
UsersGuide
BufferStorage
StorageDetailed
StorageSimple
ExpansionVessel
Storage
Stratified
StratifiedEnhanced
StratifiedEnhancedInternalHex
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
clear

convertClear();

// Rename Buffer and standard storage
convertClass("AixLib.Fluid.Storage.BufferStorage", "AixLib.Fluid.Storage.StorageDetailed");
FWuellhorst marked this conversation as resolved.
Show resolved Hide resolved
convertClass("AixLib.Fluid.Storage.Storage", "AixLib.Fluid.Storage.StorageSimple");
9 changes: 6 additions & 3 deletions AixLib/Systems/TABS/BaseClasses/TabsBus.mo
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,14 @@ expandable connector TabsBus "Data bus for tabs"
coordinateSystem(preserveAspectRatio=false)),
Diagram(graphics,
coordinateSystem(preserveAspectRatio=false)),
Documentation(info="<html>
<p>Definition of a bus connector for the Tabs Module.</p>
Documentation(info="<html><p>
Definition of a bus connector for the Tabs Module.
</p>
FWuellhorst marked this conversation as resolved.
Show resolved Hide resolved
</html>", revisions="<html>
<ul>
<li>December 09, 2021, by Alexander K&uuml;mpel:<br>First implementation.</li>
<li>December 09, 2021, by Alexander Kümpel:<br/>
First implementation.
</li>
</ul>
</html>"));
end TabsBus;
10 changes: 7 additions & 3 deletions AixLib/Systems/TABS/Controller/CtrTabs.mo
Original file line number Diff line number Diff line change
Expand Up @@ -150,11 +150,15 @@ equation
fillPattern=FillPattern.Solid,
textString="Control")}), Diagram(coordinateSystem(preserveAspectRatio=
false)),
Documentation(info="<html>
<p>Simple controller for TABS. The temperature of the water that flows into the concrete is controlled.</p>
Documentation(info="<html><p>
Simple controller for TABS. The temperature of the water that flows
into the concrete is controlled.
</p>
</html>", revisions="<html>
<ul>
<li>December 09, 2021, by Alexander K&uuml;mpel:<br>First implementation.</li>
<li>December 09, 2021, by Alexander Kümpel:<br/>
First implementation.
</li>
</ul>
</html>"));
end CtrTabs;