## Glas :## [glas] An existing generic library : GMM |

**From:** Yves Renard (*Yves.Renard_at_[hidden]*)

**Date:** 2005-02-07 04:30:38

**Next message:**Toon Knapen: "Re: [glas] summary: auto-resizing vectors in assignment"**Previous message:**Williams, Alan B: "RE: [glas] Vector Spaces vs. "Objects called vectors""

Hi all,

The subject of a generic linear algebra library interest we a lot.

I personnally write an evolution of MTL library, I called GMM, which is

available at the following web address

http://www-gmm.insa-toulouse.fr/getfem/gmm_intro

In fact it is an evolution of the gathering of MTL and ITL. I simplified (and

corrected sometimes) the iterative solvers and preconditionners, I added some

also.

Concerning the basic linear algebra representation, all the generic algorithms

have been rewrited. What I added is an extension of the linalg_traits<T>

structure which, in GMM, gives all the necessary information for the generic

algorithms to work with the vector or matrix type. So that, theoretically, an

extern vector or matrix type which is sufficiently compatible can be

interfaced with GMM just writing the corresponding linalg_traits<T>

structure. For instance, the basic plain vector used is simply std::vector.

For dense matrices, An efficient implicit QR algorithm (for eigeinvalues

search) has been developped.

The library is working with some arbitrary precision floating point library

and the multiplication with different types is allowed (for example,

multiplying a complex matrix with a real vector).

I also added (may be this is the major contribution) a unified description for

sub-vectors and sub-matrices, so that sub-vectors and sub-matrices can be

used on all the generic algorithms, and this for dense, sparse or sky-line

storage.

I do not pretend that GMM could be as you said "a reference implementation", a

lot of things could be discussed and modified, but I think there is some

concepts I developp in this library that can interest you.

Yves.

-------------------------------------------------------------------------

Yves Renard (renard_at_[hidden]) tel : (33) 05.61.55.93.36

Dept de Mathematiques, INSA de Toulouse fax : (33) 05.61.55.93.20

Complexe Scientifique de Rangueil

31077 Toulouse Cedex, FRANCE

http://www-gmm.insa-toulouse.fr/~renard

-------------------------------------------------------------------------