3
void ludcmp(a,n,indx,d)
9
double big,dum,sum,temp;
12
vv = (double *) init_array(n);
16
for (i=0; i < n ; i++) {
18
for (j=0; j < n; j++) {
19
if ((temp=fabs(a[i][j])) > big) big=temp;
27
for (j=0; j < n ; j++) {
28
for (i=0; i < j ; i++) {
30
for (k=0; k < i ; k++) sum -= a[i][k]*a[k][j];
34
for (i=j ; i < n ; i++) {
36
for (k=0; k < j ; k++) sum -= a[i][k]*a[k][j];
38
if ((dum=vv[i]*fabs(sum)) >= big) {
44
for (k=0; k < n; k++) {
53
if (a[j][j] == 0.0) a[j][j] = 1.0e-20;
56
for (i=j+1; i < n ; i++) a[i][j] *= dum;