Calculate required internal pipe diameter based on flow rate and velocity
Cubic Meters / Hour (m³/h)
Liters / Minute (L/min)
US Gallons / Minute (GPM)
Cubic Meters / Second (m³/s)
Typical: 1.0 – 2.5 m/s for liquids
Meters / Second (m/s)
Feet / Second (ft/s)
Calculated Results:
Inner Diameter (mm)
—
Inner Diameter (Inches)
—
Cross-Sectional Area
—
Guide to Pipe Diameter Calculation
Determining the correct pipe diameter is crucial in hydraulic engineering to balance system costs with energy efficiency. If a pipe is too small, friction losses and noise increase significantly; if it's too large, the material and installation costs become unnecessarily high.
The Fundamental Formula
The relationship between flow rate, velocity, and pipe area is governed by the Continuity Equation:
Q = A × v
Where:
Q: Volumetric Flow Rate
A: Cross-sectional Area (π × D² / 4)
v: Flow Velocity
Step-by-Step Calculation Logic
To find the diameter (D) from a known flow rate (Q) and a target velocity (v), we use the following derived formula:
D = √((4 × Q) / (π × v))
Common Recommended Velocities
Fluid Type
Recommended Velocity (m/s)
Water (Suction)
0.5 – 1.5 m/s
Water (Delivery)
1.5 – 2.5 m/s
Compressed Air
5.0 – 10.0 m/s
Steam (Low Pressure)
20.0 – 30.0 m/s
Practical Example
Suppose you have a water pump delivering 20 m³/h and you want to maintain a velocity of 2.0 m/s.
Convert flow rate to SI units: 20 / 3600 = 0.00556 m³/s.
Calculate Area: A = 0.00556 / 2.0 = 0.00278 m².
Calculate Diameter: D = √((4 × 0.00278) / 3.14159) = 0.0595 m.
Final Result: 59.5 mm (approx. 2.34 inches).
In this case, you would typically select the nearest standard pipe size, such as a 65mm (2.5 inch) nominal diameter pipe.
function calculatePipeDiameter() {
var flowRate = parseFloat(document.getElementById('flowRate').value);
var flowUnit = document.getElementById('flowUnit').value;
var velocity = parseFloat(document.getElementById('velocity').value);
var velocityUnit = document.getElementById('velocityUnit').value;
if (isNaN(flowRate) || isNaN(velocity) || flowRate <= 0 || velocity <= 0) {
alert("Please enter valid positive numbers for flow rate and velocity.");
return;
}
// Convert Flow Rate to m3/s
var q_m3s = 0;
if (flowUnit === "m3h") {
q_m3s = flowRate / 3600;
} else if (flowUnit === "lmin") {
q_m3s = flowRate / 60000;
} else if (flowUnit === "gpm") {
q_m3s = flowRate * 0.00006309;
} else if (flowUnit === "m3s") {
q_m3s = flowRate;
}
// Convert Velocity to m/s
var v_ms = 0;
if (velocityUnit === "ms") {
v_ms = velocity;
} else if (velocityUnit === "fts") {
v_ms = velocity * 0.3048;
}
// Calculate Area (A = Q / v)
var area = q_m3s / v_ms;
// Calculate Diameter (D = sqrt(4A / PI))
var diameterMeters = Math.sqrt((4 * area) / Math.PI);
// Convert to mm and inches
var diameterMM = diameterMeters * 1000;
var diameterInches = diameterMM / 25.4;
// Display Results
document.getElementById('pipeResult').style.display = "block";
document.getElementById('diameterMM').innerText = diameterMM.toFixed(2) + " mm";
document.getElementById('diameterInch').innerText = diameterInches.toFixed(2) + '"';
document.getElementById('pipeArea').innerText = (area * 10000).toFixed(4) + " cm² (" + area.toFixed(6) + " m²)";
}