lapack routines for eigen vector calculation

Open discussion regarding features, bugs, issues, vendors, etc.

lapack routines for eigen vector calculation

Postby niksinghania » Thu Apr 07, 2011 4:10 am

Hi Everybody,
I was going through the code
Code: Select all
zgeev.h, zgeev.c: for asymmetric dense complex matrix eigenvector problems

which was posted on http://www-heller.harvard.edu/people/shaw/programs/lapack.html

The file zgeev.h had an extern 'c' function reference

Code: Select all
extern "C" void zgeev_(char *jobvl, char *jobvr, int *n, complex<double> *a,
                       int *lda, complex<double> *w, complex<double> *vl,
                       int *ldvl, complex<double> *vr, int *ldvr,
                       complex<double> *work, int *lwork, double *rwork,
                       int *info);

I don't know where the actual reference is, Is it in the actual lapack routine for matrix diagonalisation.
I was trying to develop a stand alone code so that we can use open CL for parallelisation. The lapack routines for C have too much library dependency and it will take some time to strip all of those dependecy and linkings.
I am sorry if i am missing something obvious since i am naive to these type of things. Any help in any form would be very much appreciated.
Thanks in advance.
niksinghania
 
Posts: 3
Joined: Thu Apr 07, 2011 4:05 am

Re: lapack routines for eigen vector calculation

Postby admin » Thu Apr 07, 2011 4:19 am

Yes this is a reference to the actual routine LAPACK library that is in FORTRAN.
LAPACK is available for download at http://www.netlib.org/lapack
You have also the possibility to download only the routine and its dependence (you will still need a BLAS library) see http://www.netlib.org/lapack/complex16/

We have other LAPACK related projects, you may want to check those:
- ScaLAPACK : http://netlib.org/scalapack/ for distributed memory
- PLASMA: http://icl.cs.utk.edu/plasma/ for Scalable Multi-core Architectures
- MAGMA http://icl.cs.utk.edu/magma/ for heterogeneous/hybrid architectures, starting with current "Multicore+GPU" systems.

Julie
admin
Site Admin
 
Posts: 502
Joined: Wed Dec 08, 2004 7:07 pm

Re: lapack routines for eigen vector calculation

Postby niksinghania » Mon Apr 11, 2011 5:27 am

If I am working in C/C++ , do i still need fortran routines?? I downloaded the files from the http://www.netlib.org/cgi-bin/netlibfiles.pl?filename=/lapack/complex16/zheevr.f, now to link the files do i need to compile, or just put the files in that folder for it to work. I went through the particular fortran file but it contains no such routine.
Please help me out.
A totally different question - I was going through Scalapack , it seems it is for parallelization written in mpi and can be used on Clusters, Am I right?
niksinghania
 
Posts: 3
Joined: Thu Apr 07, 2011 4:05 am

Re: lapack routines for eigen vector calculation

Postby niksinghania » Mon Apr 18, 2011 5:46 am

Please anyone help in above problem , I am running out of time..
Thanks in Advance
niksinghania
 
Posts: 3
Joined: Thu Apr 07, 2011 4:05 am

Re: lapack routines for eigen vector calculation

Postby admin » Mon Apr 18, 2011 10:04 pm

If I am working in C/C++ , do i still need fortran routines??

Yes!
http://www.netlib.org/cgi-bin/netlibfil ... 6/zheevr.f works for me. (look into the complex16 folder)
Best is to download the whole LAPACK library from http://www.netlib.org/lapack
You will also need a BLAS library.

To work in C/C++, you may want to use the Standard C APIs for LAPACK http://www.netlib.org/lapack/#_standard ... for_lapack

A totally different question - I was going through Scalapack , it seems it is for parallelization written in mpi and can be used on Clusters, Am I right?

Yes you are.
admin
Site Admin
 
Posts: 502
Joined: Wed Dec 08, 2004 7:07 pm


Return to User Discussion

Who is online

Users browsing this forum: Google [Bot] and 1 guest