24小时热门版块排行榜    

查看: 1520  |  回复: 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的回帖

wlscj

木虫之王 (文坛精英)

【答案】应助回帖

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

DSYEVD 是个啥?
2楼2014-11-06 19:17:22
已阅   回复此楼   关注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的回帖

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的回帖

徐谊

木虫 (著名写手)

引用回帖:
5楼: Originally posted by wlscj at 2014-11-07 06:09:51
也不明白MKL是个啥?是你用fortran软件平台上自带的 程序库模块?
MKL里面的DSYEVD

是不是要

USE MKL?

对的,是vs自带的函数库!应该不用加use mkl吧,因为另外的函数运行就没问题,不知道为啥

[ 发自手机版 http://muchong.com/3g ]
6楼2014-11-07 09:37:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fish.yfyh

铜虫 (小有名气)

【答案】应助回帖

调用mkl库函数,只需要在编译的时候,添加调用静态库或动态库即可。例如:

$ ifort test.f90 -L/path/to/mkl/lib.a
7楼2014-11-19 14:04:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 徐谊 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[教师之家] 焦虑 +7 水冰月月野兔 2026-03-13 9/450 2026-03-16 10:00 by Quakerbird
[考研] 机械专硕调剂 +3 笨笨兔子 2026-03-12 3/150 2026-03-15 20:02 by 栗子粥?
[考研] 学硕285求调剂 +13 Wisjxn 2026-03-12 46/2300 2026-03-14 10:33 by JourneyLucky
[考研] 288求调剂 +14 王晓阳- 2026-03-09 19/950 2026-03-14 02:05 by JourneyLucky
[考研] 环境调剂 +6 晓看天暮看云 2026-03-09 6/300 2026-03-14 01:16 by JourneyLucky
[考研] 26考研调剂 +3 ying123. 2026-03-10 3/150 2026-03-14 00:18 by JourneyLucky
[考研] 0703,333分求调剂 一志愿郑州大学-物理化学 +3 李魔女斗篷 2026-03-11 3/150 2026-03-13 22:24 by JourneyLucky
[考研] 求调剂(材料与化工327) +4 爱吃香菜啦 2026-03-11 4/200 2026-03-13 22:11 by JourneyLucky
[考研] 求材料调剂 085600英一数二总分302 前三科235 精通机器学习 一志愿哈工大 +4 林yaxin 2026-03-12 4/200 2026-03-13 22:04 by 星空星月
[考研] 材料与化工085600调剂求老师收留 +9 jiaanl 2026-03-11 9/450 2026-03-13 20:22 by JourneyLucky
[考研] 材料工程调剂 +4 咪咪空空 2026-03-11 4/200 2026-03-13 19:57 by JourneyLucky
[考研] 302求调剂 +6 负心者当诛 2026-03-11 6/300 2026-03-13 16:11 by JourneyLucky
[考研] 材料专硕350 求调剂 +4 王金科 2026-03-12 4/200 2026-03-13 16:02 by ruiyingmiao
[考研] 求调剂 +3 程雨杭 2026-03-12 3/150 2026-03-13 15:06 by JourneyLucky
[考研] 285求调剂 +4 ytter 2026-03-12 4/200 2026-03-13 14:48 by jxchenghu
[考研] 070303一志愿西北大学学硕310找调剂 +3 d如愿上岸 2026-03-12 5/250 2026-03-13 10:56 by houyaoxu
[考研] 270求调剂 085600材料与化工专硕 +3 YXCT 2026-03-11 3/150 2026-03-13 10:13 by houyaoxu
[考研] 纺织、生物、化学、材料相关专业招生了 +4 耶耶业 2026-03-09 7/350 2026-03-12 19:05 by Equinoxhua
[考研] 哈工大材料324求调剂 +6 闫旭东 2026-03-10 8/400 2026-03-10 22:49 by 星空星月
[考研] 298求调剂 +3 Vv呀! 2026-03-10 3/150 2026-03-10 22:40 by 剑诗杜康
信息提示
请填处理意见