Suppose I have a function that is not square integrable such as the zeroth Bessel function of the first kind. How do I generate a random sequence, with mean zero of course, such that its autocorrelation satisfies this function?


1 Answer 1


If $r_{xx}(t)$ is the autocorrelation of $x(t)$ it's Fourier Transforms (FT) are given by

$$R_{xx}(\omega) = |X(\omega)|^2$$

That creates a handy way to create a random signal from a given autocorrelation

  1. Calculate the FT of the autocorrelation (which is real)
  2. Take the square root
  3. Apply a random phase (uniformly distributed on $[-\pi,\pi]$) maintaining Hermitian symmetry, i.e. $\varphi(-\omega) = -\varphi(\omega)$
  4. Take the inverse FT
  • $\begingroup$ This method doesn't work because the Fourier transform of the $r_{xx}(t)$ is not always positive if $r_{xx}(t)$ is the zero-th order Bessel function. You will get negative, even complex, components when the ACF is Fourier-transformed. $\endgroup$
    – Julian Ong
    Feb 6, 2023 at 2:03
  • $\begingroup$ @JulianOng : Nope. The FT of the autocorrelation is the power spectral density. It's always positive. (and it's real if $x(t)$ is real as well). $\endgroup$
    – Hilmar
    Feb 6, 2023 at 12:46
  • $\begingroup$ The problem is, what if the FT of some given and hypothetical autocorrelation (which is real and an even function) is not always non-negative? $\endgroup$ Nov 2, 2023 at 16:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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