Code for "Individual cell fate versus population dynamics revealed by a mathematical model linking telomeres to senescence".
- Preprint version: biorxiv.org
- See also Chapter 3 of the PhD thesis: HAL theses
The telomeres
package contains all the necessary auxiliary code.
This is where the mathematical model is encoded, with its
default parameters (parameters.py
). More generally, it contains all
the functions allowing to
- Posttreat the raw data (
make_*.py
) - Simulate the model (
simulation.py
) - Plot the simulated and experimental data, the laws of the model... (
plot.py
)
The scripts in this folder are not intended to be modified (unless you find errors, in which case please let me know) or used directly to run simulations.
The makeFiles
folder contains scripts to run to generate the
data/processed
directory, that contains the posstreated data.
The main
folder contains the scripts that should be run to perform
the simulations and plot their results.
The code has been tested on the following systems:
- Linux: Ubuntu 24.04 LTS
- Mac: MacOS Big Sur 11.6.2
- Windows:
The code has been developed in Python 3.8 and maintained with Python 3.11.7.
Errors might occur on a machine or cluster that is missing some Python packages, like cma
, latex
and mpl-axes-aligner
. They can be installed via Python console with:
pip install cma
pip install latex
pip install mpl-axes-aligner
Ubuntu users might need to install texlive packages via terminal:
sudo apt install texlive texlive-latex-extra texlive-fonts-recommended dvipng cm-super texlive-fonts-extra
or
sudo apt install texlive-full
Available in the data
folder.
Reproducing our results is costly in terms of time and memory.
We therefore recommend simulating with "small" parameters first.
For example, compute averages on
- In main/lineage/compute.py taking
SIMU_COUNT = 2
instead of1000
- In main/population/compute.py taking
SIMU_COUNT = 3
instead of30
, and start with$N_{init} = 5$ cells rather than$300$ or$1000$ by settingC_EXP = np.array([5])
For "larger" parameters, parallel computing on a cluster is strongly recommended.
We used the CLEPS cluster from Inria Paris. Our Slurm submission scripts are the .batch
files contained in the main directory.
Please contact me directly if you need some of our raw simulated data (250 Go total, including less than 5 Go for lineage simulations).