> About this point: I have been wondering where the balance of GSL should > be on simplicity vs. efficiency of the code. Of course, even a simple > algorithm is better than none, but I think it would be good to offer > efficient routines in GSL. If somebody publishes a well written, > efficient eigenvalue algorithm, would it get included in GSL? Or would > it be better off as an extension library?
I think it depends on how simple and easy to understand it is. The algorithm in Golub and Van Loan is relatively simple and someone who is interested could read that book and then look at the GSL code and understand what is going on fairly easily. A year or so ago I tried to implement the current LAPACK algorithm for nonsymmetric eigenvalues, called the "Small Bulge Agressive Early Deflation" algorithm. This algorithm is easily 50-70% faster than the current GSL algorithm however it is extremely complex and it would take a non-expert several weeks to understand what the code is doing. Since that algorithm is available in LAPACK, a free library, I really don't see the need to put faster more complicated algorithms in GSL since LAPACK already has the fastest algorithms currently available. However if you want to implement these as extensions some would certainly find that useful. Patrick Alken
