How to Calculate Flow Rate from Velocity and Diameter
Understanding the relationship between fluid velocity, pipe diameter, and total flow rate is critical in engineering, plumbing, and irrigation. The flow rate (Q) represents the volume of fluid passing through a specific cross-section per unit of time.
The Fundamental Formula
The calculation is based on the Continuity Equation for incompressible fluids:
Q = A × v
Where:
Q is the Flow Rate.
A is the Cross-sectional Area of the pipe (π × r²).
v is the Velocity of the fluid.
Step-by-Step Calculation Guide
Determine the Radius: Divide the internal diameter of the pipe by 2. Ensure your units are consistent (e.g., convert inches to meters).
Calculate Area: Use the formula A = π × (Diameter/2)². For a 4-inch pipe, the area is approximately 0.0081 square meters.
Measure Velocity: Determine how fast the fluid is moving (usually in meters per second or feet per second).
Multiply: Multiply the Area by the Velocity to get the volume flow rate.
Practical Example
Imagine you have a pipe with a 50mm diameter and fluid traveling at 2.0 meters per second.
Diameter = 0.05 meters
Area = (π × 0.05²) / 4 = 0.001963 m²
Flow Rate = 0.001963 m² × 2.0 m/s = 0.003927 m³/s
Converted to m³/h = 0.003927 × 3600 ≈ 14.14 m³/h
Why Flow Rate Calculation Matters
Properly sizing pipes and pumps ensures efficiency and prevents system failure. If the velocity is too high, it can lead to pipe erosion and "water hammer" effects. If the velocity is too low, sediment may settle in the pipes, leading to blockages over time.
function calculateFlowRate() {
var diameter = parseFloat(document.getElementById('diameterInput').value);
var dUnit = document.getElementById('diameterUnit').value;
var velocity = parseFloat(document.getElementById('velocityInput').value);
var vUnit = document.getElementById('velocityUnit').value;
if (isNaN(diameter) || isNaN(velocity) || diameter <= 0 || velocity <= 0) {
alert("Please enter valid positive numbers for diameter and velocity.");
return;
}
// Convert diameter to meters
var dInMeters = 0;
if (dUnit === "mm") dInMeters = diameter / 1000;
else if (dUnit === "cm") dInMeters = diameter / 100;
else if (dUnit === "in") dInMeters = diameter * 0.0254;
else dInMeters = diameter;
// Convert velocity to m/s
var vInMs = 0;
if (vUnit === "ft_s") vInMs = velocity * 0.3048;
else vInMs = velocity;
// Calculate Area (A = pi * r^2)
var area = Math.PI * Math.pow((dInMeters / 2), 2);
// Calculate Flow Rate in m3/s
var qM3s = area * vInMs;
// Unit Conversions
var m3h = qM3s * 3600;
var lpm = qM3s * 60000;
var gpm = qM3s * 15850.323;
var cfs = qM3s * 35.3147;
// Display Results
document.getElementById('m3hResult').innerHTML = m3h.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 4}) + " m³/h";
document.getElementById('lpmResult').innerHTML = lpm.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}) + " L/min";
document.getElementById('gpmResult').innerHTML = gpm.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}) + " GPM";
document.getElementById('cfsResult').innerHTML = cfs.toLocaleString(undefined, {minimumFractionDigits: 4, maximumFractionDigits: 6}) + " ft³/s";
document.getElementById('resultDisplay').style.display = "block";
}