Skip to content
/ CRNs Public

GPU-accelerated Gillespie simulations for stochastic chemical reaction networks

License

Notifications You must be signed in to change notification settings

kaiu85/CRNs

Repository files navigation

CRNs

GPU-accelerated Gillespie simulations for stochastic chemical reaction networks

Depends on Python 3, numpy, PyTorch, tqdm.

tssa.py implements a GPU-accellerated stochastic_reaction_network class, which is able to sample many processesses in parallel from the chemical master equation with time-varying external drives, as long as these drives change only at a discrete set of timepoints.

network_constructurs.py implements functions to create the chemical reaction networks studied in Ueltzhöffer et al. (2021).

simple_drive_network.py implements the simple_reaction_network class, which simulates deterministic rate equations for chemical reaction networks. It uses an interface very similar to stochastic_reaction_network, but it only relies on numpy and does not feature GPU acceleration.

To see how these classes are used, and how the graphs in Ueltzhöffer et al. were created, see the following scripts:

  • create_graphs_for_figure_1b.py
  • create_graphs_for_figure_2.py
  • create_graphs_for_figure_4b.py
  • create_graphs_for_figures_4a_and_4c.py

To run all scripts and create all graphs, you can just run

bash run_all.sh

in terminal.

About

GPU-accelerated Gillespie simulations for stochastic chemical reaction networks

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published