的是哪一步反应和该反应在什么时候发生?为此,可以定义“下一步反应密度函数”(next-reaction density function) (, |,)Pjt ? x ,它表示在() t ? Xx 时,下一步反应在[, )ttd ??????内发生,且为反应 j R 的概率。可以证明,随机数对(,) j ?满足如下联合概率分布: 0 ( , | , ) ( ) exp( ( ) ) ( 0; 1,..., ) j Pjta a j M ??????? xxx (1.1) 其中 0 1 () () M j j aa ??? xx 为当前时刻所有反应的趋势函数之和。为了产生满足(1.1) 式分布的随机数对, Gillespie 提出了如下算法: (a) 随机产生两个(0,1) 间均匀分布的随机数 1 r 及 2 r ; (b) 计算 0 () a x ,取 0 1 11 =ln () ar ? x ; (c) 取 j 为满足 20 1 () () j k k ara ??? xx 的最小整数。 Gillespie 所提出的上述算法很容易计算机编程实现: 按此算法产生(,) j ?后, 进行第 j 步反应, 即更新体系状态( 1,..., ) iiji X XiN ????, 并更新时间 tt ???; 然后再按算法产生新的(,) j ?,如此往复进行。 1.2.1.2 τ-leap 方法当体系尺度较大时, 为了提高模拟的速度, 还可以采用 leap ??近似方法[23] 。与随机模拟方法不同, leap ??方法并不跟踪每步反应的发生,而是随机地确定在接下来的时间间隔[, )tt ??内,每步反应所发生的次数(;,) j Kt ? x 。可以证明, 当?满足所谓的“跳跃( leap )”条件, 即?足够小使得所有的趋势函数() j a x 并不发生