approximating Fourier integrals with discrete Fourier transforms


Suppose we have a continuous functionMathworldPlanetmath f:ν for which we want to numerically compute the continuous Fourier transformMathworldPlanetmath:

f^(ξ)=νf(x)e-2πiξx𝑑x,ξν.

Assume that either the function f is supported inside the compact rectangle C=[a1,b1]××[aν,bν], or that the Fourier integral is well approximated by truncating the domain to C.

We develop an approximation to f^ based on the discrete Fourier transformMathworldPlanetmath (which can be computed efficiently using the fast Fourier transform algorithmMathworldPlanetmath), and analyze the error in making this approximation.

Derivation

Performing the linear substitution

tj=x-ajbj-aj,j=1,,ν,

we find that

Cf(x)e-2πiξx𝑑x
= Vol(C)e-2πiξa0101g(t)e-2πi((b1-a1)ξ1t1++(bν-aν)ξνtν)𝑑t1𝑑tν
= Vol(C)e-2πiξag^((b1-a1)ξ1,,(bν-aν)ξν),

where

g(t1,,tν)=f(a1+(b1-a1)t1,,aν+(bν-aν)tν),tj[0,1],

and g^ denotes the Fourier transform of g on the unit cube [0,1]ν.

Let u denote the vector with componentsPlanetmathPlanetmath u(k1,,kν)=g(k1/N,,kν/N), for kj=0,,N-1. The discrete Fourier transform of u is

u^(l)=k{0,,N-1}νu(k)e-2πikl/N,l={0,,N-1}ν,

and approximates Nνg^(l) since it is a Riemann sum (step size 1/N) for the Fourier integral.

Therefore, for lj=0,,N-1, we have the approximation:

f^(l1b1-a1,,lνbν-aν)Vol(C)Nνe-2πi(a1l1b1-a1++aνlνbν-aν)u^(l).

Analysing the error

Assume that g can be represented by a pointwise-convergent11 Since the discrete Fourier transform requires sampling of points, 𝐋2 convergence of the Fourier seriesMathworldPlanetmath is not sufficient. Also, the Fourier series may only be conditionally convergent. If there are difficulties in assuring its convergence, Fejér summation can be used instead in this analysis. Fourier series:

g(t)=kνg,EkEk(t),

where

Ek(t)=e2πikt,α,β=[0,1]να(t)β(t)¯𝑑t.

The Fourier coefficient of g is g^(l)=g,El, and in contrast u^(l)=Nνg,EkN, where:

α,βN=1Nνk{0,,N-1}να(k/N)β(k/N)¯

is a positive semi-definite inner product.

We have the exact formula:

f^(l1b1-a1,,lνbν-aν)=Vol(C)e-2πi(a1l1b1-a1++aνlνbν-aν)g^(l);

and we wish to know what error is introduced if we were to replace g^(l)=g,El by the discrete version of the inner productMathworldPlanetmath g,ElN=u^(l)/Nν.

Expand g,ElN as:

g,ElN=kνg,EkEk,ElN=kνg,EkEk,ElN.

Since Ek,ElN is 1 if kjlj(modN) for all j, and is 0 otherwise, the discrete inner product reduces to:

g,ElN=kνg,El+kN=g,El+kν{0}g,El+kN.

In other words, the approximation entails replacing the true Fourier coefficient g^(l) with the same coefficient plus other Fourier coefficients g,El+kN corresponding to higher frequencies, in multiplesMathworldPlanetmath of N. The magnitude of the approximation error for f^ thus depends on how fast the partial sums of the Fourier coefficients g,Ek decay to zero.

Title approximating Fourier integrals with discrete Fourier transforms
Canonical name ApproximatingFourierIntegralsWithDiscreteFourierTransforms
Date of creation 2013-03-22 16:28:23
Last modified on 2013-03-22 16:28:23
Owner stevecheng (10074)
Last modified by stevecheng (10074)
Numerical id 9
Author stevecheng (10074)
Entry type Derivation
Classification msc 42B10
Classification msc 65T50
Classification msc 42A38
Related topic DiscreteTimeFourierTransformInRelationWithItsContinousTimeFourierTransfrom