Changelog is kept with respect to version 1.0. This software follows SymVer2.0
The function fill_surrogate_test!
that was already in the source code and used by pvalue
is now exported, so that if the users just want a parallelized estimation of surrogate discriminatory statistic they can just use this function.
- Added surrogate methods:
RelativePartialRandomization
,SpectralPartialRandomization
,RelativePartialRandomizationAAFT
, andSpectralPartialRandomizationAAFT
.
- Moved to Julia extensions (requiring julia v1.9).
- Calling
pvalue
withSurrogateTest
is now parallelized over available threads.
pvalue
is now correctly overloaded from StatsAPI.jl.
- Implemented API for automating surrogate hypothesis tests using the new exported names
SurrogateTest
andpvalue
. - New documentation section with an educative example of surrogate testing.
- Added more padding modes to
RandomCascade
SurrogateGenerator
s now have a fields
into which surrogates are generated, avoiding unnecessary memory allocations. The- The wavelet (
WLS
) surrogate constructor now uses keywords arguments instead of positional arguments for some parameters.
- New surrogate methods:
PartialRandomization
,PartialRandomizationAAFT
,TFTDAAFT
,TFTDIAAFT
, andRandomCascade
. - Using the
f
keyword, it is now possible to select whether circular shifting at each wavelet coefficient level should be performed forWLS
surrogates.
- The API now allows random number generator to be specified for all methods, enabling reproducibility
- New surrogate methods:
PseudoPeriodicTwin
,IrregularLombScargle
andTFTDRandomFourier
.
- Fixed error in
RandomFourier(true)
andAAFT
surrogates, where phases were not correctly computed, leading to surrogates whose power spectra didn't match the power spectrum of the original signal as well as they should. No other Fourier-based surrogate were affected by this bug.
- New surrogate methods:
AutoRegressive
- New surrogate methods:
CycleShuffle
,ShuffleDimensions
,CircShift