Learn R Programming

seewave (version 2.1.6)

sfm: Spectral Flatness Measure

Description

This function estimates the flatness of a frequency spectrum.

Usage

sfm(spec)

Arguments

spec

a data set resulting of a spectral analysis obtained with spec or meanspec (not in dB).

Value

A single value varying between 0 and 1 is returned. The value has no unit.

Details

SFM is calculated as the ratio between the geometric mean and the arithmetic mean : $$F = N\times{\frac{\sqrt[N]{\prod_{i=1}^N{y_i}}}{\sum_{i=1}^N{y_i}}}$$ with: y = relative amplitude of the i frequency, and N = number of frequencies.

See Also

sh, csh

Examples

Run this code
# NOT RUN {
a<-synth(f=8000,d=1,cf=2000,plot=FALSE)
speca<-spec(a,f=8000,at=0.5,plot=FALSE)
sfm(speca)
# [1] 0
b<-noisew(d=1,f=8000)
specb<-spec(b,f=8000,at=0.5,plot=FALSE)
sfm(specb)
# [1] 0.8233202
# }

Run the code above in your browser using DataLab