Smoldyn

Last updated

Smoldyn
Original author(s) Steve Andrews
Initial releaseJuly 1, 2003;20 years ago (2003-07-01)
Stable release
2.71 / February 6, 2023;13 months ago (2023-02-06)
Repository github.com/ssandrews/Smoldyn
Written in C, C++, Python
Operating system Linux, macOS and Windows
Type Simulation software
License LGPL
Website www.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.

Contents

History

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

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

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]

GPU acceleration

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

Related Research Articles

<span class="mw-page-title-main">Molecular dynamics</span> Computer simulations to discover and understand chemical properties

Molecular dynamics (MD) is a computer simulation method for analyzing the physical movements of atoms and molecules. The atoms and molecules are allowed to interact for a fixed period of time, giving a view of the dynamic "evolution" of the system. In the most common version, the trajectories of atoms and molecules are determined by numerically solving Newton's equations of motion for a system of interacting particles, where forces between the particles and their potential energies are often calculated using interatomic potentials or molecular mechanical force fields. The method is applied mostly in chemical physics, materials science, and biophysics.

<span class="mw-page-title-main">Gene regulatory network</span> Collection of molecular regulators

A generegulatory network (GRN) is a collection of molecular regulators that interact with each other and with other substances in the cell to govern the gene expression levels of mRNA and proteins which, in turn, determine the function of the cell. GRN also play a central role in morphogenesis, the creation of body structures, which in turn is central to evolutionary developmental biology (evo-devo).

<span class="mw-page-title-main">Computer simulation</span> Process of mathematical modelling, performed on a computer

Computer simulation is the process of mathematical modelling, performed on a computer, which is designed to predict the behaviour of, or the outcome of, a real-world or physical system. The reliability of some mathematical models can be determined by comparing their results to the real-world outcomes they aim to predict. Computer simulations have become a useful tool for the mathematical modeling of many natural systems in physics, astrophysics, climatology, chemistry, biology and manufacturing, as well as human systems in economics, psychology, social science, health care and engineering. Simulation of a system is represented as the running of the system's model. It can be used to explore and gain new insights into new technology and to estimate the performance of systems too complex for analytical solutions.

<span class="mw-page-title-main">Molecular mechanics</span> Use of classical mechanics to model molecular systems

Molecular mechanics uses classical mechanics to model molecular systems. The Born–Oppenheimer approximation is assumed valid and the potential energy of all systems is calculated as a function of the nuclear coordinates using force fields. Molecular mechanics can be used to study molecule systems ranging in size and complexity from small to large biological systems or material assemblies with many thousands to millions of atoms.

<span class="mw-page-title-main">Molecular modelling</span> Discovering chemical properties by physical simulations

Molecular modelling encompasses all methods, theoretical and computational, used to model or mimic the behaviour of molecules. The methods are used in the fields of computational chemistry, drug design, computational biology and materials science to study molecular systems ranging from small chemical systems to large biological molecules and material assemblies. The simplest calculations can be performed by hand, but inevitably computers are required to perform molecular modelling of any reasonably sized system. The common feature of molecular modelling methods is the atomistic level description of the molecular systems. This may include treating atoms as the smallest individual unit, or explicitly modelling protons and neutrons with its quarks, anti-quarks and gluons and electrons with its photons.

Fluorescence correlation spectroscopy (FCS) is a statistical analysis, via time correlation, of stationary fluctuations of the fluorescence intensity. Its theoretical underpinning originated from L. Onsager's regression hypothesis. The analysis provides kinetic parameters of the physical processes underlying the fluctuations. One of the interesting applications of this is an analysis of the concentration fluctuations of fluorescent particles (molecules) in solution. In this application, the fluorescence emitted from a very tiny space in solution containing a small number of fluorescent particles (molecules) is observed. The fluorescence intensity is fluctuating due to Brownian motion of the particles. In other words, the number of the particles in the sub-space defined by the optical system is randomly changing around the average number. The analysis gives the average number of fluorescent particles and average diffusion time, when the particle is passing through the space. Eventually, both the concentration and size of the particle (molecule) are determined. Both parameters are important in biochemical research, biophysics, and chemistry.

In probability theory, the Gillespie algorithm generates a statistically correct trajectory of a stochastic equation system for which the reaction rates are known. It was created by Joseph L. Doob and others, presented by Dan Gillespie in 1976, and popularized in 1977 in a paper where he uses it to simulate chemical or biochemical systems of reactions efficiently and accurately using limited computational power. As computers have become faster, the algorithm has been used to simulate increasingly complex systems. The algorithm is particularly useful for simulating reactions within cells, where the number of reagents is low and keeping track of every single reaction is computationally feasible. Mathematically, it is a variant of a dynamic Monte Carlo method and similar to the kinetic Monte Carlo methods. It is used heavily in computational systems biology.

