- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
[Edit: Actually the program fails for values of N which are a power of 2, and works otherwise... It fails for N=8, 16, 1024 etc..., and works for 9, 1023, 4097...]
I am using Intel Fortran 10.1, Intel MKL 8.1.1 and Visual Studio .NET 2003
I have a very simple program that uses the DFT commands (see example below). This programs triggers a "Debug Assertion Failed" message when I launch it (for a Debug configuration). The calculations are properly performed, and the results are good, but upon exiting the program (after the READ(*,*) statement) the error occurs. The same thing happens for a Release configuration.
Any idea?
Thanks in advance!!
PROGRAM
TESTUSE MKL_DFTI
IMPLICIT NONE
INTEGER(4) N,STATUS,I
REAL(8)
PI,TREAL(8),ALLOCATABLE :: TIME_DATA(:)
TYPE(DFTI_DESCRIPTOR),POINTER :: DESCRIPTOR_HANDLE
PI = 4.0D+0*
DATAN(1.0D+0)N=8
ALLOCATE(TIME_DATA(N))
DO I=1,N
T = (2.0D+0*PI*DBLE(I-1)/DBLE(N))
TIME_DATA(I) = DCOS(T)+DSIN(T)+1.2*DCOS(2.0D+0*T)+2.5D+0
ENDDO
WRITE(*,'(20F10.2)') TIME_DATA
STATUS = DFTICREATEDESCRIPTOR(DESCRIPTOR_HANDLE,DFTI_DOUBLE,DFTI_REAL,1,N)
STATUS = DFTICOMMITDESCRIPTOR(DESCRIPTOR_HANDLE)
STATUS = DFTICOMPUTEFO
RWARD(DESCRIPTOR_HANDLE,TIME_DATA)
STATUS = DFTIFREEDESCRIPTOR(DESCRIPTOR_HANDLE)
READ
(*,*)END
PROGRAM
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
the problem you met looks like another issue was disscused in the Forum. Please follow the link: "__http://software.intel.com/en-us/forums//topic/60110"
Please try to use padding for your case - something like that:
ALLOCATE(TIME_DATA((N/2+1)*2))
Regards,
Gennady
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page