Cascade simulation


I tried out the three region code for a cascade simulation that has been previously posted and adapted it for a zirconium block with a 10keV collision.
It takes an atom from the interior region and gives a velocity acting downwards.
The simulation initially starts off fine, equilibrating at 100K, however during the collision phase the temperature increases massively to 6500K which I didn’t see when I ran the code for a 3keV collision.
I made the time step smaller, assuming that it might resolve this problem however it hasn’t. DO you know how I can fix this so that it runs at 100K throughout the simulation?

Kind regards