The Systems Biology Markup Language (SBML) is a representation format, based on XML, for communicating and storing computational models of biological processes. It is a free and open standard with widespread software support and a community of users and developers. SBML can represent many different classes of biological phenomena, including metabolic networks, cell signaling pathways, regulatory networks, infectious diseases, and many others. It has been proposed as a standard for representing computational models in systems biology today.

<span class="mw-page-title-main">BALL</span>

BALL is a C++ class framework and set of algorithms and data structures for molecular modelling and computational structural bioinformatics, a Python interface to this library, and a graphical user interface to BALL, the molecule viewer BALLView.

Systems immunology is a research field under systems biology that uses mathematical approaches and computational methods to examine the interactions within cellular and molecular networks of the immune system. The immune system has been thoroughly analyzed as regards to its components and function by using a "reductionist" approach, but its overall function can't be easily predicted by studying the characteristics of its isolated components because they strongly rely on the interactions among these numerous constituents. It focuses on in silico experiments rather than in vivo.

<span class="mw-page-title-main">Diffusion-limited enzyme</span> Enzyme rate limited by diffusion

A diffusion-limited enzyme catalyses a reaction so efficiently that the rate limiting step is that of substrate diffusion into the active site, or product diffusion out. This is also known as kinetic perfection or catalytic perfection. Since the rate of catalysis of such enzymes is set by the diffusion-controlled reaction, it therefore represents an intrinsic, physical constraint on evolution. Diffusion limited perfect enzymes are very rare. Most enzymes catalyse their reactions to a rate that is 1,000-10,000 times slower than this limit. This is due to both the chemical limitations of difficult reactions, and the evolutionary limitations that such high reaction rates do not confer any extra fitness.

COPASI is an open-source software application for creating and solving mathematical models of biological processes such as metabolic networks, cell-signaling pathways, regulatory networks, infectious diseases, and many others.

Rule-based modeling is a modeling approach that uses a set of rules that indirectly specifies a mathematical model. The rule-set can either be translated into a model such as Markov chains or differential equations, or be treated using tools that directly work on the rule-set in place of a translated model, as the latter is typically much bigger. Rule-based modeling is especially effective in cases where the rule-set is significantly simpler than the model it implies, meaning that the model is a repeated manifestation of a limited number of patterns. An important domain where this is often the case is biochemical models of living organisms. Groups of mutually corresponding substances are subject to mutually corresponding interactions.

Virtual Cell (VCell) is an open-source software platform for modeling and simulation of living organisms, primarily cells. It has been designed to be a tool for a wide range of scientists, from experimental cell biologists to theoretical biophysicists.

Within bioinformatics, intrinsic Noise Analyzer (iNA) is an open source software for studying reaction kinetics in living cells. The software analyzes mathematical models of intracellular reaction kinetics such as gene expression, regulatory networks or signaling pathways to quantify concentration fluctuations due to the random nature of chemical reactions.

Multi-state modeling of biomolecules refers to a series of techniques used to represent and compute the behaviour of biological molecules or complexes that can adopt a large number of possible functional states.

Cell-based models are mathematical models that represent biological cells as discrete entities. Within the field of computational biology they are often simply called agent-based models of which they are a specific application and they are used for simulating the biomechanics of multicellular structures such as tissues. to study the influence of these behaviors on how tissues are organised in time and space. Their main advantage is the easy integration of cell level processes such as cell division, intracellular processes and single-cell variability within a cell population.

Hybrid stochastic simulations are a sub-class of stochastic simulations. These simulations combine existing stochastic simulations with other stochastic simulations or algorithms. Generally they are used for physics and physics-related research. The goal of a hybrid stochastic simulation varies based on context, however they typically aim to either improve accuracy or reduce computational complexity. The first hybrid stochastic simulation was developed in 1985.

libRoadRunner is a C/C++ software library that supports simulation of SBML based models.. It uses LLVM to generate extremely high-performance code and is the fastest SBML-based simulator currently available. Its main purpose is for use as a reusable library that can be hosted by other applications, particularly on large compute clusters for doing parameter optimization where performance is critical. It also has a set of Python bindings that allow it to be easily used from Python.

References

  1. 1 2 3 4 5 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. 1 2 3 4 5 6 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. 1 2 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. 1 2 3 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. 1 2 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. 1 2 3 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.