getfem-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Getfem-users] collaboration between GMM and KDE/Eigen


From: Yves Renard
Subject: Re: [Getfem-users] collaboration between GMM and KDE/Eigen
Date: Tue, 23 Jan 2007 11:14:10 +0100
User-agent: KMail/1.7.2

Le Lundi 22 Janvier 2007 17:13, Schleimer, Ben a écrit :

> Jut curious:
> 1) How similar is gmm to mtl?
> 2) Are there any plans for copy-on-write semantics
> and/or expression templates implemented for gmm in the
> future? Just so overloading operators becomes
> possible?

The major difference between Gmm and MTL is the fact that Gmm is basically 
built as an interface for existing optimized package. So extern matrix and 
vector formats are easy to interface and used.
For instance std::vector<T> is used for the standard plain vector in Gmm.
This makes easy the definition of a new vector or matrix type and easy also 
the mix between several format (for copy, mult ...).

One of the drawback is that is more difficult to implement expression 
templates (seems impossbile in a general way). One of the reasons is that 
operator = cannot be defined outside a class. in any way, one of the problem 
is that expression templates should be written for each class interfaced by 
Gmm.

Compared to MTL we also optimized and controled the validity of many 
algorithms (especially in complex where a lot of errors where present, see 
automatic tests).

We add also an "tranparent" interface to Blas/Atlas for small plain matrices.


Sincerly,

Yves.

-------------------------------------------------------------------------
  Yves Renard (address@hidden)       tel : (33) 04.72.43.80.11
  Pole de Mathematiques, INSA de Lyon          fax : (33) 04.72.43.85.29
  Institut Camille Jordan - CNRS UMR 5208
  20, rue Albert Einstein
  69621 Villeurbanne Cedex, FRANCE
  http://math.univ-lyon1.fr/~renard
-------------------------------------------------------------------------



reply via email to

[Prev in Thread] Current Thread [Next in Thread]