Boost logo

Ublas :

Subject: [ublas] [bindings] Lapack generator update
From: Rutger ter Borg (rutger_at_[hidden])
Date: 2008-12-16 10:17:08


Guys,

Please find attached two files generated with the latest bindings generator.
These are examples for gelsd and heevx. I know it is not perfect yet, it
doesn't compile, but it has made some significant progress into the next
abstraction level. I thought a message around this topic would draw your
interest :-).

I have to come to the conclusion that we need to introduce a type
(=struct/class) for each lapack subroutine. Only this will enable
compile-time selection of lapack routines, such as proposed for
lapack::eigen. I see that in some of the bindings
the class-structure already is in use to dispatch to different value_types
(usually no. workspaces at the moment).

The specialization path I have implemented right now is the following:

 1. value_type (real/complex) template class specialization, using
    Boost.Enable_if
 2. user-defined workspace, contains asserts
  2a. minimal workspace, creates a workspaceN, proceeds through 2.
  2b. optimal workspace, creates a workspaceN, proceeds through 2.

Also see files attached. Please let me know your thoughts, suggestions,
ideas, etc.

Cheers,

Rutger