CyclingSignatures.jl
Documentation for CyclingSignatures.jl.
About
Cycling signatures are a tool to identify and classify oscillatory dynamics in multivariate time series.
Given a time series $x_0,x_1,\dots, x_m \in \mathbb{R}^n$, the basic pipeline is:
- Generate a comparison space $Y$ by covering the time series and compute its homology $H_1(Y)$.
- Compute the homology $H_1(\gamma)$ of thickened segments $\gamma = \{x_i, x_{i+1},\dots, x_j\}$.
- Compute the image of the map $H_1(\gamma) \rightarrow H_1(Y)$. This is the cycling signature.
Collections of cycling signatures can provide a coarse description of recurrent dynamics. For instance, frequently appearing one-dimensional cycling signatures indicate elementary cycling motions. These can be related using higher dimensional cycling signatures.
Installation
Install the package via
using Pkg
Pkg.add(url="https://github.com/davidhien/CyclingSignatures.jl")
and load it via
using CyclingSignaturesReferences
U. Bauer, D. Hien, O. Junge, and K. Mischaikow. Cycling signatures: Identifying cycling motions in time series using algebraic topology. Journal of Computational Dynamics 12(4), 554–595 (2025). DOI: 10.3934/jcd.2025007.