Learn R Programming

seewave (version 1.1)

ama: Amplitude modulation analysis of a time wave

Description

This function computes the Fourier analysis of a time wave envelope. This allows to detect periodicity, in particular those generated by amplitude modulations.

Usage

ama(wave, f, wl, plot = TRUE, ...)

Arguments

wave
data describing the time wave.
f
sampling frequency of wave.
wl
length of the window for the analysis (even number of points).
plot
logical, if TRUE the spectrum of the envelope (by default TRUE).
...
other meanspec parameters.

Value

  • If plot is FALSE, ama returns a vector of numeric data corresponding to the computed spectrum. If peaks is TRUE, spec returns a list with two elements:
  • specthe spectrum computed
  • peaksthe peaks values (in kHz).

Details

This function is based on oscillo and meanspec. The envelope of wave is first computed and the spectrum of this envelope is then processed. All spec and meanspec arguments can be set up. Be sure to set up wl large enough if you want to detect low amplitude modulation periodicity.

See Also

oscillo

Examples

Run this code
data(orni)
# detection of 2 main amplitude modulations in a cicada song:
# one with a 0.020 kHz frequency (due to signal/silence periodicity)
# one with a 0.258 kHz frequency (due to pulses in the echemes)
# one with a 2.369 kHz frequency (fundamental frequency)
ama(orni,f=22050,wl=1024,type="l")
# these amplitude modulations can be identify with a cursor:
ama(orni,f=22050,wl=1024,type="l",identify=TRUE)

Run the code above in your browser using DataLab