- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I'm having some problems in using MKL_DFTI tool in IVF2020. I wrote a few lines of Fortran code about 2D FFT according to some examples in Intel® Math Kernel Library Developer Reference.However, there are two errors saying:
error #6284: There is no matching specific function for this generic function reference. [DFTICREATEDESCRIPTOR]
error #6284: There is no matching specific function for this generic function reference. [DFTISETVALUE]
I checked it carefully in many times, but found no answer.
Could anyone help me? Thanks very much!
The corresponding source code is attached.
!!!!!!!2DFFT
program main
use mkl_dfti
implicit none
integer, parameter :: Nbeads=4
real(kind=8) :: X_2D(Nbeads,Nbeads)=(/1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16/)
complex(kind=8) :: Y_2D(Nbeads/2+1, Nbeads)
real(kind=8) :: X(Nbeads*Nbeads)
complex(kind=8) :: Y((Nbeads/2+1)*Nbeads)
equivalence (X_2D, X)
equivalence (Y_2D, Y)
type(DFTI_DESCRIPTOR), POINTER :: My_fft
integer(kind=8) :: Status, L(2)=(/Nbeads,Nbeads/)
integer(kind=8) :: strides_out(3)=(/0, 1, Nbeads/2+1/)
Status=DftiCreateDescriptor(My_fft, DFTI_DOUBLE, DFTI_REAL, 2, L)
Status=DftiSetValue(My_fft, DFTI_CONJUGATE_EVEN_STORAGE, DFTI_COMPLEX_COMPLEX)
Status=DftiSetValue(My_fft, DFTI_PLACEMENT, DFTI_NOT_INPLACE)
Status=DftiSetValue(My_fft, DFTI_OUTPUT_STRIDES, strides_out)
Status=DftiCommitDescriptor(My_fft)
Status=DftiComputeForward(My_fft, X, Y)
Status=DftiFreeDescriptor(My_fft)
write(*,*) Y
pause
end
!!!!!!!!!!!!
Fu.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Make sure to match the argument types with the specified types in the MKL documentation for your version; L and strides_out should probably be default (4-byte) integers.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Make sure to match the argument types with the specified types in the MKL documentation for your version; L and strides_out should probably be default (4-byte) integers.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Blackbelt,
Thanks for your help very much. It has done the trick.
Best Regards,
Fu
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page