Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
7157 Discussions

problem with multiple FFT when DFTI_PLACEMENT is NOT_INPLACE

ringlery
Beginner
602 Views

Greetings,

I have an array which contains evenly spaced data for multiple FFT's. The FFT yields the proper results as long as the results are placed in the original array. If I change the DFTI_PLACEMENT value to DFTI_NOT_INPLACE then only the first FFT is calculated and placed in the new array. Here's the code which performs the FFT:

DFTI_DESCRIPTOR *handle;

long status;

int mult = nz;

status = DftiCreateDescriptor(&handle, DFTI_DOUBLE, DFTI_COMPLEX,1, ntheta);

status = DftiSetValue(handle, DFTI_PLACEMENT, DFTI_NOT_INPLACE);

status = DftiSetValue(handle, DFTI_FORWARD_SCALE, 1./double(ntheta));

status = DftiSetValue(handle, DFTI_NUMBER_OF_TRANSFORMS, nz);

status = DftiSetValue(handle, DFTI_INPUT_DISTANCE, ntheta);

status = DftiCommitDescriptor(handle);

status = DftiComputeForward(handle, sidewall,fftsidewall);

status = DftiFreeDescriptor(&handle);

Any assistance would be appreciated. I should also mention that I'm running this on an OSX 10.5.5 machine and using the MKL which comes with the 11.0.056 intel c++ compiler. I'm using the 64-bit libraries, and they have been dynamically linked.

0 Kudos
2 Replies
Dmitry_B_Intel
Employee
602 Views

Perhaps, adding DftiSetValue(handle,DFTI_OUTPUT_DISTANCE,ntheta) will help.

Dima

0 Kudos
ringlery
Beginner
602 Views

Perhaps, adding DftiSetValue(handle,DFTI_OUTPUT_DISTANCE,ntheta) will help.

Dima

Yup, that worked perfectly. Thanks for your help!

0 Kudos
Reply