Salim,
Extract from http://www.netlib.org/lapack/double/dgeev.f
SUBROUTINE DGEEV( JOBVL, JOBVR, N, A, LDA, WR, WI, VL, LDVL, VR,
$ LDVR, WORK, LWORK, INFO )
* LWORK (input) INTEGER
* The dimension of the array WORK. LWORK >= max(1,3*N), and
* if JOBVL = 'V' or JOBVR = 'V', LWORK >= 4*N. For good
* performance, LWORK must generally be larger.
*
* If LWORK = -1, then a workspace query is assumed; the
routine
* only calculates the optimal size of the WORK array, returns
* this value as the first entry of the WORK array, and no
error
* message related to LWORK is issued by XERBLA.
The first call is to get the workspace (LWORK = -1, here c_m1=-1)
This first call does not do any computations, it just return the
worksapce size neede
Then you allocate the space (your workspace is w)
Then you do the second call with the appropriate workspace and
workspace size.
This second call will do the computations needed.
hope it helps
Julie
On Jun 1, 2008, at 9:18 AM, salim.harouat@Domain.Removed wrote:
Hello,
I have got a question.
Please could you tell me why in the joined file, we need to call the
function dgeev_() twice?
Thank you very much in advance
Salim
----------------------------------------------------------------
Avec Neuf, on peut envoyer jusqu'? 9Go par mail.
Decouvrez Neuf Giga
http://www.neufgiga.com
<dgeev_example.c>_______________________________________________
Lapack mailing list
Lapack@Domain.Removed
http://lists.cs.utk.edu/listinfo/lapack
**********************************************
Julie Langou; Research Associate in Computer Science
Innovative Computing Laboratory;
University of Tennessee from Denver, Colorado ;-)
julie@Domain.Removed; http://www.cs.utk.edu/~julie/
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
http://lists.cs.utk.edu/private/lapack/attachments/20080602/82aef667/attachment.html
|