comparison liboctave/CmplxLU.cc @ 1321:64819a909ed7

[project @ 1995-08-22 05:39:43 by jwe]
author jwe
date Tue, 22 Aug 1995 05:41:48 +0000
parents 611d403c7f3d
children 9b2654476502
comparison
equal deleted inserted replaced
1320:c9aecc02c6d4 1321:64819a909ed7
61 61
62 F77_FCN (zgesv, ZGESV) (n, 0, tmp_data, n, ipvt, b, n, info); 62 F77_FCN (zgesv, ZGESV) (n, 0, tmp_data, n, ipvt, b, n, info);
63 63
64 ComplexMatrix A_fact (tmp_data, n, n); 64 ComplexMatrix A_fact (tmp_data, n, n);
65 65
66 int i; 66 for (int i = 0; i < n; i++)
67
68 for (i = 0; i < n; i++)
69 { 67 {
70 ipvt[i] -= 1; 68 ipvt[i] -= 1;
71 pvt[i] = i; 69 pvt[i] = i;
72 } 70 }
73 71
74 for (i = 0; i < n - 1; i++) 72 for (int i = 0; i < n - 1; i++)
75 { 73 {
76 int k = ipvt[i]; 74 int k = ipvt[i];
77 if (k != i) 75 if (k != i)
78 { 76 {
79 int tmp = pvt[k]; 77 int tmp = pvt[k];
84 82
85 l.resize (n, n, 0.0); 83 l.resize (n, n, 0.0);
86 u.resize (n, n, 0.0); 84 u.resize (n, n, 0.0);
87 p.resize (n, n, 0.0); 85 p.resize (n, n, 0.0);
88 86
89 for (i = 0; i < n; i++) 87 for (int i = 0; i < n; i++)
90 { 88 {
91 p.elem (i, pvt[i]) = 1.0; 89 p.elem (i, pvt[i]) = 1.0;
92 90
93 int j;
94
95 l.elem (i, i) = 1.0; 91 l.elem (i, i) = 1.0;
96 for (j = 0; j < i; j++) 92 for (int j = 0; j < i; j++)
97 l.elem (i, j) = A_fact.elem (i, j); 93 l.elem (i, j) = A_fact.elem (i, j);
98 94
99 for (j = i; j < n; j++) 95 for (int j = i; j < n; j++)
100 u.elem (i, j) = A_fact.elem (i, j); 96 u.elem (i, j) = A_fact.elem (i, j);
101 } 97 }
102 98
103 delete [] ipvt; 99 delete [] ipvt;
104 delete [] pvt; 100 delete [] pvt;