24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1389  |  回复: 6
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

徐谊

木虫 (著名写手)

[求助] fortran求矩阵本征值出错已有2人参与

在用Fortran求矩阵本征值的时候,调用了MKL里面的DSYEVD函数,程序可以运行,但是好像并没有执行这一语句。
程序如下:
CODE:
program test_mkl
   
      
      IMPLICIT NONE
      INTEGER          N
      PARAMETER        ( N = 2 )
      INTEGER          LDA
      PARAMETER        ( LDA = N )
      INTEGER          LWMAX
      PARAMETER        ( LWMAX = 1000 )

      INTEGER          INFO, LWORK, LIWORK

      
      INTEGER          IWORK( LWMAX )
      DOUBLE PRECISION A( LDA, N ), W( N ), WORK( LWMAX )
      

      DATA A/1,3,3,4/
      
      WRITE(*,*)'DSYEVD Example Program Results'
      
      LWORK = -1
      LIWORK = -1
     
      CALL DSYEVD ( 'V', 'U', N, A, LDA, W, WORK, LWORK,IWORK, LIWORK, INFO )
      
         
     ! Print eigenvalues.
      PRINT *, 'Eigenvalues', W

     ! Print eigenvectors.

      PRINT *, 'Eigenvectors (stored columnwise)', A
      
      STOP
   
    end

程序运行没问题!  但是CALL DSYEVD ( 'V', 'U', N, A, LDA, W, WORK, LWORK,IWORK, LIWORK, INFO ) 这一句貌似没有执行,因为返回的结果还是原来的矩阵!
请问这是什么问题呢?谢谢!

fortran求矩阵本征值出错
1.jpg
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

徐谊

木虫 (著名写手)

引用回帖:
2楼: Originally posted by wlscj at 2014-11-06 19:17:22
调用了MKL里面的DSYEVD函数?

DSYEVD 是个啥?

嗯,是的。求本征值的
?syevd
Computes all eigenvalues and (optionally) all
eigenvectors of a real symmetric matrix using divide
and conquer algorithm.
3楼2014-11-06 19:23:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 7 个回答

wlscj

木虫之王 (文坛精英)

【答案】应助回帖

感谢参与,应助指数 +1
调用了MKL里面的DSYEVD函数?

DSYEVD 是个啥?
2楼2014-11-06 19:17:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wlscj

木虫之王 (文坛精英)

引用回帖:
3楼: Originally posted by 徐谊 at 2014-11-06 19:23:50
嗯,是的。求本征值的
?syevd
Computes all eigenvalues and (optionally) all
eigenvectors of a real symmetric matrix using divide
and conquer algorithm....

没看到这个子程序啊

subroutine DSYEVD ( 'V', 'U', N, A, LDA, W, WORK, LWORK,IWORK, LIWORK, INFO )
4楼2014-11-07 06:03:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wlscj

木虫之王 (文坛精英)

【答案】应助回帖

也不明白MKL是个啥?是你用fortran软件平台上自带的 程序库模块?
MKL里面的DSYEVD

是不是要

USE MKL?
5楼2014-11-07 06:09:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见