| 查看: 1937 | 回复: 0 | ||
ssyyswjtu金虫 (正式写手)
|
[求助]
Fortran调用MKL进行FFT计算
|
|
我这里有一段程序代码,但计算结果是错误的,请帮我看一下错在哪个地方,谢谢! program main Use MKL_DFTI real(8)::Xre_in(7) real(8)::Xim_in(7) real(8)::Xre_out(7) real(8)::Xim_out(7) Integer :: Dim = 1, Len = 7, Status Type(DFTI_DESCRIPTOR), POINTER :: My_Desc_Handle Xre_in(1)=0.34907D0 Xre_in(2)=0.54890D0 Xre_in(3)=0.74776D0 Xre_in(4)=0.94459D0 Xre_in(5)=1.13850D0 Xre_in(6)=1.32850D0 Xre_in(7)=1.51370D0 Xim_in(1)=0.0D0 Xim_in(2)=0.0D0 Xim_in(3)=0.0D0 Xim_in(4)=0.0D0 Xim_in(5)=0.0D0 Xim_in(6)=0.0D0 Xim_in(7)=0.0D0 Status = DftiCreateDescriptor (My_Desc_Handle, DFTI_DOUBLE , DFTI_REAL, Dim, Len) Status = DftiSetValue(My_Desc_Handle, DFTI_COMPLEX_STORAGE, DFTI_REAL_REAL); Status = DftiCommitDescriptor (My_Desc_Handle) Status = DftiComputeBackward (My_Desc_Handle, Xre_in, Xim_in) Status = DftiFreeDescriptor (My_Desc_Handle) do i=1,7 print*,Xre_in(i),Xim_in(i) end do read(*,*) end program main 也就是将复数的实部和虚部分开,调用的重载形式为status = DftiComputeBackward( desc_handle, xre_inout, xim_inout ) 如果调用的重载形式为status = DftiComputeBackward( desc_handle, x_inout ),代码如下,结果是对的: program main Use MKL_DFTI complex(8)::X_in(7) complex(8)::X_out(7) Integer :: Dim = 1, Len = 7, Status Type(DFTI_DESCRIPTOR), POINTER :: My_Desc_Handle X_in(1)=(0.34907D0,0D0) X_in(2)=(0.54890D0,0D0) X_in(3)=(0.74776D0,0D0) X_in(4)=(0.94459D0,0D0) X_in(5)=(1.13850D0,0D0) X_in(6)=(1.32850D0,0D0) X_in(7)=(1.51370D0,0D0) Status = DftiCreateDescriptor (My_Desc_Handle, DFTI_DOUBLE, DFTI_COMPLEX, Dim, Len) Status = DftiSetValue(My_Desc_Handle, DFTI_PLACEMENT,DFTI_INPLACE); Status = DftiCommitDescriptor (My_Desc_Handle) Status = DftiComputeBackward(My_Desc_Handle, X_in) Status = DftiFreeDescriptor(My_Desc_Handle) do i=1,7 print*,X_in(i) end do read(*,*) end program main [ Last edited by ssyyswjtu on 2012-4-17 at 08:36 ] |
» 猜你喜欢
导师想让我从独立一作变成了共一第一
已经有9人回复
博士读完未来一定会好吗
已经有23人回复
到新单位后,换了新的研究方向,没有团队,持续积累2区以上论文,能申请到面上吗
已经有11人回复
读博
已经有4人回复
JMPT 期刊投稿流程
已经有4人回复
心脉受损
已经有5人回复
Springer期刊投稿求助
已经有4人回复
小论文投稿
已经有3人回复
申请2026年博士
已经有6人回复
找到一些相关的精华帖子,希望有用哦~
vasp结构优化出现问题:算完一个离子步后就停止
已经有12人回复
intel visual fortran中MKL如何使用,是用use module还是include?
已经有4人回复
关于 VASP 的编译经验分享
已经有16人回复
Pwscf编译出错
已经有4人回复
编译intel数学库MKL中的fftw3xf不成功
已经有6人回复
ifort(10.1.012) + MKL(10.0.2.018) + OpenMPI(1.4.4)编译并行vasp-5.2.2
已经有85人回复
[求助成功]VASP 计算 graphene 的错误
已经有15人回复
关于超级计算机的安装权限问题:不能用sudo命令,该如何是好?
已经有18人回复
ifort12下编译VASP5.2
已经有3人回复
麻烦有gotoblas的给发一份,谢!
已经有3人回复
vasp并行编译后出现错误,请大家指教
已经有23人回复
同个任务同样的节点数VASP4.6能算,而VASP5.2不能
已经有9人回复
vasp5.2的编译问题 非常感谢 !!
已经有14人回复
vasp编译通过,前台算ok,去qsub到后台,找不到libmkl_lapack.so
已经有19人回复
【求助成功】vasp5.2并行安装不上
已经有18人回复
【求助成功】求ubuntu中vasp程序安装最后一步出错!!郁闷!!!
已经有12人回复
【求助】求助 vasp.4.6安装问题
已经有4人回复
【求助】VASP考虑自旋轨道耦合的话,如何编译
已经有17人回复
【求助】vasp5.2异常退出的问题
已经有16人回复
【交流】Fortran语言答疑专帖
已经有157人回复
科研从小木虫开始,人人为我,我为人人













回复此楼
点击这里搜索更多相关资源