INNER CODE UNIT · JavaScript
pivinv
lh3/yak · misc/test-qv.js:32
var pivinv = 1. / a[ic][ic];
a[ic][ic] = 1.;
for (l = 0; l < n; ++l) a[ic][l] *= pivinv;
if (b) for (l = 0; l < m; ++l) b[ic][l] *= pivinv;
for (var ll = 0; ll < n; ++ll) {
if (ll != ic) {
var dum = a[ll][ic];
a[ll][ic] = 0;
for (l = 0; l < n; ++l) a[ll][l] -= a[ic][l] * dum;
if (b) for (l = 0; l < m; ++l) b[ll][l] -= b[ic][l] * dum;
}
}
}
for (l = n - 1; l >= 0; --l)
if (xr[l] != xc[l])
for (var k = 0; k < n; ++k)
tmp = a[k][xr[l]], a[k][xr[l]] = a[k][xc[l]], a[k][xc[l]] = tmp;
return 0;