Choosing the optimal multi-point iterative method for the Colebrook flow friction equation -- Numerical validation

The Colebrook equation $\zeta$ is implicitly given in respect to the unknown flow friction factor $\lambda$; $\lambda=\zeta(Re,\epsilon^*,\lambda)$ which cannot be expressed explicitly in exact way without simplifications and use of approximate calculus. Common approach to solve it is through the Newton-Raphson iterative procedure or through the fixed-point iterative procedure. Both requires in some case even eight iterations. On the other hand numerous more powerful iterative methods such as three-or two-point methods, etc. are available. The purpose is to choose optimal iterative method in order to solve the implicit Colebrook equation for flow friction accurately using the least possible number of iterations. The methods are thoroughly tested and those which require the least possible number of iterations to reach the accurate solution are identified. The most powerful three-point methods require in worst case only two iterations to reach final solution. The recommended representatives are Sharma-Guha-Gupta, Sharma-Sharma, Sharma-Arora, D\v{z}uni\'c-Petkovi\'c-Petkovi\'c; Bi-Ren-Wu, Chun-Neta based on Kung-Traub, Neta, and Jain method based on Steffensen scheme. The recommended iterative methods can reach the final accurate solution with the least possible number of iterations. The approach is hybrid between iterative procedure and one-step explicit approximations and can be used in engineering design for initial rough, but also for final fine calculations.


Introduction
The Colebrook function is to date the most used relation in engineering practice for evaluation of flow friction in pipes [1]. It is given in implicit form , Equation (1): (1) In Equation (1), is introduced because of linearization of the unknown flow friction factor , is the Reynolds number and is the relative roughness of inner pipe surface (all quantities are dimensionless). Because the Colebrook function in the examined iterative methods sometimes needs to be evaluated in two or three points, and is used in the same meaning as , where they are dimensionless parameters that depend on friction factor. Practical domain of applicability is for the Reynolds number, and for the relative roughness of inner pipe surface, .
The Colebrook equation is empirical [2] and hence its accuracy can be disputed (experiment of Nikuradse or recent experiments from Oregon or Princeton research groups [3]), but anyway it is widely accepted in engineering practice. It is based on experiment conducted by Colebrook and White with flow of air through set of pipes with different inner roughness [2]. Turbulent part of the Moody diagram [5,6] is based on the Colebrook equation. The exact solution to this equation does not exist with the exception of those through the Lambert -function [6][7][8], but anyway further the Lambert -function can be evaluated only approximately [9][10][11]. Many different explicit approximations of the Colebrook equation exist in the form , and they are with different degree of accuracy and complexity [12][13][14]. Many of approximations are based on internal iterative cycles [15][16][17] and therefore it is better to use more accurate iterative procedures if they require only few iterative steps. Calculation of flow through complex networks of pipes such as for water or gas distribution requires multiple evaluations of flow friction factor [18][19][20][21][22][23]. In general the less number of iterations required, the solution is more efficient with decreased burden for computers [24][25][26][27][28] (recent approach based on Padé polynomials shows how the computational burden can be minimized with the same number of used iterations [29]).
Details about preparation of data for analysis of the iterative methods are given in Section 2, while the methods are shown in Section 3 along with numerical examples. Discussion and analysis are given in Section 4 while concluding remarks and recommendations in Section 5.

