1
$\begingroup$

I need to use the built-in function Fourier, to get the Fourier transformation of a list of numbers. Unfortunately, I would need to set the second argument of the FourierParameter option to a non-integer number, and indeed the precision of the Fourier transformation I get is very low. Do you know how I could proceed to get some precise results?

Let us consider this example

\[Beta] = 10.;
l = 10^2;
\[Omega] = Table[(2 \[Pi])/\[Beta] (n + 1/2), {n, -l, l}];
Gfbegin = I/\[Omega];
Gt = Fourier[Gfbegin, FourierParameters -> {0, 2 (2 l + 1)/(2 l - 1)}];
Gf = InverseFourier[Gt,FourierParameters -> {0, 2 (2 l + 1)/(2 l - 1)}]

In principle, the list Gf should be equal to the list Gfbegin but actually the two lists are very different. On the contrary, if I use the standard FourierParameter as follows

 \[Beta] = 10.;
    l = 10^2;
    \[Omega] = Table[(2 \[Pi])/\[Beta] (n + 1/2), {n, -l, l}];
    Gfbegin = I/\[Omega];
    Gt = Fourier[Gfbegin, FourierParameters -> {0, 1}];
    Gf = InverseFourier[Gt,FourierParameters -> {0,1}]

the result is correct: the two lists Gf and Gfbegin are equal to each other.

Thank you a lot!

$\endgroup$
  • 2
    $\begingroup$ I suggest that you add a specific example, including a list of numbers to transform, the FourierParameters you use and an explanation of why you think the result is inaccurate. $\endgroup$ – mikado Jul 19 '18 at 7:08
  • $\begingroup$ Thank you very much for your comment. I added the example as you asked! $\endgroup$ – Dario Rosa Jul 19 '18 at 7:52
3
$\begingroup$

The problem is not that the precision is low, it is that the Fourier Transform, with the parameters you have given it, is not invertible. Indeed, you get a warning to this effect when you run your code:

InverseFourier::fpopt2: Warning: the discrete Fourier transform may not be invertible unless the second element of the option FourierParameters -> {0,402/199} is an integer having no factors in common with the length of the input.

$\endgroup$
  • 1
    $\begingroup$ Thank you for your answer. So far, I cannot find another choice for the parameter that makes the Fourier Transform both invertible and that makes easy to identify the list Gt with the value of the Fourier Transform evaluated at discrete times. I think the reason is due to the fact that the frequencies I am taking are semi-integers. $\endgroup$ – Dario Rosa Jul 19 '18 at 14:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.