Hi all,

I've received the following patch suggestion from Julius Ziegler. What he points out does look fishy. Since I've never worked with banded matrices in LAPACK, I hope someone on the list is better equipped to give a definitive answer.

Thanks,

Andreas

(Message translated into English)

---------- Forwarded Message ----------

Betreff: boost/numeric/bindings/lapack

Datum: Mittwoch 05 November 2008

Von: Julius Ziegler <ziegler@mrt.uka.de>

An: kloeckner@dam.brown.edu

I have identified and fixed a problem in the LAPAPCK bindings, but I'm not sure it's correct the way I did it. I'd apprecitate it if you could check the patch:

Currently in gbsv.hpp:

// if the matrix has kl lower and ku upper diagonals, then we should have

// allocated kl lower and kl+ku upper diagonals

int const kl = traits::matrix_lower_bandwidth (a);

int const ku = traits::matrix_upper_bandwidth (a) - kl;

int const ld = traits::leading_dimension (a);

That makes no sense, and so I've changed it to read:

// if the matrix has kl lower and ku upper diagonals, then we should have

// allocated kl lower and kl+ku upper diagonals

int const kl = traits::matrix_lower_bandwidth (a);

int const ku = traits::matrix_upper_bandwidth (a);

int const ld = traits::leading_dimension (a);

Julius