Logo   Information, Signal, Images et ViSion C.N.R.S.   GdR   M.E.S.R.

How to synthesize a mono-component non-stationary signal

One part of the Time-Frequency Toolbox is dedicated to the generation of non-stationary signals. In that part, three groups of M-files are available:

  1. The first one allows to synthesize different amplitude modulations. These M-files begin with the prefix 'am'. For example, amrect.m computes a rectangular amplitude modulation, amgauss.m a gaussian amplitude modulation ...

  2. The second one proposes different frequency modulations. These M-files begin with 'fm'. For example, fmconst.m is a constant frequency modulation, fmhyp.m a hyperbolic frequency modulation ...

  3. The third one is a set of pre-defined signals. Some of them begin with 'ana' because these signals are analytic (for example anastep, anabpsk, anasing ...), other have special names (doppler, atoms ...).

The first two groups of files can be combined to produce a large class of non-stationary signals, multiplying an amplitude modulation and a frequency modulation.

Examples

We can multiply the linear frequency modulation of Example 1 (see page [*]) by a gaussian amplitude modulation (see fig. 2.6):

     >> fm1=fmlin(256,0,0.5);
     >> am1=amgauss(256);
     >> sig1=am1.*fm1; plot(real(sig1));
Figure 2.6: Mono-component non-stationary signal with a linear frequency modulation and a gaussian amplitude modulation
\begin{figure}
\epsfxsize =10cm\epsfysize =6cm
\centerline{\epsfbox{figure/ns6fig1.eps}}\end{figure}
By default, the signal is centered on the middle (256/2=128), and its spread is $T=32$. If you want to center it at an other position t0, just replace am1 by amgauss(256,t0). A second example can be to multiply a pure frequency (constant frequency modulation) by a one-sided exponential window starting at t=100 (see fig. 2.7):
     >> fm2=fmconst(256,0.2);
     >> am2=amexpo1s(256,100);
     >> sig2=am2.*fm2; plot(real(sig2));
Figure 2.7: Mono-component non-stationary signal with a constant frequency modulation and a one-sided exponential amplitude modulation
\begin{figure}
\epsfxsize =10cm\epsfysize =6cm
\centerline{\epsfbox{figure/ns6fig2.eps}}
\end{figure}

As a third example of mono-component non-stationary signal, we can consider the M-file doppler.m : this function generates a modelization of the signal received by a fixed observer from a moving target emitting a pure frequency (see fig. 2.8).

     >> [fm3,am3]=doppler(256,200,4000/60,10,50);
     >> sig3=am3.*fm3; plot(real(sig3));
Figure 2.8: Doppler signal
\begin{figure}
\epsfxsize =10cm\epsfysize =6cm
\centerline{\epsfbox{figure/ns6fig3.eps}}\end{figure}
This example corresponds to a target (a car for instance) moving straightly at the speed of 50m/s, and passing at 10m from the observer (the radar!). The rotating frequency of the engine is 4000revolutions per minute, and the sampling frequency of the radar is 200Hz.

In order to have a more realistic modelization of physical signals, we may need to add some complex noise on these signals. To do so, two M-files (noisecg an noisecu) of the Time-Frequency Toolbox are proposed : noisecg.m generates a complex white or colored gaussian noise, and noisecu.m, a complex white uniform noise. For example, if we add complex colored gaussian noise on the signal sig1 with a signal to noise ratio of -10dB (see fig. 2.9)

     >> noise=noisecg(256,.8);
     >> sign=sigmerge(sig1,noise,-10); plot(real(sign));
Figure 2.9: Gaussian transient signal (sig1) embedded in a -10dB colored gaussian noise
\begin{figure}
\epsfxsize =10cm\epsfysize =6cm
\centerline{\epsfbox{figure/ns6fig4.eps}}
\end{figure}
the deterministic signal sig1 is now almost imperceptible from the noise.

Eric Chassande-Mottin 2005-10-26

© GdR ISIS - Contact