12345678910111213141516171819202122232425262728 |
- #include "ABACUS.h"
-
- void ABACUS::eigsrt (Vect_DP& d, SQMat_DP& v)
- {
- // This puts the eigenvalues in INCREASING order, not decreasing as in NR !
-
- int i, j, k;
- DP p;
-
- int n = d.size();
- for (i = 0; i < n-1; i++) {
- p = d[k=i];
- for (j = i; j < n; j++) {
- if (d[j] <= p) {
- p = d[k = j];
- }
- }
- if (k != i) {
- d[k] = d[i];
- d[i] = p;
- for (j = 0; j < n; j++) {
- p = v[j][i];
- v[j][i] = v[j][k];
- v[j][k] = p;
- }
- }
- }
- }
|