pybic.SignalGen

pybic.SignalGen(fS=1.0, tend=100, Ax=1, fx=1, Afx=0, Ay=0, fy=0, Afy=0, Az=0, Ff=0, noisy=2)[source]

3-oscillator FM signal generator.

Output is defined as sum of three frequency-modulated tones + white noise

sig = Ax*x(t) + Ay*y(t) + Az*z(t) + noisy*noise.

Note

The instantaneous frequency of the third oscillation is tied to the first two! That is, fz = fx + fy and dfz = dfx + dfy.

Parameters:
  • fS (float) – Sampling frequency in Hz.

  • tend (float) – End time, via t = 0:1/fS:tend.

  • Ax (float) – Amplitude of oscillation #1

  • fx (float) – Frequency of oscillation #1 in Hz

  • Afx (float) – Amplitude of frequency sweep

  • Ay (float) – Amplitude of oscillation #2.

  • fy (float) – Frequency of oscillation #2 in Hz.

  • Afy (float) – Amplitude of frequency sweep in Hz/s.

  • Az (float) – Amplitude of oscillation #3.

  • Ff (float) – Frequency of frequency mod.

  • noisy (float) – Noise amplitude.

Returns:

sig,t,fS = SignalGen(...)

Return type:

list