How to calculate the Fourier transform of absolute-valued sinusoid?

The signal $x(t) = |1+a\sin(\omega t)|,(a>0)$ is a continuous waveform. In order to extract the frequency parameter $\omega$, I conduct the FFT of it and obtain its spectrum showed as follows. The frequency $\omega$ is set as 1 Hz. Spikes occur at the fundamental frequency and its harmonics. I'm curious that why this phenomenon exists. How to calculte the Fourier transform of $x(t)$?

Spectrum of $X(f)$

The waveform of $x(t)$

• Any periodic function that is not a pure sinusoid has frequency components at integer multiples of its fundamental frequency. Check out Fourier series. – Matt L. Sep 7 '18 at 6:25
• I am impressed by the calculations below but... since the signal is periodic why not just write the summation of harmonic terms and just compute the coefficients by the usual integration over one cycle? Look up Fourier series. – rrogers Sep 11 '18 at 19:58

Absolute valued signals enforce a special way of handling, when their Fourier transforms are to be computed. We shall demonstrate an example for the case when $|a|>1$, so that the signal changes sign.

Figure-1 displays one period of the periodic signals $f(t) = | g(t) | = | 1 + a \sin(\omega_0 t)|$ and $g(t)$ whose periods are $T_0 = \frac{2\pi}{\omega_0}$ , and a single pulse $p(t)$

$$p(t) = -2 g(t) \left[ \text{u}(t-T_1) - \text{u}(t-T_2) \right]$$

where $\text{u}(t)$ is the unit-step function. $p(t)$ is zero outside the region $T_1 < t <T_2$ and it will be helpful in computing the Fourier transform of $f(t)$

As indicated in the figure, one can define $$f(t) = g(t) + \tilde{p}(t)$$ where $\tilde{p}(t)$ is the periodic extension of the single pulse $p(t)$ as follows:

$$\tilde{p}(t) = \sum_k p(t-kT_0) = p(t) \star \delta_{T_0}(t) = p(t) \star \sum_k \delta (t-kT_0)$$

where $\star$ is the convolution operator, and $\delta_{T_0}(t)$ is the periodic impulse train of period $T_0$.

Finally we define the single base pulse $p_0(t)$ which is the pulse $p(t)$ shifted to the origin:

\begin{align} p_0(t) &= p(t+T_1) \\ p_0(t) &= -2 g(t+T_1) \left( \text{u}(t) - \text{u}(t-\Delta T) \right)\\ \end{align}

where $\Delta T = T_2-T_1$.

Now the CTFT applied on $f(t)$ follows as:

\begin{align} \mathscr{F}\{f(t)\} & = \mathcal{F}\{g(t) + \tilde{p}(t) \} \\ F(\omega) &= G(\omega) + \tilde{P}(\omega) \\ \end{align}

As $G(\omega)$ is clear, one proceeds with computation of $\tilde{P}(\omega)$ : \begin{align} \tilde{P}(\omega) & = \mathscr{F}\{ p(t) \star \delta_{T_0}(t) \} \\ & = P(\omega) \cdot \left( \omega_0 \sum_k \delta(\omega - k \omega_0) \right) \\ & = P_0(\omega) e^{-j \omega T_1} \cdot \left( \omega_0 \sum_k \delta(\omega - k \omega_0) \right) \\ & = \omega_0 \sum_k P_0(k \omega_0) e^{-j (k \omega_0) T_1} \delta(\omega - k \omega_0) \\ & = \omega_0 \sum_k C_k \delta(\omega - k \omega_0) \\ \end{align}

Where, in the second line we employed Fourier theorem of convolution in time equals multiplication in frequency, and in the third line we employed shifting property while replacing $p(t)$ with $p_0(t-T_1)$ and in the fourth line sifting property of the impulse multiplication. Finally we denote the constant coefficient that weights the impulse located at the frequency $\omega = k \omega_0$ as $C_k$ where

