WHAT’S HAPPENING
Heat runs downhill.
Spread and average over time
When the spread reaches zero, nothing more can flow.
CONDUCTION, ONE CELL AT A TIME
Every cell passes heat to its cooler neighbours.
Paint hot and cold, add a wall or a heater, and follow the flow until everything agrees.
Drag across the grid to paint heat. Arrow keys move the cursor when the grid has focus.
Ready.
WHAT’S HAPPENING
When the spread reaches zero, nothing more can flow.
THE HEAT LEDGER
Every cell holds the same amount of material, so adding up all 320 temperatures is a way of counting heat. Flow inside the grid only moves it around.
Units: cell·°C. “Unaccounted” stays at zero (to rounding) because every transfer takes from one cell exactly what it gives the next.
TRY THIS
Hot meets cold. Bring the spread under 5 °C before the clock reaches 60 s.
The heater is on. Keep the right-hand column under 60 °C on average at 120 s.
Start even at 50 °C, heater off. Paint until the average reads 59.5–60.5 °C.
Pick a puzzle. Starting one loads its setup.
A MODEL YOU CAN INSPECT
Tnew = T + r · Σ (Tneighbour − T)
r = D · Δt ≤ 0.2
Each step, every pair of touching cells swaps heat in proportion to their temperature difference. Big differences move a lot of heat; equal temperatures move none. That is why everything slows down as it evens out.
The grid is 20 × 16 cells of equal size and equal heat capacity. Each update looks at every pair of side-by-side neighbours and moves r × (difference) from the warmer cell to the cooler one, so whatever one cell loses its neighbour gains. Time steps are split so that r never exceeds 0.2, which keeps this explicit method stable.
The barrier multiplies the flow across the middle line by (1 − blocked fraction). The heater resets the left column to 100 °C after each step and records how much heat that took. Your brush sets cells to the brush temperature and records that too. The outer edges are insulated.
Flow arrows show the direction and relative size of the local heat flow, worked out from the same neighbour differences. Isotherms join points at the same temperature, every 10 °C.
Diffusivity here is a relative number, not a named material. There is no radiation, convection, phase change (the “ice” never melts) or physical heat capacity in joules; the ledger counts cell temperatures. Model time is in arbitrary seconds.
Heat equation simulation · ENCCS: explicit heat-equation stencil · Model notes