[ROOT] TMatrix inversion problem

From: Eddy Offermann (eddy@rentec.com)
Date: Fri Apr 28 2000 - 21:39:08 MEST


Dear Root-ers,

I have a problem with the Invert operation in TMatrix.
When trying to invert a 250 x 250 matrix with only diagonal
elements of size 10000, I get a floating-point exception.
Trying inversion of a 5 x5 matrix works ok.

The remedy is to first normalize the matrix properly, invert
and transform back. I did not look in the code but assume this 
is not done.

Could the ROOT team please add something to the code that will
take care of this: (pseudo code)

1. b(i,j) = a(i,j)/sqrt(a(i,i)*a(j,j))
2. b_inv = b.Invert()
3. a_inv(i,j) = b_inv(i,j)/sqrt(a(i,i)*a(j,j))

Eddy Offermann



This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:24 MET