Solar thermal system sizing

This calculator turns a heating load (DHW + optional space heating) into a collector-area and tank-volume sizing recommendation, then runs the same multi-day simulation the /resources/tilt-optimizer uses to confirm the system actually delivers the targeted solar fraction.

Inputs and outputs are metric throughout. The methodology follows F-Chart (Klein, Beckman & Duffie 1976; canonical reference Duffie & Beckman, Solar Engineering of Thermal Processes, Photovoltaics and Wind, 5th ed. 2020) and the industry-standard DHW load rules of thumb from the ASHRAE Handbook — HVAC Applications (Service Water Heating chapter, current edition). For the η₀ → annual-delivered cascade behind the efficiency inputs, see /resources/collector-efficiency.

1. Site & climate

30%

Defaults are the centre of Prague. Cold-water supply drives both the DHW load (heater has to lift water from this temperature) and the tank's lower envelope. Central Europe / UK ≈ 10 °C; warmer climates 12–18 °C; Nordic 5–8 °C. Cloudiness: ~10 % clear desert · ~30 % central Europe · ~50 % maritime Atlantic.

2. Domestic hot water

Daily hot-water volume L/day
Annual DHW heating energy kWh/year

Building-type defaults follow the long-standing ASHRAE Handbook — HVAC Applications rule-of-thumb table (Service Water Heating chapter): residential 75–150 L/p/d (default 90), dormitory 60–95 (default 75), hotel 110–190 (default 150), hospital 95–150 (default 120), barracks / jail ~57 (steady load). The heater setpoint is the output temperature the energy must lift cold water to — typically 60 °C for Legionella suppression, even when a thermostatic mixing valve drops delivery to 49 °C afterwards. Energy formula: Q [kWh] = V [L] × ΔT [K] / 861.6.

3. Space heating (optional)

Leave at 0 for a DHW-only system. Otherwise enter the building's annual space-heating energy requirement (e.g. from heat-pump performance data, gas-bill × heater efficiency, or HDD × building UA). This is treated as cosine-of-day-of-year peaking at the winter solstice — a reasonable proxy without site-specific heating-degree-day data. Combining DHW with space heating shifts the system optimum toward steeper tilts and larger tanks because more of the load lands on short winter days.

Total annual heat demand kWh/year

4. Collector array

50%
500
Sizing-rule estimate of required collector area

First-pass F-Chart sizing estimate (Klein, Beckman & Duffie 1976; canonical reference Duffie & Beckman, Solar Engineering of Thermal Processes, 5th ed. 2020, ch. 21): A [m²] ≈ (annual demand × target SF) / specific yield. Specific yield 400–600 kWh/m²/yr is the typical mid-latitude flat-plate band reported in Fraunhofer ISE and IEA SHC Task 26 long-term monitoring; 500 is a reasonable starting point for central Europe and the UK. Bench yields nudge higher for low-delivery-temperature installs and lower for high-DHW-setpoint or shaded ones. The seasonal effective η input feeds the live simulation below — see the collector-efficiency cascade for how datasheet η₀ ≈ 0.75 translates to a seasonal-average ≈ 0.45.

Diminishing returns — per-m² yield + bypass vs collector area — six sweep points sized for SF = 30 / 40 / 50 / 60 / 70 / 80 % at the current demand, climate, efficiency, tank, and insulation

Per-m² delivered yield (red) is what each m² of collector actually delivers to the tank as an annual average. It always slopes downward: bigger arrays land into a tank that is increasingly already full at peak sun, so the marginal kWh-per-m² shrinks. Closed-system bypass (amber) grows correspondingly — irradiance that a closed-loop system would have to dump (and that a drainback install simply doesn't harvest). The 400–600 kWh/m²/yr band shaded across the chart is the typical mid-latitude flat-plate sanity range; pick an area where per-m² yield still sits inside it. Vertical dashed line marks the currently-chosen area (set by the SF-target and specific-yield sliders above).

5. Storage tank

Duffie & Beckman's 1976 reference value is 75 L/m² with a flat performance plateau extending down to ~50 L/m²; modern solar-thermal practice has narrowed the sweet spot to 50–60 L per m² of collector. Below 50 L/m² efficiency drops fast; above 80 L/m² cost rises without benefit. Commercial sites with daytime draw can credit 10–25 % of the daytime load as additional effective storage; community-pool / weekend-loaded sites go to 200–300 L/m². Insulation drives the standing-loss-to-ambient rate — "good" matches the 8 cm-PUR reference rig at ~0.0012 × L kWh/day (1.7 kWh/day for 1431 L, bench-verified).

6. Annual yield projection

Simulation runs at tilt = latitude, azimuth = south — the textbook starting point. Use the tilt optimizer to refine the orientation, especially if the system is oversized (steeper tilt shifts collection from wasted summer into useful shoulder months) or has significant space-heating load.

Collected kWh/yr
Delivered kWh/yr
Unmet kWh/yr
Achieved SF
Monthly energy (kWh) — delivered / closed-system bypass / unmet

"Closed-system bypass" is summer over-collection that a pressurised closed-loop system would dump through a bypass valve. Drainback (the Privateer default) simply doesn't circulate when the tank is full — the irradiance just isn't harvested. Treat a large bypass figure as a tank-sizing / array-sizing warning, not a literal heat-dump loss.

Next step: pick the panel orientation → Collector Tilt Optimizer

How it works

The DHW load is the canonical sensible-heat equation: Q_day = V_day · ρ · c_p · (T_setpoint − T_cw), with ρ·c_p = 4178 J/(L·K), giving Q_day [kWh] = V_day [L] × ΔT [K] / 861.6. Annual DHW = Q_day × 365.

The collector-area estimate comes from the standard first-pass F-Chart guess: A [m²] ≈ (annual demand × target SF) / specific yield, with specific yield calibrated to typical mid-latitude flat-plate performance (400–600 kWh/m²/yr of net delivered energy reported by Fraunhofer ISE and IEA SHC Task 26). Solar fraction higher than ~60 % runs into diminishing returns because the extra collectors increasingly deliver into a tank that is already near its hi-limit when the sun is shining — the marginal kWh per added m² drops and bypass losses grow.

The simulation itself is the same multi-day F-Chart-style model as /resources/tilt-optimizer: hour-by-hour clear-sky direct + isotropic diffuse irradiance attenuated by an average-cloudiness factor, plane-of-array projection, daily mass balance on the tank (collection clamped at envelope headroom; demand draw + standing loss off the state; shortfall = unmet, overflow = bypass), throwaway warm-up year so the metered year starts from quasi-steady state. The simulation kernel is duplicated between the two pages; future refactor will lift it to a shared module.

Sanity benchmarks

Further reading

Dr. Ben Gravely's solarhotwater-systems.com blog catalogues four decades of practical drainback installation experience (2000+ systems since 1978). It's a useful complement to the textbook references above when you want to see how the canonical sizing rules of thumb hold up in the field, and the "Webinars" section walks through F-Chart sizing on real case studies.