Long term average spectrum

Calculate the long-term average spectrum of a signal
1,1K Downloads
Aktualisiert 5. Mai 2018

NOTE: this function is now available from the IoSR Matlab Toolbox as iosr.dsp.ltas.
-------------------------
S = LTAS(X,FS) calculates the long-term average spectrum (LTAS) of signal X, sampled at FS Hz. The spectrum is calculated from the average power spectral density (PSD) obtained from a series of overlapping FFTs; the FFT length is 4096, and the hop size is 2048. The segments of X are Hann-windowed. The average PSD is then Gaussian-smoothed to 1/3-octave resolution.
X can be a vector, matrix, or multidimensional array; LTAS will operate along the first non-signleton dimension, and return the LTAS for each corresponding row/column/etc.

S = LTAS(X,FS,'PARAMETER','VALUE') allows numerous parameters to be specified. These parameters are:-
'dim' : {find(size(X)>1,1,'first')} | scalar
Specifies the dimension of operation (defaults to the first non-singleton dimension).
'graph' : {false} | true
Choose whether to plot a graph of the LTAS.
'hop' : {NFFT/2} | scalar
Specifies the step size through X used to calculate each segment. NFFT is determined by the 'win' parameter.
'noct' : {3} | scalar
Apply 1/noct-octave smoothing to the frequency spectrum. Setting 'noct' to 0 results in no smoothing.
'scaling' : {'none'} | 'max0'
Specifies any scaling to apply to S. By default, no scaling is applied. If scaling is set to 'max0', S will be scaled to have a maximum value of 0.
'units' : {dB} | 'none'
Specifies the output units. By default the PSD is calculated in dB. Otherwise the PSD is returned directly.
'win' : {4096} | scalar | vector
Specifies the window or FFT length NFFT used to calculate the spectrum. If 'win' is a scalar, it specifies the FFT length, and a Hann window is applied to each segment. If 'win' is a vector, NFFT is the length of the vector, and the vector is multiplied with each segment.

Example

% Plot the 1/6th-octave-smoothed LTAS of the Handel example
load handel.mat
figure
ltas(y,Fs,'noct',6,'graph',true);

See also STFT, SMOOTH_SPECTRUM.

Zitieren als

Christopher Hummersone (2024). Long term average spectrum (https://github.com/IoSR-Surrey/MatlabToolbox), GitHub. Abgerufen .

Kompatibilität der MATLAB-Version
Erstellt mit R2015b
Kompatibel mit allen Versionen
Plattform-Kompatibilität
Windows macOS Linux
Kategorien
Mehr zu Fourier Analysis and Filtering finden Sie in Help Center und MATLAB Answers
Quellenangaben

Inspiriert von: Short time FFT with octave smooth

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Versionen, die den GitHub-Standardzweig verwenden, können nicht heruntergeladen werden

Version Veröffentlicht Versionshinweise
1.0.0.0

Migrated to GitHub.

Um Probleme in diesem GitHub Add-On anzuzeigen oder zu melden, besuchen Sie das GitHub Repository.
Um Probleme in diesem GitHub Add-On anzuzeigen oder zu melden, besuchen Sie das GitHub Repository.