Quantcast
Channel: PTC Community : Discussion List - PTC Mathcad
Viewing all articles
Browse latest Browse all 2936

Is there a more efficient way to solve the Colebrook-White Equation?

$
0
0

Please see the attached MC Prime 3.0 worksheet (I also included a PDF copy for users of other versions of MC).

 

Introduction (for those who don't know the Colebrook White Equation)


The empirical Colebrook-White Equation (CW) is the standard way to estimate friction factors for use with the Darcy Equation for determining energy (head) loss in fluid flow.  CW has three variables:  the relative roughness (k), the Reynolds Number (NR), and the friction factor (f).  The relative roughness describes the pipe condition, the Reynolds Number describes the fluid condition, and the friction factor is based on these two.  CW is normally solved for f based on input values of k and NR.  CW is implicit for f and requires an iterative solution.

 

Instead of interating CW, it is possible to use the Moody Diagram to find f.  The Moody Diagram has NR as the independent varaible and f as the dependent variable.  A family of curves, each based on a constant value of k is plotted in the turbulent flow region.  Knowing k reduces the problem to just two variables, NR and f.

 

The Problem

 

I am working on plotting my own Moody Diagram in Mathcad.  I have done this in Excel and CurveExpert Pro, but now I want to do it Mathcad.  Also, I am comparing various explicit approximations to CW for accuracy (I have already completed the smooth pipe analysis for k=0).  For both tasks, I need an efficient way to solve CW over the ranges of k and NR.  For example, I have a data set consisting of 21 values for k and 45 values for NR, which gives me 945 data points for f in 21 cuves (in the attached worksheet, I reduced the data set for NR to 23).

 

As you can see in the attached worksheet, I was able to solve CW.  However, I am looking for a more efficient and more elegant method.  I tried various combinations of subscripts, vectorize operations, etc. both inside and outside the solve block, but this is the best I was able to do.  Any suggestions would be greatly appreciated.


Viewing all articles
Browse latest Browse all 2936

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>