| 175 |  | * @param w output eigenvalues | 
| 176 |  | * @param v output eigenvectors | 
| 177 |  | */ | 
| 178 | < | void jacobi(const SquareMatrix<Real, Dim>& a, | 
| 179 | < | Vector<Real, Dim>& w, | 
| 178 | > | bool jacobi(const SquareMatrix<Real, Dim>& a, Vector<Real, Dim>& w, | 
| 179 |  | SquareMatrix<Real, Dim>& v); | 
| 180 |  | };//end SquareMatrix | 
| 181 |  |  | 
| 183 |  | #define ROT(a,i,j,k,l) g=a(i, j);h=a(k, l);a(i, j)=g-s*(h+g*tau);a(k, l)=h+s*(g-h*tau) | 
| 184 |  | #define MAX_ROTATIONS 60 | 
| 185 |  |  | 
| 186 | < | template<Real, int Dim> | 
| 187 | < | void SquareMatrix<Real, int Dim>::jacobi(SquareMatrix<Real, Dim>& a, | 
| 188 | < | Vector<Real, Dim>& w, | 
| 190 | < | SquareMatrix<Real, Dim>& v) { | 
| 186 | > | template<typename Real, int Dim> | 
| 187 | > | bool SquareMatrix<Real, Dim>::jacobi(const SquareMatrix<Real, Dim>& a, Vector<Real, Dim>& w, | 
| 188 | > | SquareMatrix<Real, Dim>& v) { | 
| 189 |  | const int N = Dim; | 
| 190 |  | int i, j, k, iq, ip; | 
| 191 |  | double tresh, theta, tau, t, sm, s, h, g, c; | 
| 323 |  |  | 
| 324 |  | } | 
| 325 |  |  | 
| 328 | – |  | 
| 329 | – | } | 
| 326 |  | #endif //MATH_SQUAREMATRIX_HPP |