Hi Eddy et al, On Mon, 11 Dec 2000 10:31:50 -0500 (EST) Eddy Offermann <eddy@rentec.com> wrote concerning ": [ROOT] matrix inversion class; comments please": OK. Here you go. When implementing TPrincipal this summer, I really REALLY missed some classes in ROOT, that basically dealt with matrix inversion, so I welcome you effort. However, what I missed the most, was to have classes like TUpperTriangleMatrixD TLowerTriangleMatrixD TSymmetricMatrixD TTriDiagnonalMatrixD Since these kinds of (real) matrixes are easily inverted, using standard algorithms, these could have specialised inversion methods/CTORs/etc. And one can easily find eigenvalues and -vectors of tridiagonal matrix, so this could also be a specilised method (See TPrincipal). And ofcourse, a symmetric matrix can be turned into a tridiagonal one, using standard algorithms. In otherwords, I think making these classes would be more then useful, and one could have a utility class - like TInverse - but being a friend of T<foo>MatrixD classes, so that it may access the data directly. Please note, that it's not posssible to have the above propossed classes inherit from TMatrixD, due to variuos return values, etc. One could have a matrix base class TBaseMatrixD, or what ever. ClHEP has a very extensive set of matrix classes, which are fairly well organised. Anyway, that's my two centimes worth. Yours, Christian ----------------------------------------------------------- Holm Christensen Phone: (+45) 35 35 96 91 Sankt Hansgade 23, 1. th. Office: (+45) 353 25 305 DK-2200 Copenhagen N Web: www.nbi.dk/~cholm Denmark Email: cholm@nbi.dk
This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:39 MET