- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear MKL forum,
I solve such a problem. Can you help me please?
Lets have a function Y=∑ k=−∞ ∞ iYneikπy and then I have a function which is defined as X=∑k=−∞ ∞ ik2Yneikπ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 Yn, right? And then I think I will do the backward FFT of function defined as f=ik2Yn. But what have I do with the summation index k here in the function f?
It is right that FFT(ik2Yn)=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
- 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
- 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
- Report Inappropriate Content
>>>It is right that FFT(ik2Yn)=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
- 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
- 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
- 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