Amplitude adjusted Fourier transform surrogates
Different variants of the AAFT and iterated AAFT algorithms.
Amplitude adjusted Fourier transform (AAFT)
TimeseriesSurrogates.aaft
โ Function.aaft(ts)
Generate a realization of an amplitude adjusted Fourier transform (AAFT) surrogate [1].
ts
Is the time series for which to generate an AAFT surrogate realization.
Literature references
J. Theiler et al., Physica D 58 (1992) 77-94 (1992).
Example of AAFT
using TimeseriesSurrogates
ts = AR1() # create a realization of a random AR(1) process
surrogate = aaft(ts)
surrplot(ts, surrogate)
Iterated AAFT (AAFT)
TimeseriesSurrogates.iaaft
โ Function.iaaft(ts; [n_maxiter = 200, tol = 1e-6, n_window = 50 ])
Generate an iteratively adjusted amplitude adjusted Fourier transform (IAAFT) [1] surrogate realization of ts
.
Keywords
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.
The IAAFT surrogates add an iterative step to the AAFT algorithm improve convergence.
Example of IAAFT
using TimeseriesSurrogates
ts = AR1() # create a realization of a random AR(1) process
surrogate = iaaft(ts)
surrplot(ts, surrogate)