Skip to content

Surrogate methods

Random amplitude Fourier surrogates

Valid inputs

Random amplitude Fourier surrogates may be generated from the following inputs:

  • AbstractArray{T, 1} instances (scalar-valued data series)
  • AbstractArray{Number, 2} instances (multivarate scalar-valued data series), for which surrogates are generated column-wise.
  • Dataset instances from DynamicalSystems.jl, for which surrogates are generated column-wise.
  • Embedding instances, for which surrogates are generated variable-wise (row-wise on the points).

Documentation

# TimeseriesSurrogates.randomamplitudesFunction.

randomamplitudes(ts::AbstractArray{T, 1} where T)

Create a random amplitude surrogate for ts.

A modification of the random phases surrogates [1] where amplitudes are adjusted instead of the phases after taking the Fourier transform.

ts Is the time series for which to generate an AAFT surrogate realization.

Literature references

  1. J. Theiler et al., Physica D 58 (1992) 77-94 (1992))
randomamplitudes(a::AbstractArray{Number, 2}; cols = 1:size(d, 2))

Column-wise random amplitude Fourier surrogate of an array, where each column is a scalar-valued time series. cols controls which variables of the embedding are shuffled.

source

randomamplitudes(E::Embeddings.AbstractEmbedding;
                    cols = 1:size(E.points, 1))

Column-wise random amplitude Fourier surrogate of an embedding. cols controls which variables of the embedding are shuffled.

source

randomamplitudes(d::DynamicalSystemsBase.Dataset; cols = 1:size(d, 2))

Column-wise random amplitude Fourier surrogate of a Dataset. cols controls which variables of the embedding are shuffled.

source