Surrogate methods
Iterated amplitude-adjusted Fourier transform (iAAFT) surrogates
Valid inputs
iAAFT 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.iaaft
— Function.
iaaft(ts::AbstractArray{T, 1} where T;
n_maxiter = 200, tol = 1e-6, n_windows = 50)
Generate an iteratively adjusted amplitude adjusted Fourier transform (IAAFT) [1] surrogate realization of ts
.
Arguments
ts
is the time series for which to generate an AAFT surrogate realization.n_maxiter
sets the maximum number of iterations to allow before ending the algorithm (if convergence is slow).tol
is the relative tolerance for deciding if convergence is achieved.n_window
is the number is windows used when binning the periodogram (used for determining convergence).
Literature references
- T. Schreiber; A. Schmitz (1996). "Improved Surrogate Data for Nonlinearity
Tests". Phys. Rev. Lett. 77 (4): 635–638. doi:10.1103/PhysRevLett.77.635. PMID 10062864.
iaaft(a::AbstractArray{Number, 2}; cols = 1:size(d, 2))
Iterated amplitude-adjusted Fourier transform (IAAFT) surrogate of an array, where each column is a scalar-valued time series. cols
controls which variables of the embedding are shuffled.
iaaft(E::Embeddings.AbstractEmbedding; cols = 1:size(E.points, 1))
Column-wise iterated amplitude-adjusted Fourier transform (IAAFT) surrogate of an embedding. cols
controls which variables of the embedding are shuffled.
iaaft(d::DynamicalSystemsBase.Dataset; cols = 1:size(d, 2))
Iterated amplitude-adjusted Fourier transform (IAAFT) surrogate of a Dataset. cols
controls which variables of the embedding are shuffled.