Rate laws¶
A rate law is the formula giving the flux through one process. Each process in a Model Realization has one active rate law and may keep others alongside it as inactive alternatives.
The Edit Rate Law dialog¶
Right-click a process in a Model Realization's diagram and choose Edit Rate Law…, or press Edit Rate Law in the process's Properties dialog. The dialog has five parts, top to bottom.
The rate-law list. Every rate law defined for this process, with an Active checkbox, a Name, and a preview of the formula. Tick a different Active box to switch the realization to that law. The preview wraps, so long modular laws can be compared side by side, and its symbols are live — double-click a state or process symbol to see it in the diagram, or a parameter to jump to it.
The typeset formula. The selected law rendered as mathematics, with divisions stacked as fractions. This is the fastest way to spot a misplaced parenthesis.
The formula editor. Where you type. It works in symbols — S123 for a
state, P456 for another process's flux — and validates as you type, showing
a one-line message when the formula will not parse. Selecting a state in the
list below and pressing the insert button drops its symbol at the cursor.
Process States and Parameters. The left table lists every state that takes part in the process with its symbol, name and role; the right lists the parameters the formula uses, with their default values, which you can edit here.
The buttons. Symbols… opens the model's symbol table — every symbol, its short form, and its full name. Default… builds a rate law for you (below). + and − add and delete rate laws.
Letting ProcessDB write the law¶
Default… reads the process — its reactants, products, enzymes, activators, and inhibitors, and their stoichiometry — and opens the Default Rate Law dialog. Its first question is which kind of law to build.
Mass action / Michaelis–Menten¶
The classical default, chosen by the shape of the process:
- Synthesis (no reactants): a single rate constant, multiplied by any enzymes present and divided through by inhibition factors.
- Degradation and conversion: mass action
k · ∏Sᵢwhen there is no enzyme; one Michaelis–Menten term per enzyme, multiplied together, when there is. - Inhibitors contribute a factor
1/(1 + I/Ki)each.
Parameter names are built from the process name where possible (kcat_Hxknse,
Km_Glcse), falling back to the reactant molecule names, and finally to the
process ID. If a name would collide with one already in the model, the process
ID is appended.
Modular rate laws¶
The modular rate laws of Liebermeister, Uhlendorf and Klipp (Bioinformatics 2010) are a family of thermodynamically consistent reversible laws that share one algebraic skeleton:
where u is the enzyme level, f a prefactor for allosteric regulators, T a reversible numerator built from the substrate and product terms, and D a saturation denominator whose shape names the variant. The dialog offers:
| Choice | Denominator | When to use it |
|---|---|---|
| Modular — from roles (CM if enzymatic, else PM) | CM if the process has an enzyme, PM otherwise | The recommended starting point — each process gets the variant that suits it |
| Modular — Common (CM) | ψ⁺ + ψ⁻ − 1 |
The general-purpose reversible enzymatic law |
| Modular — Direct binding (DM) | θ⁺ + θ⁻ + 1 |
Substrates and products bind directly to the free enzyme |
| Modular — Simultaneous binding (SM) | ψ⁺ · ψ⁻ |
Random-order binding of both sides |
| Modular — Power-law (PM) | 1 |
Non-enzymatic and generalised mass-action steps |
| Modular — Force-dependent (FM) | √(θ⁺ · θ⁻) |
The thermodynamic form driven by reaction affinity |
A reactant's stoichiometric coefficient becomes its exponent in these laws, so a coefficient of 2 on the diagram is a squared term in the equation.
How regulators enter a modular law¶
When the process has activators or inhibitors, the Default Rate Law dialog has a second part, How each regulator enters the rate law: one row per regulator, captioned with its symbol, its name and its role, and a choice of forms. It applies to the modular laws only — the mass-action family always treats an inhibitor as non-competitive.
| For an inhibitor | Enters the rate law as |
|---|---|
| Non-competitive — the default for an Inhibitor | Prefactor 1/(1 + I/Ki) on the whole rate |
| Partial (hyperbolic) | Prefactor ρ + (1 − ρ)/(1 + I/Ki), with ρ fitted |
| Competitive | I/Ki added to the denominator, beside the substrate terms |
| For an activator | Enters the rate law as |
|---|---|
| Essential | Prefactor (A/Ka)/(1 + A/Ka) — no activator, no rate |
| Non-essential — the default for an Activator, Regulator or Modifier | Prefactor ρ + (1 − ρ)·(A/Ka)/(1 + A/Ka), with ρ fitted |
| Specific | Ka/A added to the denominator; must bind before the substrate |
The parameters are named Ki, Ka and rho after the state and the process,
so they are easy to find in the Parameter Explorer.
The choice shapes the one law you are building and is written into its formula. Nothing is recorded on the diagram — a role says that a state regulates a process, and the rate law says how — so the same process can carry a competitive and a non-competitive alternative side by side, and switching between them is a matter of which Active box is ticked. To change the mechanism of an existing law, press Default… again and choose differently; the old law stays in the list.
Fill Defaults and Change All Rate Laws… in the Action Items panel do not ask this question — they build every law with each regulator's role default.
Forward/reverse arrow pairs¶
Some diagrams draw a reversible reaction as two arrows with mirrored substrates and products. Three choices handle that case:
- Modular — CM split: + term here, − term on the reverse arrow — applied
to the arrow you are editing, it gives that arrow the positive (
kf) term and its mirrored partner the negative (kr) term, built so both share one parameter set. The difference of the two fluxes is then exactly the reversible CM law. It is offered only from the Edit Rate Law dialog. - Modular — CM forward term only (kf) and Modular — CM reverse term only (kr) apply one half to one arrow, when you want to choose which arrow is which yourself.
Each half keeps the full two-sided denominator; that is what makes the pair add up correctly.
ProcessDB does not guess which arrow is the reverse
A process named revIDH2 is not necessarily the reverse of IDH2.
Reverse partners are found by topology — the substrates of one are the
products of the other — never by name. If no such partner exists, the
split choice says so and creates nothing; build the two halves with the
forward-only and reverse-only choices instead.
Working with alternatives¶
Because a process can carry several rate laws with only one active, the natural workflow is:
- Build a default and look at the fit.
- Press Default… again with a different kind; the old law stays in the list.
- Tick whichever Active box you want and re-simulate.
Change All Rate Laws… in the Action Items panel does the same thing for every process at once, and is likewise non-destructive.
Rate laws and the equations¶
Changing a rate law makes every MOE built on this realization out of date. Those MOEs say so with a banner above their equation listing; press Regenerate there, or Regenerate Equations for All MOEs on the realization, when you are ready. See The equation listing.