Water Flow in a Pipe with Strainer

A subforum specific to the development of the OpenFoam-based workbenches ( Cfd https://github.com/qingfengxia/Cfd and CfdOF https://github.com/jaheyns/CfdOF )

Moderator: oliveroxtoby

Post Reply
poontitming
Posts: 14
Joined: Wed Nov 28, 2018 3:57 pm
Location: Hong Kong / Minneapolis

Water Flow in a Pipe with Strainer

Post by poontitming »

Hi Everyone,

Thank you very much for building the CFD workbench, it's going to be very useful in many areas. I just begin to use it. I am trying to simulate water flow in a pipe (19mm in diameter) through a strainer (holes at 2.5mm diameter) at the middle like this one. The problem is that I tried different settings, flow rate obtained in Paraview is very large (5m/s) seems not correct or I interpreted the units incorrectly. Pressure residual never drops below 0.1 in all the simulations.

The FreeCAD file is attached. I hope anyone can point out what's wrong on it?

OS: Windows 8.1
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.13541 (Git)
Build type: Release
Branch: releases/FreeCAD-0-17
Hash: 9948ee4f1570df9216862a79705afb367b2c6ffb
Python version: 2.7.14
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 7.2.0

Thank You Very Much,
Eric
Attachments
Test v1.0 CFD.FCStd
(87.2 KiB) Downloaded 89 times
thschrader
Veteran
Posts: 3129
Joined: Sat May 20, 2017 12:06 pm
Location: Germany

Re: Water Flow in a Pipe with Strainer

Post by thschrader »

Hi,
welcome to the FreeCAD-forum.
I ran your model with some other mesh-refinement (box-refinement-volume instead of surface)
and a reduced pressure at the inlet. The p-residual still remains above 0,1. In my
opinion the sharp edges at the strainer-holes induces turbulence, the solver cant find a stable solution.
But I am not very familiar with pipe-flows. I will do some additional calculations at the weekend.
BTW1: the pressure of 290 Pa in p-dict is a normalized pressure =p/rho-water. The "real" pressure is
1000 times higher, at 290000 Pa, approx 3 bar. Is that what you mean?
BTW2: the diameter of the pipe is 38 mm, not 19 (?)
Keep on foaming...
Thomas
poontitming
Posts: 14
Joined: Wed Nov 28, 2018 3:57 pm
Location: Hong Kong / Minneapolis

Re: Water Flow in a Pipe with Strainer

Post by poontitming »

Thank You Thomas,

I didn't aware that the pressure is normalized. I specified 290 Pa at the inlet as either static or total pressure thinking that it's something like 3cm depth of water. I think I don't understand CFD and the settings very well. How can I simulate 3cm depth of water at the inlet? Should I divide the actual pressure by 1000 as the inlet pressure?

It's my mistake, the diamter of the pipe is 38 mm (1.5 inch), 19 mm is the radius.

Eric
poontitming
Posts: 14
Joined: Wed Nov 28, 2018 3:57 pm
Location: Hong Kong / Minneapolis

Re: Water Flow in a Pipe with Strainer

Post by poontitming »

Hi,

Thank you Thomas, I found this in a cfd forum. I should read OpenFOAM documents in more detail.

"OpenFOAM uses the rho-normalized pressure p*=p/rho
[p*] = {kg/(m.s**2)} /(kg/m**3) = m**2/s**2 = [0 2 -2 0 0 0 0]
in your BC you just have to divide your real pressure with your density"

I run the simulation again with inlet pressure set to 290 Pa / 1000 kg/m3 and obtained the following result. Although I still not able to get pressure residual down below 0.1. The simulation results are very close to that calculated from formulas.

I will try to fillet the strainer openings' edges and run the simulation again with different settings to see if the residual can drop.

One thing I want to ask, why the model display below in ParaView has some stranger walls inside the pipe? It should only be a simple cylinder with 25 holes at the middle of the pipe.

Simulation Result

Inlet Flow Velocity: 0.17 m/s
Peak Flow Velocity at Strainer Opening: 0.83 m/s
Outlet Opening Velocity: 0.53 m/s
Volume Flow Rate: 0.00019 m3 / s

Calculated from formulas

Outlet velocity when draining a tank or container: v = Cv * (2 g H )^0.5
v = outlet velocity (m/s)
Cv = velocity coefficient (water 0.97)
g = acceleration of gravity (9.81 m/s2)
H = height (m)

v = 0.97 * (2 * 9.81 * 0.03)^0.5 = 0.74 m/s
which is very close to the velocity simulation result at the strainer opening.

Liquid volume flow rate when draining a tank or container: V = N * Cd * A * (2 g H)^0.5
V = volume flow (m3/s)
N = number of apertures
A = area of aperture - flow outlet (m2)
Cd = discharge coefficient = Cc * Cv
Cc = contraction coefficient (sharp edge aperture 0.62, well rounded aperture 0.97)

V = 25 * 0.62 * 0.97 * 0.00001256 * (2 * 9.81 * 0.03)^0.5 = 0.00014 m3 / s
which is very close to the volume flow rate obtained in ParaView from the simulation result.

Note: Correction, the strainner hole diameter is 4 mm each, not 2.5 mm as mentioned in the first post.

Image
Attachments
Pipe Flow with Strainer.PNG
Pipe Flow with Strainer.PNG (285.35 KiB) Viewed 1993 times
thschrader
Veteran
Posts: 3129
Joined: Sat May 20, 2017 12:06 pm
Location: Germany

Re: Water Flow in a Pipe with Strainer

Post by thschrader »

poontitming wrote: Fri Nov 30, 2018 3:14 am One thing I want to ask, why the model display below in ParaView has some stranger walls inside the pipe? It should only be a simple cylinder with 25 holes at the middle of the pipe.
Sometimes paraview shows the computing domains after running a multi-cpu simulation.
You can export the body as stl-file from FC and load it in paraview as background
(when loading in paraview, the stl is scaled up by a factor of 1000, use "Filter/Transform"
for downscaling).
I ran on 2 cpu and get a good view.
U.JPG
U.JPG (65.22 KiB) Viewed 1957 times
MichaelD
Posts: 4
Joined: Tue Sep 04, 2018 5:40 pm

Re: Water Flow in a Pipe with Strainer

Post by MichaelD »

thschrader wrote: Fri Nov 30, 2018 1:14 pm
poontitming wrote: Fri Nov 30, 2018 3:14 am One thing I want to ask, why the model display below in ParaView has some stranger walls inside the pipe? It should only be a simple cylinder with 25 holes at the middle of the pipe.
Sometimes paraview shows the computing domains after running a multi-cpu simulation.
You can export the body as stl-file from FC and load it in paraview as background
(when loading in paraview, the stl is scaled up by a factor of 1000, use "Filter/Transform"
for downscaling).
I find the "Merge Blocks" filter usually works for combining the processor domains, but it leaves a few lines when I try it with this example.
Post Reply