FFT2octave#
Matlab. Filter FFT data to octave-band and fractional octave-band.
Use#
More information about generation of central frequencies on my repository: getANSIfrequencies
[Oct,fc,fl,fu] = FFT2octave(f,fftdata,b,varargin)
The first two inputs are the FFT, f is the frequency array and fftdata is the fft values.
The third input is the bandwidth:
b=1One-octave band.b=3Third-octave band.b=2Half-octave band.b=3/22/3-octave band.b=241/24-octave band.
Optional inputs
The fourth input indicates whether the FFT data is linear '' or logarithmic 'dB'.
The fifth input only affects when the value of b is 1 or 3. It indicates whether you want the normalized or calculated frequencies. By default they are calculated (false).
Examples of use#
% To get in one-octave frequencies
[Oct,fc,fl,fu] = FFT2octave(f,fftdata,1)
% To get in one-octave frequencies if the data is in dB
[Oct,fc,fl,fu] = FFT2octave(f,fftdata,1,'dB')
% To get in one-octave frequencies normalized if the data is in dB
[Oct,fc,fl,fu] = FFT2octave(f,fftdata,1,'dB',true)
% To get in third-octave frequencies
[Oct,fc,fl,fu] = FFT2octave(f,fftdata,3)