Boost logo

Ublas :

Subject: Re: [ublas] [bindings] New traits system
From: Jesse Perla (jesseperla_at_[hidden])
Date: 2010-01-08 15:00:47


Rutger ter Borg <rutger <at> terborg.net> writes:

> Dear all,
>
> Herewith some news surrounding the numeric_bindings. I've rewritten the
> traits part from the ground up, with simplicity, flexibility and
efficiency
> in mind.

Looks great so far Rutger!

Assuming these new traits are on the trunk in the sandbox, I have upgraded
them
with the bindings. I ran into no regressions with my existing code, and a
few
things started working that hadn't before. I have mostly been working with
the
linear least squares routines in LAPACK, which are working very well.

One thing that didn't work (and may still be missing) are traits for
triangular
matrices. Both packed storage and otherwise.

In particular, trtri, using normal matrix storage needs an uplo tag. Since
this
wouldn't be available for a regular ublas::matrix, I assume I need to use
the
ublas::triangular_adaptor to add on a tag. The trait is not picked up (or
implemented?) for this type.

Similarly, with tptri requiring packed storage, I used a
ublas::triangular_matrix, but it didn't hit the "uplo" tag.

Anyways, these two routines are not essential for me immediately, just
wanted to
bring it up in case it was a regression rather than an incomplete feature.

Also, I have a question: If combined with "auto" and "decltype", and a
couple
of wrapper functions around result_of::, the traits are looking
suspiciously
close to a generic interface for linear algebra (like GLAS?).

This sure would be nice to have in one form or another. Do you see this as
part
of the traits system? I sure would love to write code independent of
matrix
libraries.

-Jesse