biperiodogram function

Calculate biperiodogram

Calculate biperiodogram

Calculate the biperiodogram of real-valued time series

biperiodogram( x, dft_given = FALSE, mc = FALSE, mc_cores = getOption("mc.cores", 2L) )

Arguments

  • x: Given time series (or its DFT), as a data frame or matrix with which columns correspond to sampled stretches
  • dft_given: If TRUE, suppose that DFTs are given instead of time series data and skip the fast fourier transform. Default: FALSE.
  • mc: If TRUE, calculation is done in parallel computation. Defaults to FALSE.
  • mc_cores: The number of cores in use for parallel computation, passed parallel::mcmapply() etc. as mc.cores.

Returns

A list with names

  • f1:: The first elements of frequency pairs.
  • f2:: The second elements of frequency pairs.
  • value:: The biperiodogram as a matrix. Each of its rows is for a frequency pair; its columns correspond to stretches.

Examples

f <- function(x) { sin(2 * x) + sin(3 * x + 1) + sin(2 * x) * sin(3 * x + 1) } v <- sapply(seq_len(1280), f) + rnorm(1280) m <- matrix(v, nrow = 128) bp <- biperiodogram(m) m2 <- stats::mvfft(m) bp2 <- biperiodogram(m2, dft_given = TRUE)

References

Hinich, M.J., 1994. Higher order cumulants and cumulant spectra. Circuits Systems and Signal Process 13, 391–402. doi:10.1007/BF01183737

  • Maintainer: Takeshi Abe
  • License: GPL-3
  • Last published: 2024-05-17