2
$\begingroup$

After a lecture on harmonic analysis and time/frequency methods, I reconsidered the Gaussian kernel, defined in continuous time.

It is unimodal and symmetric, and its continuous Fourier transform is another Gaussian, thus unimodal and symmetric (from Fourier transform of a Gaussian is not a Gaussian, but that's wrong!):

Gaussian/Fourier

As a filter or a window, the Gaussian ensure a monotonic weight decay around its center. The interpretation in the frequency domain is similar: frequencies are monotonically attenuated away from a center frequency.

Such a property allows a straightforward interpretation in both the time and the frequency domain.

  • For continuous kernels, are there generic characterizations (necessary or sufficient conditions) under which unimodal and symmetric windows also have a unimodal and symmetric amplitude spectrum?
$\endgroup$

2 Answers 2

2
$\begingroup$

This is only also partial answer. I translate unimodular into ripple-free, because ripples are essentially extremal points, and we just want to have a single one.

A ripple-free Fourier Transform translates (to my knowledge) to an infinitely often continuously differentiable time-domain function. Furthermore, to let the Fourier Transform be defined easily, the function should either decay very quickly or should have compact support. Hence, candidate functions would be from the Schwartz space of functions.

Unimodality further reduces the number of candidates, with the Gaussian being a prominent example. Others are Hermite Polynomials, weighted with the Gaussian. With a clever linear combination of Hermite function, you can create a function that is unimodal, different from a gaussian and still has ripple-free and symmetric Fourier transform.

import scipy.special
%matplotlib inline

Fs = 100
t = np.arange(-10, 10, 1./Fs)
H = scipy.special.hermite
g = lambda t: (H(4)(t)+H(2)(t)+80*H(0)(t)) * np.exp(-t*t)
gauss = lambda t: np.exp(-t*t)
plt.subplot(1,2,1)
plt.plot(t, g(t))
plt.plot(t, 80*gauss(t))
plt.xlim(-4,4)

plt.subplot(1,2,2)
plt.plot(20*np.log10(abs(np.fft.fft(g(t), 7*len(t)))))

Program output

I believe the ripples in the frequency are due to finite windowing and numerics. Might need more analysis with analytic solutions, e.g. from Mathematica.

So, the answer might be: The window needs to be unimodular and stem from the Schwartz space of functions?

$\endgroup$
1
  • 1
    $\begingroup$ I believe, in general any unimodular, symmetric polynomial multiplied by a Gaussian has this property. So, it's not restricted to Hermite polynomials. $\endgroup$ Commented Dec 14, 2016 at 6:16
2
$\begingroup$

A sufficient condition is, that the distribution is spanned by zero-mean Gauss distributions with non-negative amplitude weights. The spanned space contains only symmetric and unimodal distributions and is invariant under a Fourier transform.

$\endgroup$
4
  • $\begingroup$ Well... I was expecting sometimes more :), let's say involved, pertaining to regularity, decay etc. $\endgroup$ Commented Dec 12, 2016 at 21:02
  • 1
    $\begingroup$ I understand that. I'm afraid anything more than that will take more time to think ;) $\endgroup$
    – Jazzmaniac
    Commented Dec 12, 2016 at 21:04
  • $\begingroup$ I have plenty of time. Possibly it's something quite well-known, but that I missed somewhere in my youth $\endgroup$ Commented Dec 12, 2016 at 21:06
  • 1
    $\begingroup$ In that case I have missed it too. I cannot remember any general result. In any case, I believe my answer may possibly give the largest solution set with a simple topology. So I'm not sure there is a reasonably simple better sufficient or even necessary condition. $\endgroup$
    – Jazzmaniac
    Commented Dec 12, 2016 at 21:10

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.