I have an issue that I hope someone here could shed some light on. I am a new user, so presumably the issue is that I do not understand the workings of Fortran properly.
The problem occurs when I call the MKL LAPACK subroutine HEGVD and pass the ITYPE parameter to it.
I have included a small piece of code that shows the problem (and the makefile that I used to compile it all with - I had to put a filetype on it, otherwise the uploader here wouldn't eat it :-) )
The first call to HEGVD gives no errors, but the outputted eigenvalues are wrong (zeros). The second call to HEGVD, however, gives me the error "MKL ERROR: Parameter 1 was incorrect on entry to ZHEGVD" and does not return either eigenvalues or eigenvectors.
If I then remove the "PRINT*,E" between calls, both calls goes through without giving any errors.
If i instead remove the second call to HEGVD, the first call actually gives me the correct eigenvalues.
In lager code I have also had the problem that HEGVD calls would only work when I didn't call specific other subroutines that I've written. Or that I had to define the itype variable in a different way.
Can anyone shed some light on what I'm doing wrong here?