$$C_k = P_0(\omega) e^{-j \omega T_1} |_{\omega = k\omega_0} = P_0(k \omega_0) e^{-j (k \omega_0) T_1}$$

At this point the analysis neatly provides sufficient information for an understading of the spectrum associated with the signal $f(t)$ as in the form of a periodic impulse train each weighted by a cofficient $C_k$ determined by the spectrum of pulse $p(t)$ (or that of pulse $p_0(t-T_1)$) evalauted at the frequency points $\omega = k \omega_0$. Indeed all this is summarised int the single comment by @MattL.

Probably what's interesting, therefore, is the computation of those weights $C_k$, or equivalently, computation of the Fourier transform of the base pulse $p_0(t)$ :

Redefining $p_0(t)$ as

\begin{align} p_0(t) &= -2 g(t+T_1) \left[ \text{u}(t) - \text{u}(t-\Delta T) \right] \\ p_0(t) &= -2 g(t+T_1) w(t) \\ \end{align}

we have CTFT of it as: $$\boxed{ P_0(\omega) = \frac{-1}{\pi} G(\omega) e^{j\omega T_1} \star W(\omega)}$$

with $g(t) = 1 + a \sin(\omega_0)$ whose CTFT is

$$\boxed{ G(\omega) = 2\pi [ \delta(\omega) - \frac{a}{2j} \delta(\omega + \omega_0) + \frac{a}{2j} \delta(\omega - \omega_0) ] }$$

and $G(\omega)e^{j\omega T_1}$ becomes

$$G(\omega)e^{j\omega T_1} = 2\pi [ \delta(\omega) - \frac{a e^{-j\omega_0 T_1}}{2j} \delta(\omega + \omega_0) + \frac{a e^{j\omega_0 T_1}}{2j} \delta(\omega - \omega_0) ]$$

And then $P_0(\omega)$ becomes

\begin{align} P_0(\omega) & = \frac{-1}{\pi} G(\omega)e^{j\omega T_1} \star W(\omega) \\ & = \frac{-1}{\pi} 2\pi [ \delta(\omega) - \frac{a e^{-j\omega_0 T_1}}{2j} \delta(\omega + \omega_0) + \frac{a e^{j\omega_0 T_1}}{2j} \delta(\omega - \omega_0) ] \star W(\omega) \\ & = -2 [ W(\omega) - \frac{a e^{-j\omega_0 T_1}}{2j} W(\omega + \omega_0) + \frac{a e^{j\omega_0 T_1}}{2j} W(\omega - \omega_0) ] \\ \end{align}

Finally we compute the CTFT of the window $w(t)$ which is

$$W(\omega) = \int_0^{\Delta T} e^{-j\omega t} dt = e^{-j \omega \frac{\Delta T}{2} } \frac{ 2 \sin(\omega \frac{\Delta T} { 2})}{\omega} = \boxed{ \Delta T e^{-j \omega \frac{\Delta T}{2} } \text{sinc}( \frac{\omega \Delta T}{2\pi}) }$$

Hence now we are able to evaluate the coefficients $C_k$ as

$$\boxed{C_k = P_0(\omega) e^{-j \omega T_1} |_{\omega = k\omega_0} = P_0(k \omega_0) e^{-j (k \omega_0) T_1} }$$

