Algorithms

Exact algorithms

Direct methods

BioSimulator.EnhancedDirect — Type
EnhancedDirect()

A Direct method that uses a dependency graph.

References

  • Marchetti L., Priami C., Thanh V.H. (2017) Simulation Algorithms for Computational Systems Biology. Texts in Theoretical Computer Science.
BioSimulator.SortingDirect — Type
SortingDirect()

The sorting direct method reorders reactions to identify frequently occurring events. This effectively reduces the search depth in selecting the next reaction.

References

  • McCollum, J.M., Peterson, G.D., Cox, C.D., Simpson, M.L., Samatova, N.F. (2006). The sorting direct method for stochastic simulation of biochemical systems with varying reaction execution behavior. Computational Biology and Chemistry. https://doi.org/10.1016/j.compbiolchem.2005.10.007.

First reaction methods

BioSimulator.NextReaction — Type
NextReaction()

Gibson and Bruck's next reaction method. Uses a priority queue to select the next reaction event and time.

References

  • Gibson, M.A., Bruck, J. (1999) Efficient exact stochastic simulation of chemical systems with many species and many channels. Journal of Physical Chemistry. https://doi.org/10.1021/jp993732q

Rejection methods

BioSimulator.RejectionSSA — Type
RejectionSSA()

A rejection-based algorithm that operates on "virtual states" to accelerate simulation.

WARNING: This implementation is a work in progress.

References

  • Thahn, V.H., Priami, C., Zunino, R. (2014) Efficient rejection-based simulation of biochemical reactions with stochastic noise and delays. Journal of Chemical Physics. https://doi.org/10.1063/1.4896985

Approximate algorithms

Note: These implementations are a work in progress. The TauLeapingDG2001 and TauLeapingDGLP2003 methods need "hybrid" counterparts.

BioSimulator.TauLeapingDG2001 — Type
TauLeapingDG2001()

A pure tau-leaping method using the Equation (26a) to select tau.

Optional Arguments

Work in progress.

References

BioSimulator.TauLeapingDGLP2003 — Type
TauLeapingDGLP2003()

A pure tau-leaping method using the Equation (6) to select tau.

Optional Arguments

Work in progress.

References

  • Gillespie, D.T., Petzold, L.R. (2003) Improved leap-size selection for accelerated stochastic simulation. Journal of Chemical Physics. https://doi.org/10.1063/1.1613254
BioSimulator.StepAnticipation — Type
StepAnticipation()

A pure tau-leaping method using the Equation (15) to select tau.

Optional Arguments

Work in progress.

References

  • Sehl, M.E., Alekseyenko, A.L., Lange, K.L. (2009) Accurate stochastic simulation via the step anticipation tau-leaping (SAL) algorithm. Journal of Computational Biology. https://dx.doi.org/10.1089/cmb.2008.0249
BioSimulator.HybridSAL — Type
HybridSAL()

Same as StepAnticipation(), but defaults to Direct() depending on the cumulative intensity.

Optional Arguments

Work in progress.

References

  • Sehl, M.E., Alekseyenko, A.L., Lange, K.L. (2009) Accurate stochastic simulation via the step anticipation tau-leaping (SAL) algorithm. Journal of Computational Biology. https://dx.doi.org/10.1089/cmb.2008.0249