JuliaDynamics / ChaosTools.jl

Tools for the exploration of chaos and nonlinear dynamics
https://juliadynamics.github.io/DynamicalSystemsDocs.jl/chaostools/stable/
MIT License
188 stars 36 forks source link

Covariant Lyapunov Vectors from data using SVD #308

Open Datseris opened 1 year ago

Datseris commented 1 year ago

Covariant Lyapunov vectors are related with Lyapunov exponents and in essense show the direction of increase/decrease each exponent quantifies. This paper

image

https://www.sciencedirect.com/science/article/pii/S0167278912003090

provides some rather simple algorithms to estimate CLVs from a data matrix (paper also exists on arxiv). The paper also has MatLab code for the computation. @CourtneyQuinn was kind enough to provide Python implementation as well here: https://github.com/CourtneyQuinn/FEM-BV-VAR_dynamics/blob/v0.1.0/src/clustering_dynamics/dynamics/clvs.py algorithm 2.2 is what we are interested in.

It is honestly amazing how simple the implementation is :D

But I wonder, are there any easy to implement algorithms to implement the CLVs from a dynamical systems, not from data? So using our TangentDynamicalSystem?