Weir Flow Rate Calculator

Weir Flow Rate Calculator .wfr-calculator-container { max-width: 800px; margin: 0 auto; padding: 20px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; background-color: #f9fbfd; border: 1px solid #e1e4e8; border-radius: 8px; box-shadow: 0 4px 12px rgba(0,0,0,0.05); } .wfr-header { text-align: center; margin-bottom: 25px; color: #2c3e50; } .wfr-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; } @media (max-width: 600px) { .wfr-grid { grid-template-columns: 1fr; } } .wfr-input-group { margin-bottom: 15px; } .wfr-input-group label { display: block; margin-bottom: 8px; font-weight: 600; color: #4a5568; font-size: 0.95em; } .wfr-input-group select, .wfr-input-group input { width: 100%; padding: 10px; border: 1px solid #cbd5e0; border-radius: 4px; font-size: 1em; box-sizing: border-box; transition: border-color 0.2s; } .wfr-input-group input:focus, .wfr-input-group select:focus { border-color: #3182ce; outline: none; box-shadow: 0 0 0 3px rgba(49, 130, 206, 0.1); } .wfr-unit-toggle { display: flex; gap: 15px; margin-bottom: 20px; justify-content: center; } .wfr-radio-label { display: flex; align-items: center; cursor: pointer; font-weight: 500; } .wfr-radio-label input { margin-right: 8px; } .wfr-btn { width: 100%; background-color: #3182ce; color: white; border: none; padding: 14px; font-size: 1.1em; font-weight: bold; border-radius: 4px; cursor: pointer; transition: background-color 0.2s; margin-top: 10px; } .wfr-btn:hover { background-color: #2b6cb0; } #wfr_result_container { margin-top: 25px; padding: 20px; background-color: #ebf8ff; border: 1px solid #bee3f8; border-radius: 6px; display: none; } .wfr-result-header { text-align: center; font-size: 0.9em; color: #2c5282; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 10px; } .wfr-result-value { text-align: center; font-size: 2.5em; font-weight: 800; color: #2a4365; } .wfr-result-unit { font-size: 0.4em; color: #4a5568; font-weight: normal; } .wfr-secondary-results { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; margin-top: 15px; padding-top: 15px; border-top: 1px solid #bee3f8; } .wfr-sec-item { text-align: center; } .wfr-sec-label { font-size: 0.85em; color: #718096; margin-bottom: 5px; } .wfr-sec-val { font-weight: 700; color: #2d3748; } .wfr-content { margin-top: 40px; line-height: 1.6; color: #2d3748; } .wfr-content h2 { color: #2c3e50; border-bottom: 2px solid #e2e8f0; padding-bottom: 10px; margin-top: 30px; } .wfr-content h3 { color: #4a5568; margin-top: 25px; } .wfr-content ul { padding-left: 20px; } .wfr-content li { margin-bottom: 8px; }

Weir Flow Rate Calculator

Calculate open channel flow discharge using standard weir formulas

Rectangular (Suppressed) Rectangular (Contracted) Cipoletti (Trapezoidal) V-Notch (90 Degree) V-Notch (60 Degree)
Calculated Discharge Rate
0.00 CFS
Per Minute
0.00
Per Day
0.00

Understanding Weir Flow Calculation

A weir is a barrier across the width of a river or open channel that alters the flow characteristics of the water. By creating an obstruction, weirs allow engineers and hydrologists to measure the volumetric flow rate (discharge) based on the height of the water (head) above the weir crest.

Types of Weirs Supported

  • Rectangular Suppressed: The weir extends across the entire width of the channel. The side contractions are suppressed.
  • Rectangular Contracted: The notch is narrower than the channel width, creating contractions on the sides that reduce flow efficiency.
  • Cipoletti (Trapezoidal): Features a trapezoidal notch with side slopes of 1:4. This shape compensates for the end contractions inherent in rectangular weirs.
  • V-Notch (Triangular): Ideal for measuring low flow rates. The angle of the "V" (typically 90° or 60°) determines the discharge capacity.

Key Calculation Parameters

To accurately calculate the flow rate ($Q$), precise measurements of the following are required:

  • Head ($H$): The height of the water above the weir crest. This must be measured upstream from the weir, at a distance of at least 4 times the head, to avoid the drawdown curve.
  • Crest Length ($L$): The horizontal width of the notch (applicable for rectangular and Cipoletti weirs).

Formulas Used

This calculator utilizes standard hydraulic formulas (such as the Francis formula) tailored for each geometry:

  • For Imperial units, the base constant is approximately 3.33 for suppressed rectangular weirs.
  • For Metric units, the base constant is approximately 1.84 for suppressed rectangular weirs.
  • V-Notch weirs utilize the head raised to the power of 2.5, while rectangular weirs use the power of 1.5.

Why Accurate Measurement Matters

Flow rate data is critical for irrigation management, wastewater treatment plant operations, dam safety monitoring, and environmental compliance. Even small errors in measuring the head ($H$) can result in significant percentage errors in the calculated discharge due to the exponential nature of the formulas.

function updateWfrLabels() { var radios = document.getElementsByName('wfr_unit'); var unit = 'imperial'; for (var i = 0; i < radios.length; i++) { if (radios[i].checked) { unit = radios[i].value; break; } } var lenLabel = document.getElementById('label_len_unit'); var headLabel = document.getElementById('label_head_unit'); if (unit === 'imperial') { lenLabel.innerText = 'ft'; headLabel.innerText = 'ft'; document.getElementById('wfr_length').placeholder = "e.g. 5.0"; document.getElementById('wfr_head').placeholder = "e.g. 1.2"; } else { lenLabel.innerText = 'm'; headLabel.innerText = 'm'; document.getElementById('wfr_length').placeholder = "e.g. 1.5"; document.getElementById('wfr_head').placeholder = "e.g. 0.35"; } // Clear results on unit switch to avoid confusion document.getElementById('wfr_result_container').style.display = 'none'; } function toggleWfrFields() { var type = document.getElementById('wfr_type').value; var lenGroup = document.getElementById('wfr_length_group'); if (type.startsWith('vnotch')) { lenGroup.style.display = 'none'; } else { lenGroup.style.display = 'block'; } } function calculateWeirFlow() { // Inputs var type = document.getElementById('wfr_type').value; var length = parseFloat(document.getElementById('wfr_length').value); var head = parseFloat(document.getElementById('wfr_head').value); // Determine Unit System var radios = document.getElementsByName('wfr_unit'); var unit = 'imperial'; for (var i = 0; i < radios.length; i++) { if (radios[i].checked) { unit = radios[i].value; break; } } // Validation if (isNaN(head) || head <= 0) { alert("Please enter a valid positive number for Head Height."); return; } if (!type.startsWith('vnotch') && (isNaN(length) || length <= 0)) { alert("Please enter a valid positive number for Weir Crest Length."); return; } var flowRate = 0; // Q // Calculation Logic based on Unit System // Imperial: Q in cfs (cubic feet per second), L in ft, H in ft // Metric: Q in m³/s, L in m, H in m if (unit === 'imperial') { switch(type) { case 'rect_suppressed': // Francis Formula: Q = 3.33 * L * H^1.5 flowRate = 3.33 * length * Math.pow(head, 1.5); break; case 'rect_contracted': // Francis Formula with 2 end contractions: Q = 3.33 * (L – 0.2H) * H^1.5 // Effective length cannot be negative var effLength = length – (0.2 * head); if (effLength < 0) effLength = 0; flowRate = 3.33 * effLength * Math.pow(head, 1.5); break; case 'cipoletti': // Q = 3.367 * L * H^1.5 flowRate = 3.367 * length * Math.pow(head, 1.5); break; case 'vnotch_90': // Q = 2.50 * H^2.5 flowRate = 2.50 * Math.pow(head, 2.5); break; case 'vnotch_60': // Q = 1.43 * H^2.5 flowRate = 1.43 * Math.pow(head, 2.5); break; } } else { // Metric switch(type) { case 'rect_suppressed': // Q = 1.84 * L * H^1.5 flowRate = 1.84 * length * Math.pow(head, 1.5); break; case 'rect_contracted': // Q = 1.84 * (L – 0.2H) * H^1.5 var effLengthM = length – (0.2 * head); if (effLengthM < 0) effLengthM = 0; flowRate = 1.84 * effLengthM * Math.pow(head, 1.5); break; case 'cipoletti': // Q = 1.86 * L * H^1.5 flowRate = 1.86 * length * Math.pow(head, 1.5); break; case 'vnotch_90': // Q = 1.38 * H^2.5 flowRate = 1.38 * Math.pow(head, 2.5); break; case 'vnotch_60': // Q = 0.79 * H^2.5 flowRate = 0.79 * Math.pow(head, 2.5); break; } } // Secondary Calculations // Q is in CFS or CMS (m3/s) var perMin, perDay, mainUnit, subUnit; if (unit === 'imperial') { mainUnit = 'CFS (ft³/s)'; subUnit = ' ft³'; perMin = flowRate * 60; perDay = flowRate * 86400; } else { mainUnit = 'CMS (m³/s)'; subUnit = ' m³'; perMin = flowRate * 60; perDay = flowRate * 86400; } // Display Results document.getElementById('wfr_result_container').style.display = 'block'; document.getElementById('wfr_main_result').innerHTML = flowRate.toFixed(4) + " " + mainUnit; document.getElementById('wfr_min_result').innerText = perMin.toFixed(2) + subUnit + "/min"; document.getElementById('wfr_day_result').innerText = perDay.toLocaleString(undefined, {maximumFractionDigits: 0}) + subUnit; } // Initialize state toggleWfrFields(); updateWfrLabels();

Leave a Comment