Jump to content

Smoldyn

From Wikipedia, the free encyclopedia

Smoldyn
Original author(s)Steve Andrews
Initial releaseJuly 1, 2003; 21 years ago (2003-07-01)
Stable release
2.71 / February 6, 2023; 21 months ago (2023-02-06)
Repositorygithub.com/ssandrews/Smoldyn
Written inC, C++, Python
Operating systemLinux, macOS and Windows
TypeSimulation software
LicenseLGPL
Websitewww.smoldyn.org

Smoldyn is an open-source software application for cell-scale biochemical simulations.[1][2] It uses particle-based simulation, meaning that it simulates each molecule of interest individually, in order to capture natural stochasticity and yield nanometer-scale spatial resolution. Simulated molecules diffuse, react, are confined by surfaces, and bind to membranes in similar manners as in real biochemical systems.

History

[edit]

Smoldyn was initially released in 2003 as a simulator that represented chemical reactions between diffusing particles in rectilinear volumes.[3] Further development added support for surfaces,[1] multiscale simulation[4] molecules with excluded volume,[2] rule-based modeling[5] and C/C++ and Python APIs.[6] Smoldyn development has been funded by a postdoctoral NSF grant awarded to Steve Andrews, a US DOE contract awarded to Adam Arkin, a grant from the Computational Research Laboratories (Pune, India) awarded to Upinder Bhalla, a MITRE contract and several NIH grants awarded to Roger Brent, and a Simons Foundation grant awarded to Steve Andrews.

Development team

[edit]

Smoldyn has been developed primarily by Steve Andrews, over the course of multiple research and teaching positions. Other contributors have included Nathan Addy,[1] Martin Robinson,[4] and Diliwar Singh.[6]

Features

[edit]

Smoldyn is primarily a tool for biophysics and systems biology research. It focuses on spatial scales that are between nanometers and microns. The following features descriptions are drawn from the Smoldyn documentation.[7]

  • Model definition: Models are entered as text files that describe the system. This includes: lists of molecule species, their diffusion coefficients, and their chemical reactions; lists of surfaces and their interactions with molecules; initial molecule and surface locations; and actions that a "virtual experimenter" carries out during the simulation.
  • Real-time graphics: Smoldyn displays the simulated system to a graphics window as the simulation runs.
  • Simulated behaviors: Smoldyn's simulated behaviors focus on molecular diffusion, interaction with surfaces, and interactions with each other. This enables simulation of: molecular diffusion and drift, chemical reactions, excluded volume interactions, macromolecular crowding, allosteric interactions, surface adsorption and desorption, partial transmission through surfaces, on-surface diffusion, and long-range intermolecular forces.
  • Accuracy: Smoldyn development has focused strongly on quantitative accuracy. Tests have been run and published to show that diffusion,[1] chemical reactions,[3][1] surface interactions,[8] excluded volume interactions,[2] and on-surface diffusion [2] simulate with high quantitative accuracy, typically with substantially less than 1% error.
  • Rule-based modeling: Smoldyn supports two types of rule-based modeling. It reads the BNGL language,[2] which it parses with the BioNetGen software. It also supports a method that is based on wildcard characters.[5]
  • Multi-scale simulation: Because particle-based simulation is computationally intensive, Smoldyn also supports simulation using a spatial version of the Gillespie algorithm. These algorithms are linked together to enable both to be used in a single simulation.[4]
  • C/C++ and Python APIs: All of Smoldyn's functions can be accessed through either a C/C++[2] or a Python[6] API.

GPU acceleration

[edit]

Smoldyn has been refactored twice to run on GPUs, each time offering approximately 200-fold speed improvements.[9][10] However, neither version supports the full range of features that is available in the CPU version. They are not being supported currently.

See also

[edit]

References

[edit]
  1. ^ a b c d e Andrews, Steven S.; Addy, Nathan J.; Brent, Roger; Arkin, Adam P. (2010). "Detailed simulations of cell biology with Smoldyn 2.1". PLOS Comput. Biol. 6 (3): e1000705. Bibcode:2010PLSCB...6E0705A. doi:10.1371/journal.pcbi.1000705. PMC 2837389. PMID 20300644.
  2. ^ a b c d e f Andrews, Steven S. (2017). "Smoldyn: particle-based simulation with rule-based modeling, improved molecular interaction, and a library interface". Bioinformatics. 33 (5): 710–717. doi:10.1093/bioinformatics/btw700. PMID 28365760.
  3. ^ a b Andrews, Steven S.; Bray, Dennis (2004). "Stochastic simulation of chemical reactions with spatial resolution and single molecule detail". Physical Biology. 1 (3–4): 137–151. Bibcode:2004PhBio...1..137A. doi:10.1088/1478-3967/1/3/001. PMID 16204833. S2CID 16394428.
  4. ^ a b c Robinson, Martin; Andrews, Steven S.; Erban, Radek (2015). "Multiscale reaction-diffusion simulations with Smoldyn". Bioinformatics. 31 (14): 2406–2408. doi:10.1093/bioinformatics/btv149. PMC 4495299. PMID 25788627.
  5. ^ a b Andrews, Steven S. (2019). "Rule-Based Modeling Using Wildcards in the Smoldyn Simulator". Modeling Biomolecular Site Dynamics. Methods in Molecular Biology. Vol. 1945. pp. 179–202. doi:10.1007/978-1-4939-9102-0_8. ISBN 978-1-4939-9100-6. PMID 30945247. S2CID 92998562.
  6. ^ a b c Singh, Dilawar; Andrews, Steven S. (2022). "Python interfaces for the Smoldyn simulator". Bioinformatics. 38 (1): 291–293. doi:10.1093/bioinformatics/btab530. PMID 34293100.
  7. ^ www.smoldyn.org/SmoldynManual.pdf
  8. ^ Andrews, Steven S. (2009). "Accurate particle-based simulation of adsorption, desorption and partial transmission". Physical Biology. 6 (4): 046015. Bibcode:2009PhBio...6d6015A. doi:10.1088/1478-3975/6/4/046015. PMC 2847898. PMID 19910670.
  9. ^ Dematte, Lorenzo (2012). "Smoldyn on Graphics Processing Units: Massively Parallel Brownian Dynamics Simulations". IEEE/ACM Transactions on Computational Biology and Bioinformatics. 9 (3): 655–667. doi:10.1109/TCBB.2011.106. PMID 21788675. S2CID 14763924.
  10. ^ Gladkov, Denis V.; Alberts, Samuel; D'Souza, Roshan M.; Andrews, Steven S. (2011). "Accelerating the Smoldyn Spatial Stochastic Biochemical Reaction Network Simulator Using GPUs". Proceedings of the 19th High Performance Computing Symposia.
[edit]