[comp.lang.c++] Matrix class for G++

pic@mlb.dmt.csiro.au (Peter Corke) (10/24/90)

Does anybody have, or know where I could get, a Matrix/Vector class
with overloaded operators for standard arithmetic operations.  I'd
like it to be pretty efficient, ie/ not too much copying of data between
objects.

I tried writing my own but ran into problems with either too much data
copying in constructors, or else lumps of heap storage becoming detached...

Please reply by email.  Thanks,

		Peter

robert@am.dsir.govt.nz (Robert Davies) (10/25/90)

Reply about matrix packages on G++.


I think my one goes on G++. It tries to avoid copying matrices
unnecessarily and tries to destroy intermediate results as soon as
possible. It is still in a development stage but does have * + -
inverse and transpose. It supports triangular, symmetric, rectangular
matrices and row and column vectors. It supports only one type of element
- eg double. It is meant for medium sized
matrices. ie big enough so administration overheads are negligible but
not so big that storing a matrix in one chunk causes a problem. The
package is large.

Mail me if you want a copy.


An alternative is the Rogue Wave package which you can buy from Austin
Code works or some of the mail order companies (look up an advert in 
"computer language"). The following comments refer to an early version.
It is not as clever as mine but may be clever enough. 
It allows double and complex elements, only rectangular matrices, avoids
unnecessary copying (probably more rigorously than mine, but doesn't
destroy intermediate quantities as quickly). It does have a number of
other matrix operations such as FFT.

Robert






------- Received message ends    ----