The finite difference method is a numerical technique that approximates derivatives with finite differences. This methodology can be used to solve the heat equation. A strong overview of this methodology is available here.
This program solves the heat equation for two dimensional meshes, making an assumption that boundaries are insulated. It is capable of transient analysis, and uses an explicit formulation to do so.
Currently only fixed temperature boundary conditions and insulated walls are supported. It would be easy to extend this program to add additional cases. The program is designed to be simple and lightweight; more advanced programs are available for solving challenging problems.
Matplotlib and Numpy