\begin{align} C_k &= P_0(k \omega_0) e^{-j (k \omega_0) T_1} \\ &= -2 e^{-j (k \omega_0) T_1} [ W(k\omega_0) - \frac{a e^{-j\omega_0 T_1}}{2j} W(k\omega_0 + \omega_0) + \frac{a e^{j\omega_0 T_1}}{2j} W(k\omega_0 - \omega_0) ]\\ &= -2 \Delta T e^{-j (k \omega_0) T_1} [ e^{-j k\omega_0 \frac{\Delta T}{2} } \text{sinc}( \frac{k \omega_0 \Delta T}{2\pi}) - \frac{a e^{-j\omega_0 T_1}}{2j} e^{-j (k+1)\omega_0 \frac{\Delta T}{2} } \text{sinc}( \frac{(k+1)\omega_0 \Delta T}{2\pi}) + \frac{a e^{j \omega_0 T_1}}{2j} e^{-j (k-1)\omega \frac{\Delta T}{2} } \text{sinc}( \frac{(k-1) \omega_0 \Delta T}{2\pi}) ]\\ &= -2 \Delta T [ e^{-j k\omega_0 \frac{T_1+T_2}{2} } \text{sinc}( \frac{k \omega_0 \Delta T}{2\pi}) - \frac{a}{2j} e^{-j (k+1)\omega_0 \frac{T_1+T_2}{2} } \text{sinc}( \frac{(k+1)\omega_0 \Delta T}{2\pi}) + \frac{a}{2j} e^{-j (k-1)\omega_0 \frac{T_1+T_2}{2} } \text{sinc}( \frac{(k-1) \omega_0 \Delta T}{2\pi}) ]\\ &= -2 \Delta T e^{-j k\omega_0 \frac{T_1+T_2}{2} } [ \text{sinc}( \frac{k \omega_0 \Delta T}{2\pi}) - \frac{a}{2j} e^{-j \omega_0 \frac{T_1+T_2}{2} } \text{sinc}( \frac{(k+1)\omega_0 \Delta T}{2\pi}) + \frac{a}{2j} e^{j \omega_0 \frac{T_1+T_2}{2} } \text{sinc}( \frac{(k-1) \omega_0 \Delta T}{2\pi}) ] \\ \end{align}

with $T_1 + T_2 = \frac{3 \pi}{\omega_0}$ further simplification happens as:

\begin{align} C_k &= -2 \Delta T e^{-j k\omega_0 \frac{3\pi}{2 \omega_0} } [ \text{sinc}( \frac{k \omega_0 \Delta T}{2\pi}) - \frac{a}{2j} e^{-j \omega_0 \frac{3 \pi}{2 \omega_0} } \text{sinc}( \frac{(k+1)\omega_0 \Delta T}{2\pi}) + \frac{a}{2j} e^{j \omega_0 \frac{3\pi}{2\omega_0} } \text{sinc}( \frac{(k-1) \omega_0 \Delta T}{2\pi}) ] \\ &= -2 \Delta T e^{-j k \frac{3\pi}{2} } [ \text{sinc}( \frac{k \omega_0 \Delta T}{2\pi}) - \frac{a}{2j} e^{-j \frac{3 \pi}{2}} \text{sinc}( \frac{(k+1)\omega_0 \Delta T}{2\pi}) + \frac{a}{2j} e^{j \frac{3\pi}{2} } \text{sinc}( \frac{(k-1) \omega_0 \Delta T}{2\pi}) ] \\ &= -2 \Delta T (j)^k [ \text{sinc}( \frac{k \omega_0 \Delta T}{2\pi}) - \frac{a}{2} \text{sinc}( \frac{(k+1)\omega_0 \Delta T}{2\pi}) + \frac{a}{2} \text{sinc}( \frac{(k-1) \omega_0 \Delta T}{2\pi}) ] \\ \end{align}

and it seems like :

$$\boxed{ C_k = - a \Delta T (j)^k [ \frac{2}{a} \text{sinc}( \frac{k \omega_0 \Delta T}{2\pi}) - \text{sinc}( \frac{(k+1)\omega_0 \Delta T}{2\pi}) + \text{sinc}( \frac{(k-1) \omega_0 \Delta T}{2\pi}) ] }$$

Note that, onto this $C_k$, we have to add three more simple coefficients for $k=-1,0,1$ that are coming from the CTFT of $g(t)$ as stated to be ignored at the very beginning. Honestly, there must be some error because I couldn't get rid of that minus sign in front of it!

