-
Notifications
You must be signed in to change notification settings - Fork 84
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
Issue1754 ATES model #1759
Issue1754 ATES model #1759
Changes from 41 commits
84f9135
b9dce37
0b83b17
b073350
5df25f3
efdbaf9
31e6686
aee7edc
42edf69
5fb9859
a7cdc15
dd3c0a2
dd5113a
244e427
65e67a0
f8442e9
af90fbc
2210977
ecb683c
d9de3cb
d40371c
33c7fa2
cbef948
969f220
537e107
bc75b7c
9cbf220
c9e2ab2
ba31085
ba7a5c6
f15f918
f4a86db
b8d840c
801ee63
3fe9624
a1e7942
a7cb58a
489966c
b85f689
89c802e
3c12de5
8d6c1fb
38e9a33
1c3900d
a343ef2
d07eb7a
d770c2d
8aa43fc
75980e1
479e0d6
c8c3053
f0120de
f6f6841
ceb7c89
06eedb8
49ca167
4118f76
73c1dad
b6006ff
9b6575f
f581a87
53dff2a
618674c
0a68b30
49a0854
e949283
ac8bbdc
c4bad4e
d33fbf6
7b150be
dc3084c
fd1c981
3ecbc50
7117c82
d92f0c5
bc33beb
57571ce
85ff288
1da8fe7
05684d3
158995f
5f40b8d
aedee8c
3456a4b
76b561c
e525a26
d32ad16
586b769
ec200ac
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
within IBPSA.Fluid.Geothermal.Aquifer.Data; | ||
record Rock "Soil data record of rock heat transfer properties" | ||
extends IBPSA.Fluid.Geothermal.Aquifer.Data.Template( | ||
kSoi=2.8, | ||
dSoi=2680, | ||
cSoi=833); | ||
annotation ( | ||
defaultComponentPrefixes="parameter", | ||
defaultComponentName="aquDat", | ||
Documentation( | ||
info="<html> | ||
<p> | ||
This data record contains the heat transfer properties of rock. | ||
</p> | ||
</html>", | ||
revisions="<html> | ||
<ul> | ||
<li> | ||
May 2023, Alessandro Maccarini:<br/> | ||
First implementation. | ||
</li> | ||
</ul> | ||
</html>")); | ||
end Rock; |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
within IBPSA.Fluid.Geothermal.Aquifer.Data; | ||
record Template | ||
"Template for soil data records" | ||
extends Modelica.Icons.Record; | ||
parameter Modelica.Units.SI.ThermalConductivity kSoi | ||
"Thermal conductivity of the soil material"; | ||
parameter Modelica.Units.SI.SpecificHeatCapacity cSoi | ||
"Specific heat capacity of the soil material"; | ||
parameter Modelica.Units.SI.Density dSoi(displayUnit="kg/m3") | ||
"Density of the soil material"; | ||
annotation (Icon(coordinateSystem(preserveAspectRatio=false)), Diagram( | ||
coordinateSystem(preserveAspectRatio=false)), | ||
defaultComponentPrefixes="parameter", | ||
defaultComponentName="aquDat", | ||
Documentation( | ||
info="<html> | ||
<p> | ||
This record is a template for the records in | ||
<a href=\"modelica://IBPSA.Fluid.Geothermal.Aquifer.SingleWell\"> | ||
IBPSA.Fluid.Geothermal.Aquifer.SingleWell</a>. | ||
</p> | ||
</html>", | ||
revisions="<html> | ||
<ul> | ||
<li> | ||
May 2023, by Alessandro Maccarini:<br/> | ||
First implementation. | ||
</li> | ||
</ul> | ||
</html>")); | ||
end Template; |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
within IBPSA.Fluid.Geothermal.Aquifer; | ||
package Data "Collection of data records for aquifer thermal energy storage" | ||
extends Modelica.Icons.MaterialPropertiesPackage; | ||
|
||
annotation (preferredView="info", Documentation(info="<html> | ||
<p> | ||
This package contains data records for heat properties of aquifers | ||
<a href=\"modelica://IBPSA.Fluid.Geothermal.Aquifer\"> | ||
IBPSA.Fluid.Geothermal.Aquifer</a>. | ||
</p> | ||
</html>")); | ||
end Data; |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
Rock | ||
Template |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
within IBPSA.Fluid.Geothermal.Aquifer.Examples; | ||
model CoolingOffice | ||
extends Modelica.Icons.Example; | ||
parameter Modelica.Units.SI.HeatFlowRate QCoo_flow_nominal=30000 | ||
"Cooling power"; | ||
parameter Modelica.Units.SI.TemperatureDifference deltaT=4 "Temperature difference at heat exchanger"; | ||
parameter Modelica.Units.SI.SpecificHeatCapacity cpWat=4186 "Heat capacity of water"; | ||
parameter Modelica.Units.SI.MassFlowRate mWat_flow_nominal= | ||
QCoo_flow_nominal/(deltaT*cpWat) "Nominal water mass flow rate"; | ||
|
||
HeatExchangers.HeaterCooler_u hea( | ||
redeclare package Medium = IBPSA.Media.Water, | ||
m_flow_nominal=mWat_flow_nominal, | ||
dp_nominal=100, | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 100 Pa pressure drop is way too low for the water-side friction of a heat exchanger. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Working on it (I would like to find some references for these values). |
||
energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial, | ||
Q_flow_nominal=QCoo_flow_nominal) "Heat exchanger" | ||
annotation (Placement(transformation(extent={{-10,54},{10,74}}))); | ||
Modelica.Blocks.Sources.Constant uPum(k=1) "Pump control signal" | ||
annotation (Placement(transformation(extent={{-60,-14},{-40,6}}))); | ||
Modelica.Blocks.Sources.Constant uHea(k=1) "Heat load control signal" | ||
annotation (Placement(transformation(extent={{-60,60},{-40,80}}))); | ||
MultiWell aquWel( | ||
redeclare package Medium = IBPSA.Media.Water, | ||
nVol=80, | ||
h=20, | ||
r_max=500, | ||
TCoo_start=285.15, | ||
THot_start=285.15, | ||
aquDat=IBPSA.Fluid.Geothermal.Aquifer.Data.Rock(), | ||
m_flow_nominal=mWat_flow_nominal, | ||
dpAquifer_nominal=10, | ||
dpWell_nominal=10, | ||
dpExt_nominal=100) "Acquifer well" | ||
annotation (Placement(transformation(extent={{-10,-20},{10,0}}))); | ||
Sources.Boundary_pT bou( | ||
redeclare package Medium = IBPSA.Media.Water, | ||
nPorts=1) "Pressure boundary condition" annotation (Placement(transformation(extent={{-80,20},{-60,40}}))); | ||
equation | ||
connect(uHea.y, hea.u) | ||
annotation (Line(points={{-39,70},{-12,70}}, color={0,0,127})); | ||
connect(aquWel.port_Hot, hea.port_b) annotation (Line(points={{6,0},{6,30},{20, | ||
30},{20,64},{10,64}}, color={0,127,255})); | ||
connect(aquWel.port_Col, hea.port_a) annotation (Line(points={{-6,0},{-6,0},{-6, | ||
30},{-20,30},{-20,64},{-10,64}}, color={0,127,255})); | ||
connect(bou.ports[1], hea.port_a) annotation (Line(points={{-60,30},{-20,30}, | ||
{-20,64},{-10,64}}, color={0,127,255})); | ||
connect(uPum.y, aquWel.u) | ||
annotation (Line(points={{-39,-4},{-12,-4}}, color={0,0,127})); | ||
annotation (Icon(coordinateSystem(preserveAspectRatio=false)), Diagram( | ||
coordinateSystem(preserveAspectRatio=false)), | ||
experiment(StopTime=7776000,Tolerance=1e-6), | ||
__Dymola_Commands(file= | ||
"modelica://IBPSA/Resources/Scripts/Dymola/Fluid/Geothermal/Aquifer/Examples/CoolingOffice.mos" | ||
"Simulate and plot"), | ||
Documentation(info="<html> | ||
<p> | ||
This example shows the application of the model | ||
<a href=\"modelica://IBPSA.Fluid.Geothermal.Aquifer.SingleWell\">IBPSA.Fluid.Geothermal.Aquifer.SingleWell</a>. | ||
</p> | ||
<p> | ||
The system consists of two wells, a warm well and a cold well. Water is extracted from the cold well at 12C and | ||
after passing through a heat exchanger it is injected in the warm well at 16C. This may represent the operation of an | ||
aquifer thermal energy storage system that cools an office building with a constant load of 30 kW. | ||
</p> | ||
|
||
</html>", revisions="<html> | ||
<ul> | ||
<li> | ||
May 2023, by Alessandro Maccarini:<br/> | ||
First Implementation. | ||
</li> | ||
</ul> | ||
</html>")); | ||
end CoolingOffice; |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
within IBPSA.Fluid.Geothermal.Aquifer; | ||
package Examples "Example models for IBPSA.Fluid.Geothermal.Aquifer" | ||
extends Modelica.Icons.ExamplesPackage; | ||
|
||
annotation (preferredView="info", Documentation(info="<html> | ||
<p> | ||
This package contains example models for the classes in | ||
<a href=\"modelica://IBPSA.Fluid.Geothermal.Aquifer\"> | ||
IBPSA.Fluid.Geothermal.Aquifer</a>. | ||
</p> | ||
</html>")); | ||
end Examples; |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
CoolingOffice |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This data record should also include the porosity
phi
as it is a property of the soil, and not of the well model.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done