timer is added to diagonalize function (now only for eigen_s) as an arugument