← Back to team overview

dolfin team mailing list archive

Re: [HG] merge

 

I'll take a look.

/Anders

On Wed, Apr 05, 2006 at 04:04:50PM +0200, Garth N. Wells wrote:
> I've added a bunch of tests for DenseMatrix. You can find them in
> src/test.
> 
> I've tested (a) DenseMatrix derived from uBlas, (b) DenseMatrix class
> derived from GenericMatrix and uBlas, and (c) NewMatrix class with a
> pointer to GenericMatrix. 
> 
> In summary,
> 
> - When using wrapper functions for uBlas to access individual elements,
> the overhead is exactly a factor 2. I guess this is not surprising -
> double the number of function calls.
> 
> - When wrapping other functions, the overhead is negligible.
> 
> - For the "=" operator, it faster when this is wrapped in the derived
> classes.
>      boost::numeric::ublas::matrix<real>& operator= (DenseMatrix& A)
>      { return boost::numeric::ublas::matrix<real>::operator = (A) ; };
> I don't know why this is??
> 
> An approach could be to design Matrix class which is similar to Function
> (but it would be simpler) so that both dense and sparse matrices can be
> assembled, but not supply virtual functions to access individual
> elements. This is to avoid the need to wrap the functions for accessing
> elements. When a user wants to work directly with dense matrices (or
> sparse matrices), they can create a DenseMatrix which allows access to
> all the uBlas functions. Not a nice solution, but any ideas?
> 
> Garth 
> 
> 
> 
> 
> Garth
> 
>    
> 
> 
> 
> On Wed, 2006-04-05 at 14:49 +0200, DOLFIN wrote:
> > One or more new changesets pushed to the primary DOLFIN repository.
> > A short summary of the last three changesets is included below.
> > 
> > changeset:   1843:a665e3cd78c7ec75ef59cf6f61f26c24630a1f22
> > tag:         tip
> > parent:      1842:05da1868689e5ec15c64172ce8f8d56ab9a65ad0
> > parent:      1841:80c6859e328196bae99a9f15d475a3fae5b60f83
> > user:        "Garth N. Wells <g.n.wells@xxxxxxxxxx>"
> > date:        Wed Apr  5 14:48:52 2006 +0200
> > files:       
> > description:
> > merge
> > 
> > 
> > changeset:   1842:05da1868689e5ec15c64172ce8f8d56ab9a65ad0
> > parent:      1840:68273b564ad1f4a511c52cb77819dfc891ea12a6
> > user:        "Garth N. Wells <g.n.wells@xxxxxxxxxx>"
> > date:        Wed Apr  5 14:46:59 2006 +0200
> > files:       src/kernel/la/DenseMatrix.cpp src/kernel/la/dolfin/DenseMatrix.h src/test/main.cpp
> > description:
> > Testing of DenseMatrix class.
> > 
> > 
> > changeset:   1841:80c6859e328196bae99a9f15d475a3fae5b60f83
> > user:        "Anders Logg <logg@xxxxxxxxx>"
> > date:        Tue Apr  4 23:35:57 2006 -0500
> > files:       ChangeLog TODO
> > description:
> > Update ChangeLog and TODO list
> > 
> > 
> > -------------------------------------------------------
> > For more details, visit http://www.fenics.org/hg/dolfin
> > 
> > _______________________________________________
> > DOLFIN-dev mailing list
> > DOLFIN-dev@xxxxxxxxxx
> > http://www.fenics.org/cgi-bin/mailman/listinfo/dolfin-dev
> 
> 
> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev@xxxxxxxxxx
> http://www.fenics.org/cgi-bin/mailman/listinfo/dolfin-dev
> 

-- 
Anders Logg
Research Assistant Professor
Toyota Technological Institute at Chicago
http://www.tti-c.org/logg/



References