<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Hello, in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/complex-FFT-in-2-dimensions/m-p/1158776#M27766</link>
    <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;Thank you for your reply.&lt;/P&gt;&lt;P&gt;That did the trick!&lt;/P&gt;&lt;P&gt;The examples you pointed to me are much more complete that what is online.&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;</description>
    <pubDate>Fri, 16 Nov 2018 15:57:34 GMT</pubDate>
    <dc:creator>gambron__philippe</dc:creator>
    <dc:date>2018-11-16T15:57:34Z</dc:date>
    <item>
      <title>complex FFT in 2 dimensions</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/complex-FFT-in-2-dimensions/m-p/1158774#M27764</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I am trying compute a complex to complex FFT in 2 dimensions but the values I obtain are not correct (only the first 2 are). This is not a normalisation issue. The transform I obtain is not simply proportional to the correct one.&lt;/P&gt;&lt;P&gt;I have made a minimal example that reproduces the problem. The signal corresponds to a square whose corners are set to 1+i while the remaining values are set to 0. I have also tried with an out-of-place transform but the same problem occurs. You will find the source code below.&lt;/P&gt;&lt;P&gt;I suppose I have made some silly mistake somewhere (I am a beginner with the MKL) but I can't figure out where.&lt;/P&gt;&lt;P&gt;Thank you!&lt;/P&gt;&lt;P&gt;#include &amp;lt;mkl_dfti.h&amp;gt;&lt;BR /&gt;#include &amp;lt;iostream&amp;gt;&lt;/P&gt;&lt;P&gt;int main(){&lt;/P&gt;&lt;P&gt;&amp;nbsp; long int n[2]={8, 8};&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; double signal[128]={1,1, 1,1, 0,0, 0,0, 0,0, 0,0, 1,1, 1,1,&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1,1, 1,1, 0,0, 0,0, 0,0, 0,0, 1,1, 1,1,&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0,&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0,&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0,&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 0,0,&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1,1, 1,1, 0,0, 0,0, 0,0, 0,0, 1,1, 1,1,&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1,1, 1,1, 0,0, 0,0, 0,0, 0,0, 1,1, 1,1};&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; DFTI_DESCRIPTOR_HANDLE descriptor_handle;&lt;BR /&gt;&amp;nbsp; DftiCreateDescriptor(&amp;amp;descriptor_handle, DFTI_DOUBLE, DFTI_COMPLEX, 2, n);&lt;BR /&gt;&amp;nbsp; DftiErrorMessage(DftiCommitDescriptor(descriptor_handle));&lt;/P&gt;&lt;P&gt;&amp;nbsp; DftiComputeForward(descriptor_handle, signal);&lt;/P&gt;&lt;P&gt;&amp;nbsp; for(int i=0; i&amp;lt;64; ++i){&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; std::cout &amp;lt;&amp;lt; signal[2*i] &amp;lt;&amp;lt; " " &amp;lt;&amp;lt; signal[2*i+1] &amp;lt;&amp;lt; "\n";&lt;BR /&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp; DftiFreeDescriptor(&amp;amp;descriptor_handle);&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; return 0;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 15 Nov 2018 16:57:32 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/complex-FFT-in-2-dimensions/m-p/1158774#M27764</guid>
      <dc:creator>gambron__philippe</dc:creator>
      <dc:date>2018-11-15T16:57:32Z</dc:date>
    </item>
    <item>
      <title>Philippe, could you please</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/complex-FFT-in-2-dimensions/m-p/1158775#M27765</link>
      <description>&lt;P&gt;Philippe, could you please look at the MKL FFT double-precision complex-to-complex in-place 2D example which&amp;nbsp; you may find out in mklroot\examples\dftc\source\directory. Please look at basic_dp_complex_dft_2d.c case. Hope this example will help you.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 16 Nov 2018 10:53:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/complex-FFT-in-2-dimensions/m-p/1158775#M27765</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2018-11-16T10:53:00Z</dc:date>
    </item>
    <item>
      <title>Hello,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/complex-FFT-in-2-dimensions/m-p/1158776#M27766</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;Thank you for your reply.&lt;/P&gt;&lt;P&gt;That did the trick!&lt;/P&gt;&lt;P&gt;The examples you pointed to me are much more complete that what is online.&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;</description>
      <pubDate>Fri, 16 Nov 2018 15:57:34 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/complex-FFT-in-2-dimensions/m-p/1158776#M27766</guid>
      <dc:creator>gambron__philippe</dc:creator>
      <dc:date>2018-11-16T15:57:34Z</dc:date>
    </item>
  </channel>
</rss>

