Cooling towers are required components of nuclear power plants, responsible for dissipating excess heat generated during electricity production. They operate by transferring waste heat from reactor coolant to the atmosphere, usually by spraying heated water through a stream of fast-moving cool air.
There are two main types of cooling towers used in nuclear plants: forced cooling towers and passive cooling towers. Forced cooling towers, or mechanical draft towers, use large fans to drive airflow, enhancing evaporative cooling. Heated water from the reactor is sprayed or trickled over fill material to increase surface area, while fans pull in air to accelerate heat transfer. This method provides high cooling efficiency and precise thermal control but consumes more energy and requires regular maintenance due to mechanical components. Passive cooling towers, or natural draft towers, rely on buoyancy-driven airflow instead of fans. Warm water sprayed upwards transfers energy into air, and the heated air rises naturally, creating continuous airflow. These towers are highly energy-efficient, reliable, and self-sustaining during power failures but require large structures and may be affected by weather conditions, and land and maintenance costs.
We chose to combine the two tower types in our model. Instead of a large or mechanically complex structure, small fans and a low building height could offer a ‘best of both worlds’ design. Simulation proved this to be the case.
Required Energy Dissipation (Wtower)
The heat inefficiencies of the tower are equal to the reactor generation power minus the turbine’s usage of that power.
Sprayer network heat dissipation (Wsprayer)
The total amount of energy dissipated by the cooling towers (in a stack) is equal to the number of sprayers times the square root of the air velocity flowing in the stack times the convective heat transfer coefficient of air times the surface area of one cubic meter of coolant spray times a single sprayer’s spray volume times the temperature difference from the incoming coolant and the air.
The surface area of one cubic meter of coolant spray was calculated by assuming the coolant spray particles to be spheres of diameter 0.1mm, packed at a 1.0mm distance from other coolant particles
Tower Airspeed (vair)
The tower airspeed combines the two sources of air movement.
Natural Convection (The Stack Effect): Airspeed (m/s) is equal to the tower’s Discharge Coefficient, taken to be between 0.65 and 0.7 for most stacks times the total area of the stack (number of sprayers times sprayer area) times the square root of gravity times height times the percent difference between external air and the coolant fluid times 2.
Forced air (from fans): The airspeed due to forced airflow is equal to the total power of the fans times the efficiency of those fans times the power/flow conversion factor, typically between 0.3 and 2 m^3/kW, divided by the stack area (number of sprayers times individual sprayer area). Since the cooling tower is a large structure, a conservative estimate for the fan m^3/s to kWh conversion is 0.00132 m^3/s/kWh based on similar fans found online.
Total Running cost ($c)
The running cost of the system is equal to the fan power cost plus the upkeep and building cost of the cooling tower. The upkeep cost is based on the land area and the height of the tower. The taller/wider the tower, the more expensive the tower is to build and maintain
Fan Efficiency: (ηfan)
This efficiency curve is based on real-world data of a 1MW industrial fan found online.
Wtower
Wsprayer
vair
$c
ηfan
The objective of the cooling tower is to maximize heat transfer to the outside environment while minimizing power draw on the reactor and vertical tower footprint (both proxies for cost).
Minimize 1 / Ecooling where Ecooling = qtower / $cooling
The reactor operates in steady state
Pumping costs are neglected
Heat exchanger efficiency losses are neglected
Temperature/pressure/humidity of the outside air is held constant
Cooling loop water doesn’t change state, and perfect convection occurs (other forms of heat transfer are ignored)
Sprayer particles are assumed to be 0.1mm spheres of pure H2O
Electricity cost ($e) = $0.0314m^3/s/kWh
Fan power to air efficiency: (PfanE) = 0.00132m^3/s/kW
Coolant Temperature into the Cooling Tower (Tin) = 49ºC
Outside Air (Worst case chosen)
Air Temperature (Tair) = 27ºC
Air Humidity (Uair) = 65.4% RH
Air Pressure (pair) = 1,021 hPa
Tower Geometry
Tower Discharge Coefficient (Cctower) = 0.7
Gravitational Acceleration (g) = 9.81 m/s^2
Land cost ($sqft): $17.65 / m^2
Max Height (hmax): 55m
Sprayer
Sprayer coverage area (aa) = 1.54m^2
Sprayer height above collection pool (hsp): 2.0m
Convective heat transfer coefficient of air (kair): 22 W/m^2 *K
Liquid Interface Area (100µm particle, 4% particle density) (Asp): 125m^2
Reactor/Turbines:
System efficiency (ηturbine): 0.34
Fan Power (Ẇfan)
Number of sprayers (nsp)
Tower height (h)
Sprayer Effective Area (Asp)
The power of the fan system must be in the range 0W < Pfan < 15MW
The tower height must be buildable and within building limits: 0 < h < 55m
The reactor power is (held constant for now): Preactor = 4500MW
The tower’s heat dissipation must be greater than generation inefficiencies: Psprayer ≥ Ptower
Overview:
The optimization is performed using MATLAB’s optimization toolbox, which specifically uses fmincon with the sequential quadratic programming (SQP) algorithm to minimize the objective function while satisfying constraints.
Correlation Between Decision Variables, Constraints, and Objective Function:
Higher tower height increases cooling tower air velocity but adds to tower maintenance/ building costs
The larger a point-source sprayer's effective area, the less efficient that sprayer will be (quadratic loss due to imperfect volume usage).
More, larger sprayers will cause a tower’s footprint to increase. The enlarged maintenance/land cost can be offset by a lower air velocity contributed by the forced-air fans
The forced air fans follow a quadratic efficiency curve, as with real fans.
The hotter the cooling water relative to the outside air, the more efficient the tower becomes.
The values of the dependent outputs for the optimal solution are:
Ptower= 3092 MW (dissipated)
costrun = 0.157 USD/s
vair = 9.33 m/s
Rtower = 51.49m, given 8 cooling towers needed for a 4.5GW plant
Relevance of Optimized Solution:
The cooling tower optimization results show that a medium tower height, low-power forced air fan setup, and many large-area sprayers is the most efficient option. The constraints are satisfied, so the design remains feasible (not ridiculously tall/wide/power hungry). The system also is capable of discharging enough heat to keep the 4.5GW plant cool.
Model Fidelity Justification:
The model appears to be at least somewhat realistic. A ~1800MW reactor (Three Mile Island) has four cooling towers, each roughly 100m tall which are completely passively cooled. Our proposed reactor is roughly double TMI’s size, and as a result the cooling capacity has roughly doubled.
Software Used for Optimization:
MATLAB (fmincon with the interior-point algorithm) was used both because it has been the go-to in this class (familiarity), and fmincon’s ability to work with non-linear constraints.
The results were validated across five trials to determine the optimal solution.
% Bounds for design variable
% fan Pwer, n_sp, h, a_a
lb = [0, 0, 10, 1.3]; % Lower bounds
ub = [15000, 9000, 55, 5]; % Upper bounds
% Initial guesses (5 different starting points
x0_set = [
6000, 300, 43, 3;
1000, 300, 43, 3
6000, 1200, 26, 3
12000, 500, 43, 4
10000, 8000, 52, 5
];
% Store results
results = zeros(5, 6);
% Run optimization for each starting point
for i = 1:5
% Select initial guess
x0 = x0_set(i, :);
% Run optimization
x = fmincon(@objFunc, x0, [], [], [], [], lb, ub, @nonlcon);
% Results
sqrt(x(2) * x(4) / pi / 8) * 2 % Tower diameter
[Wtower, Wsprayer, S_total] = tower(x);
Wtower
Wsprayer
S_total
x(1)
x(2)
x(3)
x(4)
end
function y = objFunc(x)
[W_tower, Wsprayer, S_total] = tower(x);
% Minimizing cost ($) per Watt of power dissipated
y = S_total / Wsprayer;
end
function [c, ceq] = nonlcon(x)
[Wtower, Wsprayer, ~] = tower(x);
%Cooling capacity must be in the 100-105% range compared to
% reactor heat output
c(1) = -1 * (0.05 - (Wsprayer - Wtower) / Wtower);
c(2) = (Wsprayer - Wtower) / -Wtower;
ceq = []; % No equality constraints
end
function [Wtower, Wsprayer, S_total] = tower(x)
% required cooling power:
Wreactor = 4500000000;
n_turbine = 0.34;
Wtower = (1- n_turbine) * Wreactor;
% Fan efficiency calcs
Wfmax = 15000;
Wfan = x(1);
n_fan = 0.52 + 1.68 * (Wfan/Wfmax) + -1.75 * (Wfan/Wfmax)^2;
% Air velocity in tower
Cc_tower = 0.7;
n_sp = x(2);
a_a = x(4);
g = 9.81;
h = x(3);
T_in = 49;
T_air = 27;
p_fan_e = 1.42;
v_air = Cc_tower * sqrt(2*g*h * (T_in - T_air) / T_in) + Wfan * n_fan * p_fan_e / n_sp / a_a;
% Total Tower Cooling Capacity
k_air = 22;
A_sp = 4 * pi * 0.0001^2 * (1/.001)^3 * 1-(x(4)^2 * 0.03);
Wsprayer = n_sp * sqrt(v_air) * k_air * A_sp * a_a * (T_in - T_air);
% Cost to run the tower for a year
S_land = 17.65;
S_e = 0.00314;
h_max = 55;
se_out = S_e * 24 * 365 * Wfan;
S_land_out = S_land * a_a * n_sp * (1 + h/h_max) * 12;
S_total = se_out + S_land_out;
end