Skip to content

EnsembleSummary specification

tgvaughan edited this page Jan 28, 2013 · 5 revisions

A EnsembleSummary simulation is similar to the Ensemble simulation type in that it specifies the calculation of multiple trajectories under the same model. However, unlike the Ensemble type which records the full population size history of every simulation, the EnsembleSummary type uses the simulated population sizes to estimate the values of certain "moments" at a fixed set of evenly spaced times. At the outermost level, it is defined using the following <run> element:

    <run spec='Trajectory'
         nTraj="INTEGER"
         simulationTime="DOUBLE"
         nSamples="INTEGER"
         seed="INTEGER"
         verbosity="INTEGER">

      <!-- Stepper-->

      <!-- Stochastic Model -->

      <!-- Initial State -->

      <!-- Population End Conditions-->

      <!-- Moments and Moment Groups -->

      <!-- Outputs-->

    </run>

The nTraj attribute specifies the number of trajectories which will be used to estimate the moments. The more trajectories you use, the better the estimates will be.

The simulationTime attribute specifies the length of time the simulation is run for. This becomes a maximum time when other explicit end conditions are included.

The nSamples attribute sets a fixed number of evenly spaced population size samples to record. If this is left unspecified, the number of samples will depend on the particular "stepper" algorithm used to stochastically increment the state. (The default is Gillespie's stochastic simulation algorithm, in which case the population sizes are recorded following every reaction event.)

If provided, the values of the seed attribute is used to initialize the random number generator. If this is absent, a different seed is selected every time the simulation is run.

The verbosity attribute determines the amount of descriptive output to send to the screen during the simulation, on a scale of 0-3 where 0 means no output causes a maximum amount of output to be displayed.

The following elements are described in detail on their own pages:

Note that only the model and initial state are absolutely mandatory - all other elements and attributes are optional. However, certain combinations of elements and attributes do not make sense. In particular, an error will be raised if simulationTime is unspecified and no end conditions are included, as this will result in an unending calculation. Additionally, while it is possible to specify no output elements, there is no point to performing the calculation if at least one is not included.

At least one <moment> or <momentGroup> element must be included.