From: Arnd B. <arn...@we...> - 2006-06-28 09:16:16
|
Hi, On Wed, 28 Jun 2006, Jon Wright wrote: > > >>This strikes me as a little bit odd. Why not just provide the best-performing > >>function to both SciPy and NumPy? Would NumPy be more difficult to install > >>if the SciPy algorithm for inv() was incorporated? > >> > >> > Having spent a few days recently trying out various different > eigenvector routines in Lapack I would have greatly appreciated having a > choice of which one to use which routine are you trying to use? > from without having to create my own > wrappers, compiling atlas and lapack under windows (ouch). I noted that > Numeric (24.2) seemed to be converting Float32 to double meaning my > problem no longer fits in memory, which was the motivation for the work. > Poking around in the svn of numpy.linalg appears to find the same lapack > routine as Numeric (dsyevd). Perhaps I miss something in the code logic? if you can convince the code to get ssyevd instead of dsyevd it might do what you want> > The divide and conquer (*evd) uses more memory than the (*ev), as well > as a factor of 2 for float/double, hence my problem, and the reason why > "best performing" is a hard choice. I thought matlab has a look at the > matrix dimensions and problem before deciding what to do (eg: the \ > operator). Hmm, this is a hard choice, which might better left in the hands of the knowledgeable user. (e.g., aren't the divide and conquer routines substantially faster?) Best, Arnd |