1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Homework Help: Rate Constants From Equilibrium Constants

  1. Feb 9, 2009 #1
    Hi, I am currently attempting to implement the Gillespie algorithm for an artificial gene network. I have been given a set reactions and their accompanying equilibrium constants. However, to execute the algorithm I must know the rate constant of the reaction (units of 1/s). I know that the equilibrium constant is Ke=k+/k-. Where Ke is the equilibrium constant and k+ and k- are forward and backwards rate constant respectively.

    My question basically is "How do I go from equilibrium constants to rate constants?"
  2. jcsd
  3. Feb 9, 2009 #2


    User Avatar
    Science Advisor
    2017 Award

    You can't. The equation you wrote is correct, but as the equation implies, you can't solve for both rate constants knowing only the equilibrium constant.
  4. Feb 9, 2009 #3
    In my system I know the number of molecules of each substance (in moles). Ek is in units of 1/mol.sec (Is that correct)? From the equilibrium constant I know that for every x moles of one substance there are k+ reactions per second and k- reactions per second per mole of y such that the number of moles of each x and y remains in equilibrium.

    I only know that Ke=k+/k-.

    There has to be a way of handling equilibrium constants to do with rates otherwise how do you calculate reaction rates and how will I ever get this simulation working.

    Please help, or any suggestions on how to get around this problem.
  5. Feb 9, 2009 #4


    User Avatar
    Science Advisor
    2017 Award

    What does Ek represent? In general, the units of rate constants and equilibrium constants depend on the specific reaction that you are studying. For example for the reaction,

    R --> P
    Kc = [P]/[R]
    v+ = k+[R]
    v- = k-[P]

    In this case, the equilibrium constant is dimensionless and the forward and backward rate constants have units of (concentration)-1(time)-1.

    However, for a bimolecular reaction such as
    R1 + R2 --> P

    Kc = [P]/[R1][R2]
    v+ = k+[R1][R2]
    v- = k-[P]

    The equilibrium constant would have units of (concentration)-1, the forward rate constant would have units of (concentration)-2(time)-1, and the backward rate constant would have units of (concentration)-1(time)-1.

    If all you have is the value of the equilibrium constant, then you need more information in order to get the values of k+ and k-. As it stands, you do not have enough information to get your simulation working. In order to get information about the rate constants, you would need to do some type of experiment where you perturb your system from equilibrium and measure the relaxation time for return to equilibrium. Alternatively, you can measure the rate of fluctuations of the system around equilibrium.
  6. Feb 24, 2010 #5
    I'm trying to do the same thing right now. I've just learned how to numerically solve sets of chemical reactions with ODEs. It is a little tricky to make sure you have a closed set of equations. I think it is a good starting point for doing Gillespie.

    You have N species and M reactions. L of these reactions are instantaneous, i.e. so fast that they are described by equilibrium constants rather than rate coefficients.

    Here is what you do to set up the system:
    (1) decide which species are your "component species", i.e. inputs, and which are "product species.
    (2) reduce the set of reactions to M' independent reactions (M' <= M).
    (3) determine the mass conservation equations for the "component species"
    (4) determine the kinetic equations (ODEs) for the "product species", but exclude any reactions that are instantaneous. You will only have kinetic equations for species that take place in at least one reaction that is not instantaneous.
    (5) in the end you need to have a "closed system", i.e. as many total equations -- kinetic, equilibrium, and conservation -- as you have species.

    Here is what you do to solve the system:
    (1) time step the kinetic equations to update the concentrations of the kinetic product species
    (2) apply the conservation equations to update the concentrations of the "component species"
    (3) use the equilibrium constants for the instantaneous reactions to update the concentrations of non-kinetic product species
    (4) go to (1)

    Now for Gillespie. I'm not sure about this, but since it is based on physical reaction modelling rather than mathematical equations, one does not need the same kind of "closure". I think the right approach is to do the following:

    (1) do a normal Gillespie step for only those reactions that are not instantaneous
    (2) next update the concentrations for the instantaneous reactions as if the reactions have occurred
    (3) go to (1)

    The only potential glitch here is that there is always the chance that the random time increment in the Gillespie step will be so small that one of the "instantaneous" reactions might actually have a reasonable probability of occurring. However, if none of the other rates are particularly fast, this will happen almost never.

    Just to restate, the idea is to treat instantaneous reactions as if they occur every time step no matter what. Like I said, I'm just sitting down to do this right now, which is how I stumbled across this post. I hope this was helpful!

    I'll follow up as I make more progress.
  7. Feb 25, 2010 #6
    Oh, just thought I'd add something. Since the reactions for which you have equilibrium constants are instantaneous in the FORWARDS direction, you do not need to include the reverse reactions in the reaction list.

    My own code is progressing. When I get it working, I may or may not post it to Matlab Central. But I would be glad to share it with you.
  8. Mar 1, 2010 #7
    Update: Gillespie with equilibrium constants

    Turns out this is not so simple, and the subject of current research. I'll be working on this over the next couple of weeks.

    See "Multiscale stochastic simulation algorithm with stochastic partial equilibrium assumption for chemically reacting systems" Journal of Computation Physics, 206 (2005) pp. 395-411
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook