This is the mail archive of the gsl-discuss@sourceware.org mailing list for the GSL project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Help-gsl] sparse matrices (again)


On Sat, May 05, 2007 at 04:05:08PM +0400, Andrew Makhorin wrote:
> >> I am wondering if it is planned to eventually provide GSL with general
> >> sparse matrix routines (e.g. like those ones which are included in NAG,
> >> ESSL, or Harwell Library)?
> 
> > So far we haven't added sparse matrices because it seemed like
> > this would require several sparse matrix representations to be
> > implemented in order to be useful, each with their own functions.
[snip]
> 
> As it seems to me, it would be very useful to provide GSL at least
> with data structures defining three most commonly used formats for
> general sparse matrices, namely, coordinate format, compressed row
> storage, and compressed column storage, as well as two formats for
> sparse vectors based on compressed vector storage, and a minimal set
> of some basic functions. This would standardize representation of
> sparse objects within the GSL library and make it possible to use
> such data structures on developing sparse linear algebra software
> based on GSL.
> 
> Thank you,
> 
> Andrew Makhorin

Something like this exists as the NIST sparse BLAS:
http://math.nist.gov/spblas/

Perhaps the GSL could 
- include this code (verbatim would make 2800 lines of C), and compile it as
  libgslspblas.so, to complement libgslcblas.so (I have no idea if licensing
  would get in the way.)
- wrap it in a manner similar to gsl_matrix, to provide 
  - element access
  - simple stats (min, max, mean)
  - basic I/O (e.g.  Harwell-Boeing)
  - vector scatter / gather
  - matrix-vector multiply, (matrix-matrix multiply?)

Would these nuts and bolts make progress toward providing sparse solvers though
the GSL?  Would they be useful to many?

Cheers,

James Bergstra
-- 
http://www-etud.iro.umontreal.ca/~bergstrj


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]