Skip to content

vladi-iit/tklearn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

tklearn

Statistical Operator Learning for Dynamical Systems
Learning transfer operators, Koopman operators and infinitesimal generators from trajectory data.


Overview

tklearn is a Python library for statistical learning of linear evolution operators associated with dynamical systems.

The package provides scalable algorithms for estimating transfer operators, Koopman operators and infinitesimal generators directly from trajectory data, without requiring access to the underlying equations of motion. It combines modern statistical learning with structured numerical linear algebra to recover spectral decompositions, eigenfunctions and dynamical modes that characterize long-term behavior of stochastic and deterministic systems.

The current release implements the Toeplitz-based spectral estimation framework introduced in

Toeplitz Based Spectral Methods for Data-Driven Dynamical Systems
Vladimir R. Kostic, Karim Lounici, Massimiliano Pontil (2026).

While originally motivated by this work, the long-term goal of tklearn is to become a general-purpose toolbox for statistical operator learning.


Features

Current functionality includes

  • Transfer and Koopman operator estimation
  • Toeplitz spectral filtering
  • Reduced Rank Regression (RRR)
  • Kernel and finite-dimensional estimators
  • Spectral decomposition
  • Koopman mode decomposition
  • Multi-step prediction
  • Numerical linear algebra utilities
  • Example notebooks and benchmark problems

Future releases will include generator learning, resolvent methods and pseudospectral estimation.


Installation

Clone the repository

git clone https://github.com/vladi-iit/tklearn.git
cd tklearn

Install

pip install -e .

or

pip install .

Repository structure

tklearn/
├── docs/                  Documentation
├── notebooks/             Example notebooks
├── src/
│   └── tklearn/
│       ├── estimators/    Statistical operator estimators
│       ├── nn/            Neural network modules
│       ├── spectral_filters.py
│       ├── linalg.py
│       ├── numerical_solvers.py
│       └── ...
├── tests/
└── pyproject.toml

Example notebooks

The repository contains several self-contained demonstrations:

  • 1D Langevin dynamics
  • Duffing oscillator
  • Low-rank pseudospectral estimation

These notebooks illustrate the complete workflow from trajectory generation to spectral estimation and visualization.


Applications

The methods implemented in tklearn are designed for applications including

  • Molecular dynamics
  • Statistical physics
  • Computational chemistry
  • Climate science
  • Fluid dynamics
  • Time-series analysis
  • Reinforcement learning
  • Robotics and control
  • Computational biology

Development status

The project is under active development.

Current emphasis is on robust implementations of operator-learning algorithms together with reproducible benchmark problems. The API may evolve as additional estimators and numerical methods are incorporated.


Citation

If you use this software in your research, please cite

@article{kostic2026toeplitz,
  title={Toeplitz Based Spectral Methods for Data-Driven Dynamical Systems},
  author={Kostic, Vladimir R. and Lounici, Karim and Pontil, Massimiliano},
  year={2026}
}

A complete BibTeX entry will be added upon publication.


License

MIT License

About

Toeplitz Filters for Learning Koopman Semigroups

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors