added evaluate_eigenvalues