# passive heatsink simulation

I want to simulate a heat source (eg a cpu) connected to a heatsink without any cooling fans. The simulation will run indefinitely using small time steps.

What i want to measure at each time step is the temperature of the heat source and the temperature of the heatsink at each tick (of time).

The heat source will be generating a known amount of power in watts to be converted to heat, which may vary during the simulation. Think of the cpu reducing its clockspeed thereby lowering its power consumption and heat emitted.

I believe what i need to perform each step is:

[1] calculate heat generated by source [2] emit some of that heat in the form of radiation [3] determine some kind of cooling [4] subtract cooling from heat generated to get a temperature for heatsource, and for the heatsink.

I have been messing around with heat equations but am struggling to join them together to model this system.

Any help would be very much appreciated.

• Are you sure that heat conduction will take place through radiation (i.e. photons)? If the two objects are physically connected, you're probably better off using Fourier's heating law. Mar 6, 2011 at 16:36

1) is just your input. You make it up. 2) the radiation law is the power out (energy per time) $P=\sigma A T^4$, where $\sigma$ is the Stefan-Boltzman constant, A the area and T the absolute temperature. The net radiation (because you receive from the environment) is then $P=\sigma A (T_{heat sink}^4-T_{environment}^4)$ At these temperatures, unless your sink is polished metal, you can consider it black. Conduction and convection are just $P=k(T_{heat sink}-T_{environment})$ where the hard part is figuring our reasonable constant k's (they are different). As you say, you have a thermal balance, and the temperature changes as $\delta T=\frac{(P_{in}-P_{out})\delta t}{C}$ where $C$ is the heat capacity. You can look that up for the material of your heat sink.l Aluminum is about $0.9 \frac{J}{gK}$ for example.