I've been reading and playing with the Hilbert transform in the context of extracting the envelope of functions, and I noticed something when playing around with a a simple case.

If we consider the solution for the undamped and resonantly driven oscillator, $$x(t) = \frac{F_{0}}{2 m \omega_{0}} t \sin(\omega_{0} t) + A_{0} \sin(\omega_{0} t + \phi_{0}) \text{,}$$ where $F_{0}$ is the amplitude driving force, $m$, the mass, $\omega_{0}$ is the frequency of the oscillator and of the oscillatory driving force, while, $A_{0}$ and $\phi_{0}$ are the initial amplitude and phase of the system.

We can find the envelope of $x(t)$ by calculating $$\sqrt{\left( x(t) \right)^{2} + \left(\dot{x}(t) / \omega_{0}\right)^{2}} \text{,}$$

or, we can find the Hilbert transform of $x(t)$ and calculate $$\left|x(t) + i \mathcal{H}(x(t)) \right|$$ which will only extract the modulating signal component of $\sqrt{\left( x(t) \right)^{2} + \left(\dot{x}(t) / \omega_{0}\right)^{2}}$. As shown below: enter image description here

Here, the blue line is $x(t)$, the yellow-orange line is $\left|x(t) + i \mathcal{H}(x(t)) \right|$ while the olive-green line is $\sqrt{\left( x(t) \right)^{2} + \left(\dot{x}(t) / \omega_{0}\right)^{2}}$.

One can extract the same result as $\left|x(t) + i \mathcal{H}(x(t)) \right|$ from $\sqrt{\left( x(t) \right)^{2} + \left(\dot{x}(t) / \omega_{0}\right)^{2}}$ by choosing the dominating components by hand -- what is interesting to me is that the Hilbert transform method seems to do this implicitly.

So my questions are:

  1. does the Hilbert Transform always only extract the modulating signal, or have I just "found" a specific case?
  2. If the above is true, why? My guess would be that the oscillatory components get integrated out, leaving only the modulated component
  3. What constitutes an envelope of a function, as both examples I have shown would surely qualify, or in DSP does this always mean the modulating signal?

1 Answer 1


The Hilbert transform by itself doesn't do it, but modulus of the analytic signal built from it does. The analytic signal's general form is

$$ x_a(t) = A(t) e^{\phi(t)} \tag{1} $$

so taking $|x_a(t)|$ leaves just $A(t)$, but one can also extract $\phi(t)$, so both amplitude and frequency ($=\phi'(t)$).

Just because we extract some $A$ or $\phi$, however, doesn't mean they're what we expect: refer to this post, and for proof of exact AM extraction criteria, here.

What constitutes an envelope of a function

I don't think it's strictly defined but a common convention is to have $A(t)$ in $(1)$ be $\geq 0$. You could however think of $\cos(\omega_0 t)$ as the envelope in $\cos(\omega_0 t) \cos(\omega_1 t)$. Then, alongside my linked posts, the "envelope" is the non-negative multiplier $A_0$, of an individual component $x_0$ of $x$, as in

$$ \begin{align} x_0(t) & = \mathcal{Re}\{ A_0(t) e^{\phi_0(t)} \} \\ & = A_0(t) \cos(\phi_0(t)) \end{align} $$

where the sum of all components is the original, $x(t) = \sum_i x_i(t)$.

This covers for real-valued $x(t)$, there's more to be said in the general (complex) case.

  • $\begingroup$ Thanks, the links were very useful -- especially the first one! $\endgroup$
    – user27119
    Sep 3, 2022 at 14:37

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.