- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Dear MKL forum,

I solve such a problem. Can you help me please?

Lets have a function Y=∑ _{k=−∞} ^{∞} iY_{n}e^{ikπy} and then I have a function which is defined as X=∑_{k=−∞} ^{∞} ik^{2}Y_{n}e^{ikπy}.

I know the *Y*. The *i* is imaginary unit.

How can I compute the *X*? I think I do the FFT on *Y* and obtain thus the Y_{n}, right? And then I think I will do the backward FFT of function defined as f=ik^{2}Y_{n}. But what have I do with the summation index *k* here in the function *f*?

It is right that FFT(ik^{2}Y_{n})=X?

I'm not sure absolutely what to do with *k* when the FFT sum is summated per *k*. Or can I change something in MKL FFT directly?

Link Copied

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Hi, please give me a day to think about how to do this using MKL and/or a combination with VML and I will get back to you right away.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

many thanks for your time, I'm looking forward - this is really a problem for me...

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

>>>It is right that FFT(ik^{2}Y_{n})=X?>>>

I do not know if you will get X , but in tthis case you are doing Inverse FFT on already transformed function so you will get Y.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Hi, just letting you know that I am still thinking about an elegant way to do this problem. It is turning out to be harder than I thought, and I thank you for coming up with this situation. Sorry it is taking awhile to figure out. From the first glance, I don't think we can support the sum with k^2, it is not and FFT, but I think it still may be possible to compute this in a different way still using MKL.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

You have Y, the Fourier transform of Yn.

You want to compute X which is (or rather seems to be) the convolution of Y and some function whose Fourier transform is k2. If this is the case, then our recommendation is the following:

- take inverse Fourier of Y to obtain Yn

- compute elementwise multiplication k2 and y (say result is tmp)

- finally compute FFT of tmp to obtain X

MKL can do the FFT, but the elementwise multiplication of k2 and Yn can be computed by a simple loop. Use the O3 compiler optimization to get the best results out of that loop.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

ah yes! many many thanks!

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page