HELIX
Overview
Calculate the loss coefficient (K) for a helical coil pipe section.
Excel Usage
=HELIX(Di, rs, pitch, N, fd)
Di(float, required): Inside diameter of pipe [m]rs(float, required): Radius of spiral [m]pitch(float, required): Distance between two subsequent coil centers [m]N(int, required): Number of coils in the helix [-]fd(float, required): Darcy friction factor [-]
Returns (float): Loss coefficient K for the helix [-]
Examples
Example 1: Basic helix coil
Inputs:
| Di | rs | pitch | N | fd |
|---|---|---|---|---|
| 0.01 | 0.1 | 0.03 | 10 | 0.0185 |
Excel formula:
=HELIX(0.01, 0.1, 0.03, 10, 0.0185)
Expected output:
| Result |
|---|
| 14.5251 |
Example 2: Tight pitch helix
Inputs:
| Di | rs | pitch | N | fd |
|---|---|---|---|---|
| 0.02 | 0.15 | 0.025 | 5 | 0.02 |
Excel formula:
=HELIX(0.02, 0.15, 0.025, 5, 0.02)
Expected output:
| Result |
|---|
| 6.194 |
Example 3: Many coils helix
Inputs:
| Di | rs | pitch | N | fd |
|---|---|---|---|---|
| 0.01 | 0.1 | 0.03 | 20 | 0.0185 |
Excel formula:
=HELIX(0.01, 0.1, 0.03, 20, 0.0185)
Expected output:
| Result |
|---|
| 29.0503 |
Example 4: Large radius helix
Inputs:
| Di | rs | pitch | N | fd |
|---|---|---|---|---|
| 0.015 | 0.2 | 0.05 | 8 | 0.018 |
Excel formula:
=HELIX(0.015, 0.2, 0.05, 8, 0.018)
Expected output:
| Result |
|---|
| 14.3645 |
Python Code
import micropip
await micropip.install(["fluids"])
from fluids.fittings import helix as fluids_helix
def helix(Di, rs, pitch, N, fd):
"""
Calculate the loss coefficient (K) for a helical coil pipe section.
See: https://fluids.readthedocs.io/fluids.fittings.html#fluids.fittings.helix
This example function is provided as-is without any representation of accuracy.
Args:
Di (float): Inside diameter of pipe [m]
rs (float): Radius of spiral [m]
pitch (float): Distance between two subsequent coil centers [m]
N (int): Number of coils in the helix [-]
fd (float): Darcy friction factor [-]
Returns:
float: Loss coefficient K for the helix [-]
"""
try:
Di = float(Di)
rs = float(rs)
pitch = float(pitch)
N = int(N)
fd = float(fd)
except (ValueError, TypeError):
return "Error: All parameters must be numbers."
if Di <= 0:
return "Error: Di must be positive."
if rs <= 0:
return "Error: Rs must be positive."
if pitch <= 0:
return "Error: Pitch must be positive."
if N < 1:
return "Error: N must be at least 1."
if fd <= 0:
return "Error: Fd must be positive."
try:
result = fluids_helix(Di=Di, rs=rs, pitch=pitch, N=N, fd=fd)
return float(result)
except Exception as e:
return f"Error: {str(e)}"