Spectral estimation
These are functions related to Power Spectral Density (PSD) estimation:
Complete estimation of the PSD:
- Non parametric methods (without doing any assumptions on the nature of the signal): periodogram (psd()), Welch method (psd_welch()),
- Parametric methods: MUSIC (MUltiple SIgnal Classification) (psd_subspace())
- PSD estimation for a specific frequency (goertzel(), filter_goertzel()).
- Frequency estimation for a single tone signal (freqestim()).
Enumerations
FreqEstimMethode : FFT | CANDAN2 | QUADRATIC;
Choix d'un algorithme pour l'estimation de fréquence.
Functions
Vecf psd_freqs(int n, bool complexe=true)
tuple<Vecf, Vecf> psd(const Vector<T> &x)
PSD (correlogram).
tuple<Vecf, Vecf> psd_welch(const Veccf &x, int N, cstring fen="hn")
PSD (Welch method - spectrum averaging).
tuple<Vecf, Vecf> psd_subspace(const Veccf &x, int Ns, int Nf=1024, int m=0)
Calcul d'un spectre par la méthode des sous-espaces.
float freqestim(const Veccf &x, FreqEstimMethode m=CANDAN2)
Estimation de fréquence d'un signal périodique.
float goertzel(const Vecf &x, float frequence)
Filtre de Goertzel (calcul sur un buffer).
sptr<FilterGen<float>> filter_goertzel(float frequence, int N)
Filtre de Goertzel (calcul au fil de l'eau)
sptr<Filter<cfloat, float, SpectrumConfig>> rt_spectrum(const SpectrumConfig &config)
Calcul de spectre en temps réel.