Hi Elt
At dump time, assuming 30v, ( I know you tested at 25v, but you'll be dumping at around thirty in real life I suspect) depending on your pwm pulse width, you may be switching up to 1500W into your .6 ohm load. In other words, about 50A at full pulse width. For the heatsink you have, it may prove possible if the wave form is perfect, there is no rise time (it is perfect) and full saturation is reached instantly.
In the real world, this is hard to achieve.
Firstly I would bring your resistor array up to about 6ohms for testing. This should limit your power to 900/6 =150W which your configuration should handle even if your switching wave forms are not perfect.
This next part I wrote before you posted your response so is probably of little use, but i'll leave it in anyway:-)
[Then get the scope out and check your input to the fet waveforms, and the output wave forms.
If there is any sagging in the input waveform, it is what is introducing the losses in the fet, as it is spending too much time in amplification made rather than saturated mode.
If the input is a perfect square wave, but the output has slopes rather than vertical rises, then saturation is incomplete, and the losses in unsaturated mode will show up as rise lines with slope.
If the latter is the case, you may be getting some voltage drop from the totem pole driver from your 10v source, and you may need to use a 7812 to give you the drive voltage instead of your 10v reg.
If all appears to be good, (and you have fixed any waveform problems) the fets should run barely warm.
Start adding resistance and check your waveforms. If the waveforms start to fail, you'll need to find out why.]
You may have to adjust your pulse width maximum to keep within the bounds of how much heat sink you are going to use, but if you want to dump all at once at 1500w, you'll need a swag more than you have. If you keep below 200W, you probably have enough..... providing you have a good waveform.
The freewheel diode needs to handle the back EMF peaks, but at 2k5hz it should be ok... maybe increase it's voltage and current rating as Samoa suggests. I don't think it is what failed in this instance, but you will know that by now anyway. (was it?).
Poor waveform could be being developed by T3 and T4. and the led hanging on the same line. A scope would help here.... but test the array with and without this added non-linear load (the LED)... You may find that the LED will load the pulse train up as it's increases in brightness with the pulse width. This will warp the pulseby loading the output from your pic.
The buffer trannies.....Perhaps bypass these so the pwm drives the totem without a buffer, and run again. Increasing the load and checking temp etc.... (I havent used pics to drive fet arrays before, so am not sure of the ramifications of this procedure so be wary of this advice), but if output is clean at the pic, the only other waveform polluter I can see is this pair of trannies, and the dumping led display on the same line.... Testing testing and more testing may show up the culprit.
This may not be too helpful, but may give you something to work with. No scope makes this a suck it and see procedure, so protect the output stage by going up slowly (pulse width and load) and document what changes as you increase power output.
A well shaped and saturated array will run surprisingly cool, but the slightest deviation from perfect waveform will rapidly erode efficiency.
gotta go now
......oztules
Flinders Island Australia