gillespied

The module contains various physical time reaction propagation algorithms based on the Gillespie algorithm from 1977. In the current version this module contains - the default version of Gillespie - The modification introduced by Sandmann 2008, which makes possible faster sample reaction arrival times, in case all propensities of the reactions are known exactly. I. e. this modification can be applied, in case propensities were not estimated. - The modification introduced by Petzold et. al. 2006. At the expense of allocating an ancillary propensities array, where their cumulative sum is stored, the velocity of sampling the reaction index increases, dependent on the chosen search policy of assumedSorted ranges. - The module provides also a common testing routine, containing tests for all combinations of modifications.

Members

Aliases

LDM
alias LDM = Flag!"LDM"

Whether the cumulative sum is stored separately inside the provided algorithm struct. In this case, a constructor is provided, which recieves the amount of propensietes during the simulation. An array of proper type is expanded to store the cumulative fold resuls, which can be search faster.

Sandmann
alias Sandmann = Flag!"Sandmann"

Whether the Sandmann enhancement is turned on

possibleTypes
alias possibleTypes = AliasSeq!(float, double, real, size_t)

The algorithms should work with all kinds of floating numbers as well as with integers.

Functions

fill
size_t fill(R inputProps)
Undocumented in source. Be warned that the author may not have intended to support it.
gillespieAlgorithm
auto gillespieAlgorithm(size_t val)

The convenience function to release a gillespie algorithm structure with some preset properties. In this case, the preset handles the memory allocation due using an internal buffer for storing passed propensities. Other properties do not affect memory allocations.

testTemplate
void testTemplate()
Undocumented in source. Be warned that the author may not have intended to support it.

Manifest constants

maxTestedSizes
enum maxTestedSizes;
Undocumented in source.
minTestedSizes
enum minTestedSizes;
Undocumented in source.

Templates

FloatingType
template FloatingType(T)

The floating type in use is defined either by the user on algorithm declaration or is chosen to be real, in case propensities come in form of integer values.

Meta