수학 라이브러리로 gsl (GNU Scientific Library) 을 사용하고 있습니다.
그런데 gsl 에서 제공하는 eigenvalue 와 eigenvector 계산 시스템이 어떻게 다른 지는 잘 몰라도,
얻어지는 eigenvalue 와 eigenvector 가 다른 프로그램과 좀 다르더군요.
간단한 2x2 매트릭스
1 3
4 2
를 gsl 의 gsl_eigen_symmv (gsl_matrix * A, gsl_vector * eval, gsl_matrix * evec, gsl_eigen_symmv_workspace * w)
함수를 통해 값을 구해보면,
-2.53113
5.53113
이라는 값이 튀어나오네요.
그런데 손으로 풀어보아도 위 매트릭스의 eigenvalue 는 -2 와 5 이고, R 같은 다른 수치해석 프로그램으로 보아도 gsl 과 다른 고유값과 고유벡터를 출력하네요.