FT_CRANE
Calculates the Crane fully turbulent Darcy friction factor used in Crane-style fittings and loss-coefficient calculations as a function of pipe inner diameter. Unlike general pipe-friction formulas, this quantity is intended specifically for fittings work in the Crane methodology rather than for arbitrary straight-pipe pressure-drop prediction.
The implementation follows the fluids library’s reconstruction of the Crane data and trend, giving a diameter-dependent fully turbulent reference friction factor suitable for use with fitting loss coefficients.
Excel Usage
=FT_CRANE(D)
D(float, required): Pipe inner diameter (m)
Returns (float): Crane fully turbulent Darcy friction factor for fittings calculations [-]
Example 1: Typical commercial pipe 100mm diameter
Inputs:
| D |
|---|
| 0.1 |
Excel formula:
=FT_CRANE(0.1)
Expected output:
0.0162885
Example 2: Small pipe diameter 25mm
Inputs:
| D |
|---|
| 0.025 |
Excel formula:
=FT_CRANE(0.025)
Expected output:
0.0226175
Example 3: Large pipe diameter 500mm
Inputs:
| D |
|---|
| 0.5 |
Excel formula:
=FT_CRANE(0.5)
Expected output:
0.0117825
Example 4: Medium pipe diameter 200mm
Inputs:
| D |
|---|
| 0.2 |
Excel formula:
=FT_CRANE(0.2)
Expected output:
0.0140767
Python Code
Show Code
from fluids.friction import ft_Crane as fluids_ft_Crane
def ft_crane(D):
"""
Calculate the Crane fully turbulent Darcy friction factor for flow in commercial pipe.
See: https://fluids.readthedocs.io/fluids.friction.html#fluids.friction.ft_Crane
This example function is provided as-is without any representation of accuracy.
Args:
D (float): Pipe inner diameter (m)
Returns:
float: Crane fully turbulent Darcy friction factor for fittings calculations [-]
"""
try:
D = float(D)
if D <= 0:
return "Error: D must be positive."
result = fluids_ft_Crane(D)
if result != result:
return "Error: Result is NaN."
if result == float('inf') or result == float('-inf'):
return "Error: Result is not finite."
return float(result)
except Exception as e:
return f"Error: {str(e)}"