Preparation of Data for Analysis
Calculation of complex networks of pipes for distribution of water or natural gas is computationally demanded task where flow friction needs to be evaluated even few million times which can cause significant burden for computers. Moreover, a fast but reliable approximation of pipeline hydraulic is needed also for probabilistic risk assessment of pipeline networks. A large number of network simulations of random component failures and their combinations must be automatically evaluated and statistically analyzed in this case [20,22]. These tasks can cause significant burden for computing which even powerful computer resources cannot easily deal with. In general logarithmic functions as well non-integer power terms are extremely demanded and therefore their use should be discouraged [24][25][26][27]. Both are used frequently in explicit approximations, but non-integer power terms very rarely in iterative procedures. So the main goal of this paper is to use optimal iterative solution for the Colebrook equation which leads to the accurate solution within the domain of applicability of the Colebrook equation after the least possible number of iterations. The Colebrook equation is based on logarithmic law and therefore it is hardly possible that the logarithmic function can be eliminated entirely from the iterative procedure [29].
To maintain compatibility in this analysis with the study of Brkić [13] that evaluates accuracy of explicit approximations of the Colebrook equation, all iterative methods are tested in 740 uniformly distributed points over the domain of applicability of the Colebrook equation. Examples from five points of 740 in total are shown (five triplets ), of which three are randomly selected and two are from the most problematic zones which needs slightly more number of iterations to reach the demanded level of accuracy: 1) , ; 2) , ; 3) , ; 4) , ; and 5) , . The corresponding final solutions are: 1) ; 2) ; 3) ; 4) ; and 5) . Examples 2 and 5 are those from the more problematic zones of the domain which in general require more iterative steps to reach the desired accuracy.
Initial starting point for the all examined iterative procedures is set to; . This value is chosen after numerous tests over the domain and it is from the problematic zone which needs in general more iterative cycles to reach the final solution. The fixed initial starting point for the testing is more suitable option because the iterative procedures in that way can be compared in a better way. Although the starting point for the iterative procedure can be chosen using different formulas [29], numerous tests showed that any fixed value within the domain of applicability of the Colebrook equation leads to the final accurate solution without significant variation of the required number of iterations. From the examined literature, cases when the iterative procedure diverges, oscillates or converges outside the domain of applicability of the Colebrook equation are not reported.
For the purpose of all examined iterative methods, the Colebrook equation should be in the appropriate form as in Equation (2); for point ; , where is the functional symbol for the Colebrook equation. Sometimes it need to be evaluated in additional points and . The first and the second derivatives are also needed for some method but in most cases only in point . Additional symbols specific for the certain method is explained in Section 3. (2) In Equation (2), In Section 3, the presented iterative methods are listed in general from the simplest to the more complex [63]; 3.1 One log-call per iteration: 3.1.1) Fixed-point [30,31] [61]; and 3.3.10) Sharma-Guha-Gupta method [62].
Complexity of methods cannot be evaluated only based on the number of log-calls per iteration, because many of them require evaluation of derivatives in one or more points. For example, the first derivative in point is required for 2) Newton-Raphson, but not for 1) fixed-point method. On the other hand, both methods need the same number of iterations to reach the same level of accuracy. Also, in certain cases, computationally costly log-call in all subsequent iterations can be substituted with inexpensive for computation Padé polynomials [64] as described in Praks and Brkić [29], but also in that way the number of required iterations to reach the final desired accuracy remain unchanged. Therefore, for evaluation of the efficiency of each of the presented iterative methods number of iterations are counted in each of the tested 740 points within the domain of applicability and the highest value is chosen as the worst possible (five carefully selected numerical examples are chosen among 740 to illustrate the calculation).

Iterative Methods and Numerical Examples
Iterative methods with one log-call per iteration are presented in Section 3.1, with two log-calls in Section 3.2 and with three-log calls in Section 3.3. With possible exceptions, they are sorted with increased complexity. As already explained, numerical examples are given for all presented methods.
In the following formulas indexes i and i+1 refer to the two subsequent iterations. In the following tests, the iterative procedures stop when the accuracy in respect to nine decimal places is reached or when sign #div0! appears in the meaning division with zero (desired accuracy reached). Final balanced solutions are marked with shading pattern. In framed cell are the final balanced solution that requires the highest number of iterations for the observed method (the worst case).

3.1.5) Murakami [46]; Equation
In addition to the point x, Murakami method requires additional evaluation of the function in points and but only for the first derivative which does not contain logarithmic function.

3.3.5) Jain [51] based on Steffensen method
Jain method is three-point method with evaluation of the function in points , , but also in point . Serghides explicit approximation of the Colebrook equation is based on Steffensen method [16,65].

3.3.8) Sharma-Arora
Two-parameter function is introduced as defined.
Most one-point methods that require one log-call per iteration need seven iterations to reach final solution. Among them as the most simplest, 3.1.1) Fixed-point [30,31]; Equation (3) can be recommended. Following procedure from Praks and Brkić [29], only one log-call is required in respect to the whole procedure and in particular only in the first iteration, where in all subsequent iterations instead of log-call as substitution can be used computationally inexpensive Padé polynomials.
Choosing the different starting point compared with the here selected for the shown numerical validation does not alter the number of required iterations significantly [29,66].

Conclusions
The Colebrook equation for flow friction in its domain of applicability is fast converging. The fixed-point iterative methods are in common use but they demand up to seven iterations to reach the final satisfied and balanced accuracy [30,31]. On the other hand, numerous explicit approximations with different degree of accuracy are available [12][13][14]. Similar as here presented two-point and three-point iterative procedures, the very accurate approximations of the Colebrook equation also contain few internal iterative steps [15][16][17]. Here tested and proposed three-point iterative methods are very accurate, and therefore they can be used in a hybrid way: (1) as very accurate explicit approximations if the calculation is terminated after the first iteration, or (2) for very fine and punctual computing where the very high accuracy can be easily reached after the one or two more additional iterations. This is of great significance in computing of flow through miscellaneous pipe-networks of various applications (water, natural gas, air, etc.) where multiple evaluation of friction factor takes place and when certain cases requires only rough estimation, while another very accurate scientific computing that need to be compared, repeated or analyzed in details [67][68][69].