Home || Architecture || Video Search || Visual Search || Scripts || Applications || Important Messages || OGL || Src

template<class C>
void Impala::Core::Matrix::Lubksb ( C *  a,
int  n,
short *  indx,
double *  b 
) [inline]

Definition at line 93 of file MatInverse.h.

Referenced by MatInverse().

00094 {
00095     int ii = -1;
00096 
00097     int i;
00098     for (i=0;i<n;i++)
00099     {
00100         int ip=indx[i];
00101         double sum=b[ip];
00102         b[ip]=b[i];
00103         if (ii>=0)
00104             for (int j=ii;j<=i-1;j++)
00105                 sum -= a[i*n+j]*b[j];
00106         else if (sum) ii=i;
00107         b[i]=sum;
00108     }
00109     for (i=n-1;i>=0;i--)
00110     {
00111         double sum=b[i];
00112         for (int j=i+1;j<n;j++)
00113             sum -= a[i*n+j]*b[j];
00114         b[i]=sum/a[i*n+i];
00115     }
00116 }


Generated on Fri Mar 19 11:15:57 2010 for ImpalaSrc by  doxygen 1.5.1