**3. Hilbert–Huang Transform**

An analytic signal is a complex-valued function without any negative frequency components. The real and imaginary parts of an analytic signal are real-valued functions related to each other by the Hilbert transform (HT). The HT of the real function *r*(*t*) is equal to *<sup>r</sup>*<sup>ˆ</sup>(*t*). The definition of HT is as follows:

$$\mathcal{F}(t) = \frac{1}{\pi} \mathop{P\int\limits\_{-\infty}^{+\infty}}\_{-\infty} \frac{r(\tau)}{t - \tau} d\tau = r(t) \* \frac{1}{\pi t} \tag{1}$$

where the symbol '\*' denotes the convolution operation and *P* indicates the Cauchy principal value. The analytic function of *r*(*t*) with respect to time can be defined as follows:

$$
\overline{r}(t) = r(t) + j\mathfrak{r}(t) = m(t)e^{i\wp(t)}\tag{2}
$$

$$
\tan(t) = \sqrt{r^2 + \hat{r}^2}, \; q(t) = \tan^{-1} \frac{\hat{r}}{r} \tag{3}
$$

where *j* = √ −1 and = *r*(*t*) is the analytic function calculated for the real function *<sup>r</sup>*(*t*). *m* and ϕ are the instantaneous energy and phase functions in terms of time, respectively. It is unnecessary to compute the integral in (1) to achieve the HT of *<sup>r</sup>*(*t*). Instead, in the first step, the Fourier transform of the real function *r*(*t*) is calculated, then its negative frequency components are set to zero and the inverse Fourier transform applied to it. The obtained function is the analytic function = *r*(*t*) calculated for the real function *<sup>r</sup>*(*t*), which its imaginary part is *<sup>r</sup>*<sup>ˆ</sup>(*t*). The instantaneous frequency of the real function *r*(*t*) is:

$$f(t) = \frac{1}{2\pi} \frac{d\varphi}{dt} \tag{4}$$

The method of calculating the frequency-time distribution for the square amplitude of *r*(*t*) can be explained using HT. HT is a very suitable method for single mode signals and also calculates the energy distribution in time and frequency. However, the majority of signals are multi-components and their frequency content is spread in the frequency domain. In HHT method, to solve this problem, the input signal was first divided into several intrinsic mode functions (IMFs) by the empirical mode decomposition (EMD) method, where IMFs are time-varying mono-component (single frequency) functions [32]. Then, each of these IMFs is transformed by HT to the frequency domain and their energy is expressed in terms of time and frequency. Using the sifting process, the input signal *S*(*t*) is decomposed in terms of IMFs [32]:

$$S(t) = \sum\_{i=1}^{n} IMF\_i(t) + R(t) \tag{5}$$

where *R(t)* is the residual function and *n* is the number of IMFs. *IMFi* is the ith decomposed IMF. The analytic functions of IMFs are calculated using the method described above. Each of these functions = *IMFi*(*f*, *t*) represents part of the original signal spectrum. *fi*(*t*) and *mi*(*t*) vectors are calculated for each *IMFi* in the time domain. Finally, the 2n vector, with the same length as the time vector *t*, are the output of the HHT. The spectrum of the input signal = *<sup>S</sup>*(*f*, *t*) is the combination of these vectors:

$$\overline{S}(f, t) = \sum\_{i=1}^{n} sparse(t, \ f\_i(t), m\_i(t)) = \sum\_{i=1}^{n} \overline{S}\_i(f, t) \tag{6}$$

where *mi* and *fi* are the instantaneous energy and frequency functions in terms of time for *IMFi*, respectively. Moreover, sparse matrix is a matrix that has a large number of zeros. *sparse* function generates a sparse matrix = *Si*(*f*, *t*) from the triplets t, *fi*(*t*), and *mi*(*t*) such that = *Si*(*fi*(*k*), *t*(*k*)) = *mi*(*k*). Entries that have no value assigned to them are equal to zero. The lengths of the three vectors t, *fi*(*t*), and *mi*(*t*) are equal.
