This archive contains some of the programs that were developed in the nonlinear dynamics laboratory and can have wider applicability to nonlinear time series analysis. This software is provided as is under GNU general public license. If used in research, please include the appropriate reference to this page or the appropriate papers.
General Purpose Programs
FAST NEAREST NEIGHBORS SEARCH
kd_partition.m — partitions multivariate data into a kd-tree.
kd_search.m — search the kd-tree created by kd_partition.m.
NONLINEAR TIME SERIES ANALYSIS
These are some of the programs that are of general use in nonlinear time series analysis:
ami.m — estimates average mutual information for time series (usually used to estimate delay time for delay coordinate embedding).
false_neighbors.m — old false nearest neighbors search for estimating smallest sufficient embedding dimension for delay coordinate embedding. uses my old kd_search code.
false_neighbors_kd.m — new, faster false nearest neighbors code that has much more options. it computes the statistics needed in the analysis including surrogates based data. it will also need:
plot_false_neighbors.m — will process the output and plot the results. for all the details please refer to this page.
false_strands_kd.m — (updated 08/11/2016) a generalization to false nearest neighbors, which is supposed to be robust to noise. it will also need:
plot_false_strands.m — will process the output and plot the results. for all the details please refer to this page.
c2.m — correlation sum estimation for finding correlation dimension from a scalar time series.
c2direct.m — correlation sum estimation for finding correlation dimension from a vector-valued time series in a phase space.
lyapunov.m — used to estimate short-time largest Lyapunov exponent from a scalar time series.
podfilter.m — projective nonlinear noise reduction for scalar time series. works for both continuously sampled and map-like data.
sodfiltering.m — smooth projective noise reduction for continuously sampled time series, considerably outperforms podfilter.m, but does not work for map-like data.
PHASE SPACE WARPING
These are programs for calculating PSW-based metrics and feature vectors:
pswtm.m — phase space warping tracking metric estimation.
psw_cont.m — phase space warping feature vector estimation.
There are also some specialized partitioning and searching programs that we use in phase space warping applications:
kb_box_part.m — partition data space into a set number of boxes.
kd_box_search.m — find which box a query point belongs to.
SMOOTH ORTHOGONAL DECOMPOSITION
gensod.m — this is a generalization of smooth orthogonal decomposition (sod). the main features of the program are described in the associated help section. while it can do standard sod which requires multivariate time series that embed some smooth manifold, it can also work with randomly sampled multivariate data embedding some smooth manifold. may be used for “manifold learning” or “nonlinear dimensionality reduction.”