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 seris $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.