The hybrid direct/tau-leaping method combines the direct method and the tau-leaping method. It is more accurate than tau-leaping for problems that have species with small populations. For some problems it is also faster than tau-leaping. Recall that tau-leaping is only efficient if many reactions firing during a time step. This hybrid method divides the reactions into two groups: volatile/slow and stable. We use the direct method to simulate the reactions in the volatile/slow group and tau-leaping to simulate the stable reactions.
Like regular tau-leaping, one specifies an accuracy goal with the allowed error ε. One assumes that the expected value of the reaction propensities is constant during a time step. The time step is chosen so that the expected relative change in any propensity is less than ε. A reaction is volatile if firing it a single time would produce a relative change of more than ε in any of its reactants. Consider these examples with ε = 0.1: The reaction X → Y is volatile if x < 10. The reaction X + Y → Z is volatile if either x < 10 or y < 10. The reaction 2 X → Y is volatile if x < 20.
Reactions that are "slow" are also simulated with the direct method. A reaction is classified as slow if it would fire few times during a time step. The threshold for few times is 0.1. During a time step one first computes the tau-leaping step τ. Then any reactions in the stable group that have become volatile or slow are moved to the volatile/slow group.
To take a step with the hybrid method we determine a time step τ for the stable reactions and generate a unit exponential deviate e for the volatile/slow reactions. Let σ be the sum of the PMF for the discrete deviate generator. If e ≤ σ τ, we reduce the time step to e/σ and take a tau-leaping step as well as fire a volatile/slow reaction. Otherwise we reduce e by σ τ and save this value for the next step, update the PMF with the integrated propensities, and take a tau-leaping step. To integrate the propensities one can use the forward Euler method, the midpoint method, or the fourth order Runge-Kutta method.