I don't think there is any documentation that describes uBlas mechanism itself and if you want to really see how it works I would suggest to try following the execution using a debugger.

Before that though you will need to know about the programming idiom uBlas is using known as "Expression templates". This techniques is used to build the algebraic expression tree at COMPILE time and hence allow for avoidance of temporaries amongst other things. There are a few things online but the very best resource I know that describes expression templates (with a very clean linear algebra implementation ) is " C++ Templates - The Complete Guide" by David Vandevoorde and Nicolai M. Josuttis ( Chapter 18)

Additionally the Wikipedia entry has an implementation of a sort Expression templates mechanism that is actually based on uBlas and I also find it an excellent read:

To understand how all those work you may need to consult some of those resources and most importantly make a small implementation of your own - which is not terribly difficult once you get the underlying principles.


On 04/17/2013 09:03 PM, Sathyam Vellal wrote:

I've been trying to get acquainted with the Boost.uBLAS codebase. To be honest, I face a little difficulty in trying to understand the underlying model of the design. Is there any resource which can help me ?

Thank you
Sathyam M Vellal

Computer Science and Engineering,
P.E.S. Institute of Technology,
Bangalore, India

ublas mailing list
Sent to: