PDF

Geothermal Heating from a Pond Loop
Introduction
Ponds and lakes can serve as thermal reservoirs in geothermal heating applications. In this example, fluid circulates underwater through polyethylene piping in a closed system. The pipes are coiled in a slinky shape and mounted onto sleds. The Nonisothermal Pipe Flow interface sets up and solves the equations for the temperature and fluid flow in the pipe system, where the geometry is represented by lines in 3D.
Figure 1: A sled carrying pipe coils shown before the system is submerged.
Model Definition
Geometry
High density polyethylene pipe (20 mm diameter) is rolled into sixteen coils. Groups of eight coils are mounted on two sleds. Each coil has a radius of 1 m and a length of approximately 75 m. The coil groups are connected to feed and return piping with a diameter of 50 mm (see Figure 2). The coil groups are 2.4 m in height an sit at the bottom of a pond that is 6 m deep. The total length of the piping is 1446 m.
Figure 2: Polyethylene pipe system. Elevation above the pond bottom is indicated. Feed and return piping (gray) is 50 mm in diameter while coils (black) are 20 mm in diameter. The pipes are insulated above the pond surface.
The heat exchange between pond water and pipe fluid depends on the temperature difference between the two. A slow current in the pond makes the heat transfer more effective than water at rest. The pond is warmer closer to the surface, as shown by the temperature data in Table 1 below.
It is easy to set up a function in the software with linear interpolation between points so that the varying pond temperature can be taken into account in the simulation.
Flow Equations
The continuity and momentum equations below describe the stationary flow inside the pipe system:
(1)
Above, A (SI unit: m2) is the cross section area of the pipe, ρ (SI unit: kg/m3) is the density, u (SI unit: m/s) is the fluid velocity, and p (SI unit: N/m2) is the pressure and F (SI unit: N/m3) is a volume force, like gravity.
Gravity can be included explicitly in the model, but since the variation in density is negligible, and the model is not pressure driven, the only effect of including gravity is a change in the total pressure level. It is therefore common modeling practice to exclude gravity by setting F=0 and interpret the pressure variable as the reduced pressure , where z0 is the datum level of the free liquid surface. This reduces the model complexity and yields the same results.
Expressions for the Darcy Friction Factor
The right-hand side of Equation 1 describes the pressure drop due to internal viscous shear. The term contains the Darcy friction factor, fD, which is a function of the Reynolds number and the surface roughness divided by the hydraulic pipe diameter, e/dh. The Nonisothermal Pipe Flow interface provides a library of built-in expressions for the Darcy friction factor, fD.
Figure 3: Select from different predefined Friction models in the Pipe Properties node.
This example uses the Churchill relation (Ref. 1) that is valid for laminar flow, turbulent flow, and the transitional region in between. The Churchill relation is:
(2)
where
As seen from the equations above, the friction factor is a function of the surface roughness divided by diameter of the pipe. Surface roughness data can be selected from a predefined list in the Pipe Properties feature.
The Churchill equation is also a function of the fluid properties, through the Reynolds number:
The physical properties of water as function of temperature are directly available from the software’s built-in material library. Inspection of Equation 2 reveals that for low Reynold’s number (at laminar flow), the friction factor is 64/Re, and for very high Reynolds number, the friction factor is independent of Re.
Heat Transfer Equations
The energy equation for the pipeline flow is:
(3)
where Cp (SI unit: J/(kg·K)) is the heat capacity at constant pressure, T is the temperature (SI unit: K), and k (SI unit: W/(m·K)) is the thermal conductivity. The second term on the right-hand side of Equation 3 corresponds to friction heat dissipated due viscous shear. Qwall (SI unit: W/m) is a source/sink term due to heat exchange with the surroundings through the pipe wall:
(4)
Where Z (m) is the wetted perimeter of the pipe, h (W/(m2·K)) an overall heat transfer coefficient and Text (K) the external temperature outside of the pipe.
The overall heat transfer coefficient includes contribution from internal film resistance, wall resistance, and external film resistance.
Figure 4: Temperature distribution across the pipe wall.
For a circular pipe, under assumption that the heat transfer through the wall is quasi static and that the temperature is equal around the circumference of the pipe, an effective hZ in Equation 4 is given by
.where  rn is the outer radius of wall n, hint and hext are the film heat transfer coefficients on the inside and outside of the tube, and kn is the thermal conductivity of wall n.
The film resistance inside the pipe is given by:
The internal Nusselt number is taken as 3.66 for the laminar flow regime (Ref. 2), and for the turbulent flow regime the Gnielinski correlation for internal pipe flow is used (Ref. 3):
The external film resistance around the pipe is:
A slow current is present in the pond. For external forced convection around a pipe, COMSOL uses the Churchill and Bernstein (Ref. 4) relation for Nu, valid for all Re and for Pr > 0.2,:
where Pr = Cpμ/k.
Properties of the pipe wall is given in the table below.
dwall
kwall
Results and Discussion
Figure 5 shows the pressure (Pa) in the 1446 m pipe system assuming that water enters the system at a rate of 4 l/s.
Figure 5: Pressure drop over the pipe system.
The plot below shows the temperature (K) distribution for the pipe fluid. It enters the pipe system at 5 °C and exits with a temperature of approximately 11 °C.
Figure 6: Temperature of the pipe fluid.
Turbulent flow conditions in the loop are important for good heat exchange between the pipes and the surroundings. A plot of the Reynolds number is shown in Figure 7, confirming that flow is turbulent (Re > 3000) throughout the system.
Figure 7: The Reynolds number in the pipe loop confirms that the flow conditions are turbulent.
Note: This model is also available in an extended version in the Introduction to Pipe Flow Module booklet.
References
1. S.W. Churchill, “Friction factor equation spans all fluid-flow regimes,” Chem. Eng., vol. 84, no. 24, p. 91, 1997.
2. F.P. Incropera and D.P. DeWitt, Fundamentals of Heat and Mass Transfer, 4th ed., John Wiley & Sons, 1996. Eq 8.62 and Eq 9.34, respectively.
3. V. Gnielinski,New Equation for Heat and Mass Transfer in Turbulent Pipe and Channel Flow,” Int. Chem. Eng., vol. 16, pp. 359–368, 1976.
4. S.W. Churchill and M. Bernstein, “A Correlating Equation for Forced Convection from Gases and Liquids to a Circular Cylinder in Crossflow,” J Heat Transfer, vol. 99, p. 300, 1977.
Application Library path: Pipe_Flow_Module/Heat_Transfer/geothermal_heating
Modeling Instructions
From the File menu, choose New.
New
In the New window, click  Model Wizard.
Model Wizard
1
In the Model Wizard window, click  3D.
2
In the Select Physics tree, select Fluid Flow>Nonisothermal Flow>Nonisothermal Pipe Flow (nipfl).
3
Click Add.
4
Click  Study.
5
In the Select Study tree, select General Studies>Stationary.
6
Geometry 1
Start by creating the piping system geometry. You can simplify this by inserting a prepared geometry sequence from file:
1
In the Geometry toolbar, click  Insert Sequence.
2
3
In the Geometry toolbar, click  Build All.
The complete instructions for creating this geometry can be found in the appendix at the end of this document.
Definitions
Now add some external data in the form of interpolation tables and variables.
Interpolation 1 (int1)
1
In the Home toolbar, click  Functions and choose Local>Interpolation.
2
In the Settings window for Interpolation, locate the Definition section.
3
4
Locate the Units section. In the Arguments text field, type m.
5
In the Function text field, type K.
Variables 1
1
In the Home toolbar, click  Variables and choose Local Variables.
2
In the Settings window for Variables, locate the Variables section.
3
Click  Load from File.
4
Add Material
1
In the Home toolbar, click  Add Material to open the Add Material window.
2
Go to the Add Material window.
3
In the tree, select Built-in>Water, liquid.
4
Click Add to Component in the window toolbar.
5
In the Home toolbar, click  Add Material to close the Add Material window.
Nonisothermal Pipe Flow (nipfl)
Pipe Properties 1
1
In the Model Builder window, under Component 1 (comp1)>Nonisothermal Pipe Flow (nipfl) click Pipe Properties 1.
2
In the Settings window for Pipe Properties, locate the Pipe Shape section.
3
4
In the di text field, type 20[mm].
Temperature 1
1
In the Model Builder window, click Temperature 1.
2
In the Settings window for Temperature, locate the Temperature section.
3
In the Tin text field, type 5[degC].
Pipe Properties 2
1
In the Physics toolbar, click  Edges and choose Pipe Properties.
2
To make the selection easily, first click Go to XZ View and then click Select Box. In the Graphics window, draw a box around the pipes to select them. Click the Go to Default View button. Alternatively, copy the entity numbers from the text, click in the selection box, and then press Ctrl+V.
3
In the Settings window for Pipe Properties, locate the Pipe Shape section.
4
5
In the di text field, type 50[mm].
6
Click the  Zoom to Selection button in the Graphics toolbar.
Wall Heat Transfer 1
1
In the Physics toolbar, click  Edges and choose Wall Heat Transfer.
2
Use the same rubber band technique as in the previous selection step.
3
In the Model Builder window, click Wall Heat Transfer 1.
4
In the Settings window for Wall Heat Transfer, locate the Heat Transfer Model section.
5
In the Text text field, type T_pond.
Internal Film Resistance 1
In the Physics toolbar, click  Attributes and choose Internal Film Resistance.
Wall Heat Transfer 1
In the Model Builder window, click Wall Heat Transfer 1.
Wall Layer 1
1
In the Physics toolbar, click  Attributes and choose Wall Layer.
2
In the Settings window for Wall Layer, locate the Specification section.
3
From the k list, choose User defined.
4
5
From the Δw list, choose User defined.
6
Wall Heat Transfer 1
In the Model Builder window, click Wall Heat Transfer 1.
External Film Resistance 1
1
In the Physics toolbar, click  Attributes and choose External Film Resistance.
The external slow flow of 0.2 m/s is the mild current in the pond. This is enough to consider it forced convection outside the tubes.
2
In the Settings window for External Film Resistance, locate the Specification section.
3
From the Surrounding fluid list, choose Water, liquid (mat1).
4
In the uext text field, type 0.2[m/s].
Inlet 1
1
In the Physics toolbar, click  Points and choose Inlet.
2
3
In the Settings window for Inlet, locate the Inlet Specification section.
4
From the Specification list, choose Volumetric flow rate.
5
In the qv,0 text field, type 4[l/s].
Heat Outflow 1
1
In the Physics toolbar, click  Points and choose Heat Outflow.
2
Mesh 1
1
In the Model Builder window, under Component 1 (comp1) click Mesh 1.
2
In the Settings window for Mesh, locate the Physics-Controlled Mesh section.
3
From the Element size list, choose Extremely fine.
4
Click  Build All.
5
Click the  Go to Default View button in the Graphics toolbar.
Study 1
In the Home toolbar, click  Compute.
Results
Pressure (nipfl)
Default plot groups show the pressure (Figure 5), velocity, and temperature (Figure 6) in the pipe system. To get a better view, do as follows:
1
Click the  Zoom Box button in the Graphics toolbar. Draw a box in the Graphics window to zoom in on the coils.
Definitions
View 1
1
In the Model Builder window, under Component 1 (comp1)>Definitions click View 1.
2
In the Settings window for View, locate the View section.
3
Clear the Show grid check box.
Results
Temperature (nipfl)
The following instructions reproduce the plot on Figure 6.
Line 1
1
In the Model Builder window, expand the Temperature (nipfl) node, then click Line 1.
2
In the Settings window for Line, locate the Expression section.
3
From the Unit list, choose degC.
4
In the Temperature (nipfl) toolbar, click  Plot.
Reproduce the Reynolds’ number plot in Figure 7 with the following steps.
Reynolds’ number
1
In the Home toolbar, click  Add Plot Group and choose 3D Plot Group.
2
In the Settings window for 3D Plot Group, type Reynolds' number in the Label text field.
Line 1
1
Right-click Reynolds’ number and choose Line.
2
In the Settings window for Line, click Replace Expression in the upper-right corner of the Expression section. From the menu, choose Component 1 (comp1)>Nonisothermal Pipe Flow>nipfl.Re - Reynolds number.
3
Locate the Coloring and Style section. From the Line type list, choose Tube.
4
In the Reynolds’ number toolbar, click  Plot.
Creating the Geometry
The previously inserted geometry can be created from scratch like this:
Add Component
In the Home toolbar, click  Add Component and choose 3D.
Geometry 1
Parametric Curve 1 (pc1)
1
In the Geometry toolbar, click  More Primitives and choose Parametric Curve.
2
In the Settings window for Parametric Curve, locate the Parameter section.
3
In the Maximum text field, type 24.
4
Locate the Expressions section. In the x text field, type cos(pi*s).
5
In the y text field, type sin(pi*s).
6
In the z text field, type 0.1*s.
7
Click  Build Selected.
Polygon 1 (pol1)
1
In the Geometry toolbar, click  More Primitives and choose Polygon.
2
In the Settings window for Polygon, locate the Coordinates section.
3
4
Click  Build Selected.
Polygon 2 (pol2)
1
In the Geometry toolbar, click  More Primitives and choose Polygon.
2
In the Settings window for Polygon, locate the Coordinates section.
3
4
Click  Build Selected.
Mirror 1 (mir1)
1
In the Geometry toolbar, click  Transforms and choose Mirror.
2
Click in the Graphics window and then press Ctrl+A to select all objects.
3
In the Settings window for Mirror, locate the Point on Plane of Reflection section.
4
In the y text field, type 1.5.
5
Locate the Normal Vector to Plane of Reflection section. In the y text field, type 1.
6
In the z text field, type 0.
7
Locate the Input section. Select the Keep input objects check box.
8
Click  Build Selected.
Array 1 (arr1)
1
In the Geometry toolbar, click  Transforms and choose Array.
2
Click in the Graphics window and then press Ctrl+A to select all objects.
3
In the Settings window for Array, locate the Size section.
4
In the x size text field, type 4.
5
Locate the Displacement section. In the x text field, type -3.
6
Click  Build Selected.
Polygon 3 (pol3)
1
In the Geometry toolbar, click  More Primitives and choose Polygon.
2
In the Settings window for Polygon, locate the Coordinates section.
3
4
Click  Build Selected.
Polygon 4 (pol4)
1
In the Geometry toolbar, click  More Primitives and choose Polygon.
2
In the Settings window for Polygon, locate the Coordinates section.
3
4
Click  Build Selected.
Array 2 (arr2)
1
In the Geometry toolbar, click  Transforms and choose Array.
2
Click in the Graphics window and then press Ctrl+A to select all objects.
3
In the Settings window for Array, locate the Size section.
4
In the y size text field, type 2.
5
Locate the Displacement section. In the y text field, type 10.
6
Click  Build Selected.
Polygon 5 (pol5)
1
In the Geometry toolbar, click  More Primitives and choose Polygon.
2
In the Settings window for Polygon, locate the Coordinates section.
3
4
Click  Build Selected.
Polygon 6 (pol6)
1
In the Geometry toolbar, click  More Primitives and choose Polygon.
2
In the Settings window for Polygon, locate the Coordinates section.
3
4
Click  Build Selected.
5
Click the  Zoom Extents button in the Graphics toolbar.
Rotate 1 (rot1)
1
In the Geometry toolbar, click  Transforms and choose Rotate.
2
Click the  Go to XY View button in the Graphics toolbar.
3
In the Settings window for Rotate, locate the Rotation section.
4
In the Angle text field, type 30.
5
Locate the Point on Axis of Rotation section. In the x text field, type -15.
6
In the y text field, type 11.5.
7
Click  Build Selected.
8
Click the  Go to Default View button in the Graphics toolbar.