Buildings.Fluid.Geothermal.Aquifer.Examples

Example models for Buildings.Fluid.Geothermal.Aquifer

Information

This package contains example models for the classes in Buildings.Fluid.Geothermal.Aquifer.

Extends from Modelica.Icons.ExamplesPackage (Icon for packages containing runnable examples).

Package Content

Name Description
Buildings.Fluid.Geothermal.Aquifer.Examples.CoolingOffice CoolingOffice  

Buildings.Fluid.Geothermal.Aquifer.Examples.CoolingOffice Buildings.Fluid.Geothermal.Aquifer.Examples.CoolingOffice


Buildings.Fluid.Geothermal.Aquifer.Examples.CoolingOffice

Information

This example shows the application of the model Buildings.Fluid.Geothermal.Aquifer.MultiWell.

The system consists of two wells, a warm well and a cold well. Water is extracted from the cold well at 12°C and after passing through a heat exchanger it is injected in the warm well at 16°C. This may represent the operation of an aquifer thermal energy storage system that cools an office building with a constant load of 30 kW.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Parameters

TypeNameDefaultDescription
HeatFlowRateQCoo_flow_nominal30000Cooling power [W]
TemperatureDifferencedeltaT4Temperature difference at heat exchanger [K]
SpecificHeatCapacitycpWat4186Heat capacity of water [J/(kg.K)]
MassFlowRatemWat_flow_nominalQCoo_flow_nominal/(deltaT*cp...Nominal water mass flow rate [kg/s]

Modelica definition

model CoolingOffice extends Modelica.Icons.Example; package Medium = Buildings.Media.Water "Medium model"; 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 = Medium, m_flow_nominal=mWat_flow_nominal, dp_nominal=100, energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial, Q_flow_nominal=QCoo_flow_nominal) "Heat exchanger"; Modelica.Blocks.Sources.Constant uPum(k=1) "Pump control signal"; Modelica.Blocks.Sources.Constant uHea(k=1) "Heat load control signal"; MultiWell aquWel( redeclare package Medium = Medium, nVol=80, h=20, d=1000, length=40, TCol_start=285.15, THot_start=285.15, aquDat=Buildings.Fluid.Geothermal.Aquifer.Data.Rock(), m_flow_nominal=mWat_flow_nominal, dpExt_nominal=5000) "Acquifer well"; Sources.Boundary_pT bou( redeclare package Medium = Medium, nPorts=1) "Pressure boundary condition"; equation connect(uHea.y, hea.u); connect(aquWel.port_Hot, hea.port_b); connect(aquWel.port_Col, hea.port_a); connect(bou.ports[1], hea.port_a); connect(uPum.y, aquWel.u); end CoolingOffice;