added Heat defusion algo