Tutorials¶
The tutorial notebooks below build up from the basic classes to full real-data digital
twins, numbered by topic. The source lives in
scripts/tutorials.
Topics 0 and 1 are rendered inline (with saved outputs); topics 2–4 link out to
GitHub for now. Two arcs run through them: DA concepts (1) applied to physical models
(2), and reduced-order-model concepts (3) combined with DA in real time (4).
0. How the repository works¶
| Notebook | Contents |
|---|---|
| Class Model | The Model base class, integrators and state history. |
| Class ESN_model | An ESN as a forecast model. |
| Class Observations | Truth generation, noise and manual biases. |
| Class Bias | Training and running an ESN bias estimator. |
| Class Estimator | The Estimator hierarchy: instantiating a filter and running the forecast step. |
1. Introduction to real-time DA¶
| Notebook | Contents |
|---|---|
| Real-time DA intro | Bayesian estimation (MAP, univariate example) and the classical Kalman filter on a linear model. |
| Ensemble DA intro | The EnKF: twin experiment on the Van der Pol model, and Monte Carlo convergence to the KF. |
| Augmented formulation | Combined state and parameter estimation. |
| Chaos and DA (Lorenz 63) | Ensemble DA on a chaotic system. |
| Model-bias-aware DA | The r-EnKF with an ESN bias estimator on the Van der Pol model. |
2. Real-time DA in thermoacoustics¶
| Notebook | Contents |
|---|---|
| Rijke LOM | The Rijke-tube low-order model (Galerkin method). |
| TADA Rijke twin | Twin state/parameter estimation with the EnKF. |
| TABADA Rijke (CMAME) | Bias-aware DA with an ESN bias estimator. |
| Azimuthal LOM | The annular-combustor low-order model. |
| Azimuthal data | Exploring the experimental annular data.* |
| TABADA annular raw | A real-data digital twin of an annular combustor.* |
3. Introduction to reduced-order models¶
| Notebook | Contents |
|---|---|
| POD / SPOD | POD, Sieber SPOD and Towne SPOD on the cylinder wake.* |
| POD-ESN on the cylinder wake | The packaged POD_ESN reduced-order model at scale.* |
4. Real-time DA on reduced-order models¶
| Notebook | Contents |
|---|---|
| Real-time DA with POD-ESN | Assimilating sparse sensors into the POD-ESN wake model.* |
* These notebooks download their dataset from Zenodo on first use (annular data, wake data).
Running the tutorials as tests¶
The notebook runner executes all tutorials headlessly:
python -m pytest test_tutorials.py # all folders
SUBFOLDERS='["0","1"]' python -m pytest test_tutorials.py # only folders 0 and 1
NB_TEST_QUICK=1 python -m pytest test_tutorials.py # skip training-heavy notebooks