approximating Fourier integrals with discrete Fourier transforms
Suppose we have a continuous function![]()
for which we want to numericallycompute the continuous Fourier transform
![]()
:
Assume that either the function is supportedinside the compact rectangle,or that the Fourier integral is well approximatedby truncating the domain to .
We develop an approximation to based on the discrete Fourier transform![]()
(which can be computed efficiently using the fast Fourier transformalgorithm
![]()
), and analyze the error in making this approximation.
Derivation
Performing the linear substitution
we find that
where
and denotes the Fourier transform of on the unit cube .
Let denote the vector with components, for .The discrete Fourier transformof is
and approximates since it is a Riemann sum (step size ) for the Fourier integral.
Therefore, for ,we have the approximation:
Analysing the error
Assume that can be represented by a pointwise-convergent11Since the discrete Fourier transform requires sampling of points, convergence of the Fourier series![]()
is not sufficient. Also, the Fourier seriesmay only be conditionally convergent. If there are difficulties in assuringits convergence, Fejér summation can beused instead in this analysis.Fourier series:
where
The Fourier coefficient of is, and in contrast, where:
is a positive semi-definite inner product.
We have the exact formula:
and we wish to know what error is introducedif we were to replace by the discrete version of the inner product![]()
.
Expand as:
Since is if for all ,and is otherwise,the discrete inner product reduces to:
In other words, the approximation entails replacingthe true Fourier coefficient with the same coefficientplus other Fourier coefficients corresponding to higherfrequencies, in multiples![]()
of .The magnitude of the approximation errorfor thus depends on how fast the partial sumsof the Fourier coefficients decay to zero.