modified rokko/eigen_sx/diagonalize.hpp