ChemEng stuff followers

Monday, June 5, 2023

Solving the Colebrook equation

 Finding the friction factor $f_F$ can be big trouble for some students with poor numerical methods background while some other will try to go around by using the diagram of Moody. There is nothing wrong with the Moody diagram but you cannot automate any calculations with that. Besides, we are in the XXI century!

First, the friction factor $f_F$ in the Colebrook equation cannot be isolated because this is a trascendental equation. Since $f_F$ appears in the argument of the function and in other terms only numerical solutions are possible. There are several approximations to the Colebrook equation, like that due to Swamee-Jain (shown below),

$f_F=\dfrac{0.25}{\left[ \log_{10}\left( \dfrac{\epsilon}{3.7D} + \dfrac{5.74}{N_{Re}^{0.9}} \right) \right]^2}$        Eq. (1)

which give $f_F$ explicitly. However, these approximations are valid for a range of parameters only. It is not easy to take care of these restrictions all the time.


As the Colebrook equation has a more general scope and very practical tools are already available, its numerical solutions should not be painful anymore. This equation is,

$\dfrac{1}{\sqrt{f_F}}=-2\log_{10}\left( \dfrac{\epsilon}{3.72D}+\dfrac{2.51}{N_{Re}\sqrt{f_F}} \right)$        Eq. (2)

where $\epsilon$ is the pipe roughness, $D$ is the pipe inside diameter, and $N_{Re}$ is the Reynolds number.


Data for some common pipe roughness $\epsilon$

Pipe material Roughness $\epsilon$ (m) Roughness $\epsilon$ (ft)
Glass Smooth Smooth
Plastic $3.0 \times 10^{-7}$ $9.8 \times 10^{-7}$
Drawn tubing; copper, brass, steel $1.5 \times 10^{-6}$ $4.9 \times 10^{-6}$
Steel, commercial or welded $4.6 \times 10^{-5}$ $1.5 \times 10^{-4}$
Galvanized iron $1.5 \times 10^{-4}$ $5.0 \times 10^{-4}$
Ductile iron - coated $1.2 \times 10^{-4}$ $4.0 \times 10^{-}$
Ductile iron - uncoated $2.4 \times 10^{-4}$ $8.0 \times 10^{-4}$
Concrete, well made $1.2 \times 10^{-4}$ $4.0 \times 10^{-4}$
Riveted steel $1.8 \times 10^{-4}$ $6.0 \times 10^{-3}$


Numerical estimation of $f_F$

First, you will need to fixed all parameters $N_{Re}$, $\epsilon$, $D$ but $f_F$ (just in case). All parameters must be in the same unit system!

The friction factor $f_F$ can be iteratively approached by rewritting Eq. (2) as follows,

$f_F=\dfrac{0.25}{\log_{10}\left( \dfrac{\epsilon}{3.72D}+\dfrac{2.51}{N_{Re}\sqrt{f_F}} \right)^2}$        Eq. (3)

The iterative process is as follows. In iteration #1, substitute a guess for $f_F$ on the right hand side of Eq. (3) as shown,

$f_F^{New}=\dfrac{0.25}{\log_{10}\left( \dfrac{\epsilon}{3.72D}+\dfrac{2.51}{N_{Re}\sqrt{f_F^{Guess}}} \right)^2}$        Eq. (4)

and check for the error on satisfying this equation with,

$\left|\dfrac{f_F^{Guess}-f_F^{New}}{f_F^{Guess}}\right| \times 100$        Eq. (5)

For iteration #2, use $f_F^{New}$, from iteration #1, as the $f_F^{Guess}$. Check again for the % error, which should have decreased. Continue the iterations until a reasonable 0.1% error has been achieved.

Estimating $f_F$ with Google Sheets


As you may think, this iterative procedure is a perfect candidate for implementation in Google Sheets. Follow the link below to access a sheet automated to estimate the friction factor:


Any question? Write in the comments and I shall try to help.

=========
Ildebrando.

No comments:

Post a Comment

Most popular posts