body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
line-height: 1.6;
color: #333;
max-width: 100%;
margin: 0 auto;
padding: 20px;
background-color: #f4f7f6;
}
.calculator-container {
background: #ffffff;
padding: 30px;
border-radius: 12px;
box-shadow: 0 4px 15px rgba(0,0,0,0.1);
max-width: 600px;
margin: 0 auto 40px auto;
}
.calculator-title {
text-align: center;
color: #2c3e50;
margin-bottom: 25px;
font-size: 24px;
font-weight: 700;
border-bottom: 2px solid #3498db;
padding-bottom: 10px;
}
.input-group {
margin-bottom: 20px;
}
.input-group label {
display: block;
margin-bottom: 8px;
font-weight: 600;
color: #555;
}
.input-group input {
width: 100%;
padding: 12px;
border: 1px solid #ddd;
border-radius: 6px;
font-size: 16px;
box-sizing: border-box;
transition: border-color 0.3s;
}
.input-group input:focus {
border-color: #3498db;
outline: none;
}
.help-text {
font-size: 12px;
color: #7f8c8d;
margin-top: 4px;
}
.calc-btn {
width: 100%;
background-color: #3498db;
color: white;
padding: 15px;
border: none;
border-radius: 6px;
font-size: 18px;
font-weight: bold;
cursor: pointer;
transition: background-color 0.2s;
margin-top: 10px;
}
.calc-btn:hover {
background-color: #2980b9;
}
.results-container {
margin-top: 25px;
background-color: #f8f9fa;
border-radius: 8px;
padding: 20px;
border-left: 5px solid #2ecc71;
display: none;
}
.result-row {
display: flex;
justify-content: space-between;
margin-bottom: 12px;
padding-bottom: 8px;
border-bottom: 1px solid #e0e0e0;
}
.result-row:last-child {
border-bottom: none;
margin-bottom: 0;
}
.result-label {
color: #555;
font-weight: 500;
}
.result-value {
font-weight: bold;
color: #2c3e50;
}
.article-content {
background: #fff;
padding: 30px;
border-radius: 8px;
box-shadow: 0 2px 5px rgba(0,0,0,0.05);
max-width: 800px;
margin: 0 auto;
}
.article-content h2 {
color: #2c3e50;
border-bottom: 1px solid #eee;
padding-bottom: 10px;
margin-top: 30px;
}
.article-content h3 {
color: #34495e;
margin-top: 20px;
}
.article-content p {
margin-bottom: 15px;
}
.formula-box {
background-color: #e8f4fc;
padding: 15px;
border-radius: 6px;
font-family: monospace;
margin: 20px 0;
border-left: 4px solid #3498db;
}
.error-msg {
color: #e74c3c;
text-align: center;
margin-top: 10px;
display: none;
font-weight: bold;
}
function calculateBlowdown() {
// 1. Get Elements
var recircInput = document.getElementById("recircRate");
var rangeInput = document.getElementById("tempRange");
var cyclesInput = document.getElementById("cycles");
var driftInput = document.getElementById("driftRate");
var resEvap = document.getElementById("resEvap");
var resDrift = document.getElementById("resDrift");
var resBlowdown = document.getElementById("resBlowdown");
var resMakeup = document.getElementById("resMakeup");
var resultsDiv = document.getElementById("results");
var errorDiv = document.getElementById("errorMsg");
// 2. Parse Values
var recirc = parseFloat(recircInput.value);
var range = parseFloat(rangeInput.value);
var coc = parseFloat(cyclesInput.value);
var driftPct = parseFloat(driftInput.value);
// 3. Validation
if (isNaN(recirc) || isNaN(range) || isNaN(coc) || isNaN(driftPct)) {
errorDiv.innerText = "Please fill in all fields with valid numbers.";
errorDiv.style.display = "block";
resultsDiv.style.display = "none";
return;
}
if (recirc <= 0 || range <= 0) {
errorDiv.innerText = "Recirculation Rate and Temperature Range must be positive.";
errorDiv.style.display = "block";
resultsDiv.style.display = "none";
return;
}
if (coc <= 1) {
errorDiv.innerText = "Cycles of Concentration must be greater than 1.";
errorDiv.style.display = "block";
resultsDiv.style.display = "none";
return;
}
// 4. Calculations
// Evaporation (E) = Recirculation Rate * Range * 0.00085 (Standard Factor)
// Note: 0.00085 implies approx 1% evap per 10 degrees F range / latent heat of vaporization factor
var evaporation = recirc * range * 0.00085;
// Drift (D) = Recirculation Rate * (Drift % / 100)
var drift = recirc * (driftPct / 100);
// Blowdown (B) Formula:
// Basic: B = E / (COC – 1) – Drift
// This is derived from Mass Balance: M = E + B + D and M/BlowdownTotal = COC
var totalWaterLossNeeded = evaporation / (coc – 1);
var blowdown = totalWaterLossNeeded – drift;
// If drift is higher than total water loss needed, blowdown is 0 (physically impossible to maintain that COC without reducing drift or changing E)
if (blowdown < 0) {
blowdown = 0;
}
// Total Makeup (M) = E + B + D
var makeup = evaporation + blowdown + drift;
// 5. Display Results
errorDiv.style.display = "none";
resultsDiv.style.display = "block";
resEvap.innerText = evaporation.toFixed(2) + " GPM";
resDrift.innerText = drift.toFixed(2) + " GPM";
resBlowdown.innerText = blowdown.toFixed(2) + " GPM";
resMakeup.innerText = makeup.toFixed(2) + " GPM";
}
Understanding Cooling Tower Blowdown Calculations
Maintaining the efficiency and longevity of a cooling tower requires precise water chemistry management. The "Blowdown" (or bleed-off) is a critical operational parameter that prevents dissolved solids from reaching concentrations that cause scaling and corrosion.
What is Blowdown?
As a cooling tower operates, water is evaporated to remove heat. Pure water evaporates, but the dissolved solids (calcium, magnesium, chlorides, silica) remain in the basin. Over time, the concentration of these solids increases. Blowdown is the process of intentionally draining a portion of this concentrated water and replacing it with fresh "makeup" water to keep the Total Dissolved Solids (TDS) within safe limits.
The Core Formulas
To calculate the required blowdown rate, you must understand three key components: Evaporation, Drift, and Cycles of Concentration.
1. Evaporation Rate (E)
The rate at which water turns to vapor. If not measured directly, it is typically estimated based on the recirculation rate and the temperature drop across the tower.
E = Recirculation Rate (GPM) × ΔT (°F) × 0.00085
Note: The factor 0.00085 is a standard industry rule of thumb assuming evaporation of ~0.85% of the flow for every 10°F drop in temperature.
2. Cycles of Concentration (COC)
This represents how concentrated the system water is compared to the makeup water. Higher cycles mean less water usage but higher risk of scaling. It is calculated as:
COC = System Water Conductivity / Makeup Water Conductivity
3. Blowdown Rate (B)
Once Evaporation (E) and Target Cycles (COC) are determined, the required Blowdown rate is calculated. While Drift (D) (water lost as mist) contributes to removing solids, the intentional blowdown formula is:
B = [E / (COC – 1)] – D
In many simplified calculations where drift is negligible, the formula simplifies to B = E / (COC – 1).
Why is this calculation critical?
- Water Conservation: Running at higher cycles (e.g., 5 or 6) reduces the makeup water required significantly compared to running at lower cycles (e.g., 2 or 3).
- Chemical Costs: Excessive blowdown wastes treatment chemicals, increasing operational costs.
- Equipment Protection: Insufficient blowdown leads to scaling, which acts as an insulator, reducing heat transfer efficiency and potentially damaging the chiller or heat exchanger.
Example Calculation
Consider a cooling tower with the following parameters:
- Recirculation Rate: 5,000 GPM
- Temperature Range (ΔT): 12°F
- Target Cycles: 4.0
Step 1: Calculate Evaporation
E = 5,000 × 12 × 0.00085 = 51 GPM
Step 2: Calculate Total Bleed Needed
Total Bleed = E / (COC – 1) = 51 / (4 – 1) = 51 / 3 = 17 GPM
Step 3: Determine Blowdown
If we assume drift is negligible, the Blowdown valve must be set to discharge 17 GPM.