This repository contains a Python implementation of a stochastic telomere dynamics model using the Gillespie algorithm.
The code simulates the transitions between three telomeric states during multiple embryonic stem cell (ESC) cycles:
- LB: Linear blunt telomeres
- LR: Linear resected telomeres
- T: Telomere loops (t-loops)
The model explores how telomeres fluctuate between these states depending on cell cycle phase (G1, S, G2/M) and stochastic reaction events.
- Gillespie simulation of telomere state transitions.
- Incorporates cell cycle dynamics (G1, S, G2/M).
- Models rare non-equal divisions at cell cycle checkpoints.
- Runs multiple independent simulations (representing different cells).
- Outputs mean dynamics and variability across simulated populations.
- Generates clear plots with shaded error bars, cell cycle phase markers, and division events.
- LB (Linear blunt telomeres)
- LR (Linear resected telomeres)
- T (Telomere-loops)
LB → LR(APOLLO activity, resection)LR → LB(breaks or nucleases)LR → T(t-loop formation)T → LB(t-circle, breakage)T → LR(t-loop opening, C-circle formation)
- G1: ~1 hour
- S: ~5 hours
- G2/M: ~2 hours
- Total cycle length: 8 hours
Different (arbitrary) reaction rate constants are applied in each phase to reflect biological conditions.
- Feel free to open issues for bug reports or feature requests.
- For enhancements, fork the repo, make your changes, and submit a pull request.
This project is licensed under the MIT License — see LICENSE for details.
If you use this code in a publication or a pipeline, please cite the original thesis (Joey Dufourd ; or this GitHub repository).
Include author name, year, and DOI (or link).
Clone the repository and install required dependencies:
git clone https://github.com/joeydufourd/telomere-dynamics-gillespie.git