For $0 < a \le 1$, the Fourier Transform is straightforward:

\begin{align*}\mathscr{F}\left\{|1+a\sin(2\pi s_0t)|\right\} &= \mathscr{F}\left\{1+a\sin(2\pi s_0t)\right\} \\ &= \int_{-\infty}^{\infty}\left[1+a\sin(2\pi s_0t)\right]e^{-2\pi i st} \mathrm{d}t\\ & = \delta(s) +\dfrac{a}{2i}\left[\delta(s-s_0)-\delta(s+s_0)\right] \\ \end{align*}

For $a > 1$, we have to rewrite the function to get rid of the absolute value bars:

$$|1+a\sin(2\pi s_0t)| = |s_0|\mathrm{III}(s_0t) *\left(\left[1+a\sin(2\pi s_0t)\right]\cdot\left[\mathrm{\Pi}\left(\dfrac{\pi s_0}{\frac{\pi}{2}-\mathrm{Arcsin}\left[-\frac1{a}\right]}t-\dfrac{\frac{\pi}{2}}{2\pi s_0}\right)-\mathrm{\Pi}\left(\dfrac{\pi s_0}{\frac{\pi}{2}+\mathrm{Arcsin}\left[-\frac1{a}\right]}t+\dfrac{\frac{\pi}{2}}{2\pi s_0}\right)\right]\right)$$

Where $*$ denotes convolution, $\mathrm{Arcsin}()$ denotes the principal arcsine,

$$\mathrm{III}(at) = \dfrac1{|a|}\sum_{n=-\infty}^{\infty}\delta\left(t-\dfrac{n}{a}\right)$$ and $$$$\mathrm{\Pi}(at) = \begin{cases} 1 & |at| <\frac1{2}\\ 0 & |at| >\frac1{2}\end{cases}$$$$

Note that the $\mathrm{\Pi}()$ functions are two rectangles snipping out the two different segments of one cycle, and the convolution with the $\mathrm{III}()$ function creates all the periodic replicas of those two segments of that one cycle.

Now using tables of Fourier Transforms, and various, basic Fourier Transform theorems we get, for $a >1$,

$$\mathscr{F}\left\{|1+a\sin(2\pi s_0t)|\right\} =\mathrm{III}\left(\dfrac{s}{s_0}\right)\cdot\left(\left[\delta(s)+\dfrac{a}{2i}\left(\delta(s-s_0)-\delta(s+s_0)\right)\right]*\left[\dfrac{\frac{\pi}{2}-\mathrm{Arcsin}\left(-\frac1{a}\right)}{\pi|s_0|}e^{2\pi i\left(\dfrac{-\frac{\pi}{2}}{2\pi s_0}\right)\left(\dfrac{\frac{\pi}{2}-\mathrm{Arcsin}\left(-\frac1{a}\right)}{\pi s_0}\right)s}\mathrm{sinc}\left(\dfrac{\frac{\pi}{2}-\mathrm{Arcsin}\left(-\frac1{a}\right)}{\pi s_0}s\right)-\dfrac{\frac{\pi}{2}+\mathrm{Arcsin}\left(-\frac1{a}\right)}{\pi|s_0|}e^{2\pi i\left(\dfrac{\frac{\pi}{2}}{2\pi s_0}\right)\left(\dfrac{\frac{\pi}{2}+\mathrm{Arcsin}\left(-\frac1{a}\right)}{\pi s_0}\right)s}\mathrm{sinc}\left(\dfrac{\frac{\pi}{2}+\mathrm{Arcsin}\left(-\frac1{a}\right)}{\pi s_0}s\right)\right]\right)$$

So you have the difference of two modulated $\mathrm{sinc}()$ functions, with 1 real replica at DC and 2 imaginary replicas at $\pm s_0$ (due to convolution with the $\delta()$ functions), sampled at integer multiples of $s_0$ (by the $\mathrm{III}()$ function).