scipy eigensolver