Our apparatus allows us to study two-dimensional heat flow. It consists of a square aluminum plate, 81 DS18B20 temperature sensors, and an Arduino Uno microcontroller . The sensors communicate with the Arduino via a one-wire protocol, which means that all 81 sensors can be placed on a single serial (data collection) line. Temperature data is collected from the sensors using programs created in the Arduino development environment and in Python; it is then displayed in a two-dimensional contour plot, which updates in realtime. The first frame of experimental data is used to simulate heat flow in Python. Our simulation program uses the method of finite differences, which is a numerical scheme used to solve differential equations via discretization. In our case, we discretize the two-dimensional heat equation, which is a partial differential equation that theoretically describes the flow of heat in a two-dimensional object. The theoretical temperature data we generate is then compared with the experimental data, showing that the model generally agrees with the experimental results, with an average percent error of less than 1%. Overall, our apparatus provides a way to understand the heat flow that arises from different initial conditions and the simulation provides a very good model for real-world heat flow in two dimensions.
 Patrick McDougall and Eric Ayars, “Two-dimensional heat flow apparatus,” Am. J. Phys. 82, 620 (2014).