Subject: Re: [boost] different matrix library?
From: joel (joel.falcou_at_[hidden])
Date: 2009-08-17 02:51:27
Rutger ter Borg wrote:
> in the second case you say to use the upper triangular part, and make that
> pos def. in my work for writing a python translator from LAPACK's Fortran
> source base to C++ bindings code, I've come across the specializations
> available in LAPACK, that might give a clue for an exhaustive list and write
> down a good set of orthogonal concepts (e.g., storage traits, structure
> traits, math properties, etc.).
Missed this part. NT2 has the following concepts as matrix settings.
storage mode : conventional (aka dense) and packed (as LAPACK packed)
shape : full diagonal, tridiagonal, upper/lower_triangular etc... Note
that you can have a diagonal matrix with no packed representation.
memory allocation : dynamic or static, dynamic use NRC allocation at
runtime, static use NRC allcoation of boost::array
dimension : 2D,...,nD
indexing : numerical value of base idnex. 1 by default to mimic FORTRAN
can be set to any signed value (0 = C indexing)
All those things are usable as policy types and are checked for
non-sensical combination at compile-time.
We pondered adding mathematical traits but we foudn no way to enforce
them properly without sacrifying performances.
-- ___________________________________________ Joel Falcou - Assistant Professor PARALL Team - LRI - Universite Paris Sud XI Tel : (+33)1 69 15 66 35
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk