|
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