Add the Penality module to compute the temperature penality
Refactor the norm function
Improve the event fireing