Rank: 3606 based on 41 downloads (last 30 days) and 1 file submitted
photo

Tim Toolan

E-mail

Personal Profile:
Professional Interests:

 

Watch this Author's files

 

Files Posted by Tim
Updated   File Tags Downloads
(last 30 days)
Comments Rating
22 Oct 2009 lapack Easily call any LAPACK or BLAS routine from inside Matlab. Author: Tim Toolan linear algebra, blas, lapack, function, routine, interface 41 10
  • 5.0
5.0 | 6 ratings
Comments and Ratings on Tim's Files View all
Updated File Comment by Comments Rating
24 Mar 2012 lapack Easily call any LAPACK or BLAS routine from inside Matlab. Author: Tim Toolan dm

05 Feb 2012 lapack Easily call any LAPACK or BLAS routine from inside Matlab. Author: Tim Toolan Dhrubo

Also, support for PLASMA routines would be nice.

04 Feb 2012 lapack Easily call any LAPACK or BLAS routine from inside Matlab. Author: Tim Toolan Dhrubo

Hi, I have a request. Could you please also add support for SCALAPACK routines?

Regards,
Dhrubo

03 Feb 2012 lapack Easily call any LAPACK or BLAS routine from inside Matlab. Author: Tim Toolan Felipe

Qianyong Chen, I think the segfault was because lwork was too small; doing as follows doesn't seem to crash matlab. The fortranError as well as fortranError_SVD remain both numerically zero.

A = rand(118,106);

% 1st: results from direct matlab
[UM, SM, VM] = svd(A);

matlabError = max(max(abs(A-UM*SM*VM')))

% 2nd: results when using 'lapack' by Tim Toolan
[m,n] = size(A);

C = lapack('DGESVD', 'A','A',m, ...
n,A,m, zeros(n,1), zeros(m),m,zeros(n),n,zeros(1,1),-1,0)
lwork = C{end-2}(1);
C = lapack('DGESVD', 'A','A',m, ...
n,A,m, zeros(n,1), zeros(m),m,zeros(n),n,zeros(lwork,1),lwork,0);
[SF, UF, VFt] = C{[7,8,10]};
VF = VFt';

fortranError_U = max(max(abs(UM - UF)))
fortranError_V = max(max(abs(VM - VF)))
fortranError_SVD = max(abs(SF - diag(SM) ))

fortranError = max(max(abs( A - UF * SM * VF')))

02 Feb 2012 lapack Easily call any LAPACK or BLAS routine from inside Matlab. Author: Tim Toolan Dhrubo

Dude, your code rocks! You're awesome! :) I have been able to use the dsyev routine on a very large matrix (size 200k^2). It actually worked just as well, if not better, than Matlab 2011b's eig.

Contact us