Turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- Intel Community
- Software
- Software Development SDKs and Libraries
- Intel® oneAPI Math Kernel Library
- sytrd is not recognized by lapack90

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page

BABAK

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-20-2016
07:23 AM

55 Views

sytrd is not recognized by lapack90

Hi,

I am trying to use LAPACK's "sytrd" subroutine in my code, but it is not recognized. I am trying the following simple code:

program comp USE mkl95_lapack USE mkl95_PRECISION USE mkl95_BLAS implicit none real, dimension(2,2) :: A integer, dimension(1) :: t A = reshape((/-5., 2., 2., -2./),(/2,2/)) call sytrd(A, t) end program comp

This is the error I get:

**error #6285: There is no matching specific subroutine for this generic subroutine call. [SYTRD] **

But when I use another of LAPACK's subroutines like "getrf", everything's fine:

program comp USE mkl95_lapack USE mkl95_PRECISION USE mkl95_BLAS implicit none real, dimension(2,2) :: A integer, dimension(2) :: t A = reshape((/-5., 2., 2., -2./),(/2,2/)) call getrf(A, t) end program comp

What might cause this problem?

1 Solution

Steven_L_Intel1

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-20-2016
08:00 AM

55 Views

Link Copied

5 Replies

Steven_L_Intel1

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-20-2016
08:00 AM

56 Views

mecej4

Black Belt

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-20-2016
08:25 AM

55 Views

BABAK

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-20-2016
12:37 PM

55 Views

Thanks. I changed the type of vector (t) to real and it worked.

But based on the help of the program I try the following to find eigenvalues and eigenvectors of my matrix:

program comp USE mkl95_lapack USE mkl95_PRECISION USE mkl95_BLAS implicit none real, dimension(2,2) :: A real, dimension(1) :: t real, dimension(2) :: c A = reshape((/-5., 2., 2., -2./),(/2,2/)) call sytrd(A, t) call orgtr(A, t) call rsteqr(c, t, A) write(*,*) c end program comp

But the results aren't correct. I only can deduce this implementation from the program's help for lapack95. What would the correct way for doing this implementation?

Steven_L_Intel1

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-20-2016
12:45 PM

55 Views

I am going to move this to the MKL forum.

Ying_H_Intel

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-29-2016
06:40 PM

55 Views

Hi BABAK,

Meje4 seems reply the question in https://software.intel.com/en-us/forums/intel-math-kernel-library/topic/635226. you may refer to them.

and if you'd like to use Lapack driver routine, you may try

?syev

Computes all eigenvalues and, optionally,

eigenvectors of a real symmetric matrix.

Syntax

call ssyev(jobz, uplo, n, a, lda, w, work, lwork, info)

call dsyev(jobz, uplo, n, a, lda, w, work, lwork, info)

call syev(a, w [,jobz] [,uplo] [,info])

Best Regards,

Ying

Topic Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

For more complete information about compiler optimizations, see our Optimization Notice.