The molecular cascade of Module 1 produces a complex network of state variables that change on timescales ranging from seconds (calcium spikes) to hours (carbon pools to equilibrium). To make this tractable, we model the cell as a system of 13 coupled ordinary differential equations(ODEs) and integrate them numerically. The variables are grouped into three subsystems — carbon, nutrients, and signalling — coupled through a single gating variable, the symbiotic exchange coupling Φsym.
State variables
| Index | Symbol | Meaning |
|---|---|---|
| 0–1 | C_plant, C_fungus | Photosynthate (sucrose-equivalent) pools |
| 2–4 | P_soil, P_fungus, P_plant | Phosphorus pools (soil, hyphal, plant tissue) |
| 5–6 | N_fungus, N_plant | Nitrogen pools |
| 7 | Ca_nucleus | Free nuclear Ca²⁺ concentration |
| 8 | CCaMK | Fraction of CCaMK in the activated state (the "switch") |
| 9 | SL | Strigolactone concentration in the rhizosphere |
| 10 | LCO | Lipo-chitooligosaccharide (Myc-factor) concentration |
| 11–12 | JA_plant, JA_fungus | Jasmonate stress signals |
The carbon subsystem
Carbon flows from light energy via plant photosynthesis into the plant pool, then partially across to the fungus when the symbiosis is open:
$$\frac{dC_{\text{plant}}}{dt} = \mu_P\, I_{\text{light}} \;-\; k_{\text{exch}}\,\Phi_{\text{sym}}\,(C_{\text{plant}} - C_{\text{fungus}}) \;-\; \lambda_C\, C_{\text{plant}}$$
The three terms model: (1) photosynthetic gain proportional to light intensity Ilight; (2) symbiotic exchange driven by the concentration gradient between plant and fungus, gated by Φsym; (3) respiratory loss at constant rate λC. The fungal carbon pool obeys a similar equation with an inverted exchange term and its own loss.
The gating variable Φsym ∈ [0,1] is a sigmoid of the activated CCaMK fraction:
$$\Phi_{\text{sym}} \;=\; \sigma\!\left(\frac{\text{CCaMK} - \theta_{\text{sym}}}{k_\sigma}\right), \qquad \sigma(x)=\frac{1}{1+e^{-x}}$$
When CCaMK is below threshold θsym, Φsym ≈ 0 and the symbiosis is shut: no carbon or phosphorus crosses the interface. When CCaMK climbs past threshold, Φsym → 1 and the exchange opens up.
The nutrient subsystem
Phosphate moves from soil into the fungal hyphae against a steep concentration gradient (Module 6 explains the proton motive force that powers this), and is then transferred across the periarbuscular interface into the plant:
$$\frac{dP_{\text{fungus}}}{dt} = V_{\text{up}}\,\frac{P_{\text{soil}}}{K_M + P_{\text{soil}}} - k_{\text{P,exch}}\,\Phi_{\text{sym}}\,(P_{\text{fungus}} - P_{\text{plant}}) - \lambda_P P_{\text{fungus}}$$
The Michaelis–Menten form Vup·Psoil/(KM + Psoil) captures the saturation of hyphal high-affinity phosphate transporters (KM ≈ 3–30 µM in the real system). The plant phosphorus equation mirrors this. Nitrogen is treated analogously with its own rate constants.
The signal cascade
Strigolactones are produced by the plant at a rate that increases when soil phosphate is low (the plant signals it is hungry):
$$\frac{dSL}{dt} = k_{SL,0}\,\frac{1}{1 + P_{\text{plant}}/K_{SL}} - \lambda_{SL}\,SL$$
SL stimulates fungal LCO production:
$$\frac{dLCO}{dt} = k_{LCO}\,SL - \lambda_{LCO}\,LCO$$
LCO triggers nuclear calcium oscillations via a Hopf-like bifurcation in the Ca²⁺ release machinery. The simplest empirical model uses a Goldbeter-style oscillator forced by LCO; the precise functional form is in Module 3. The resulting Ca²⁺ trace is then convolved with the CCaMK memory kernel to drive the switch.
The defence channel
A coupled pair of jasmonate equations tracks stress-signal flow. Plant JA rises when light is unusually low (proxy for damage) and decays. JA is shuttled to the fungus, which propagates it to other plants in the network (in Module 4). Although a single cell sees only background JA, the equations are kept so the same ODE can be reused at the network level.
Parameters and units
The model is normalised so that pools are unitless fractions, time is in hours, and rate constants are of order 0.01 – 1 h⁻¹. Light Ilight is given in µmol photons m⁻² s⁻¹ (typical canopy values are 500–1500). Soil phosphate is expressed in µM. The default parameter set reproduces the qualitative behaviour of laboratory measurements on Medicago-Rhizophagus irregularis symbiosis.
Why an ODE and not a stochastic model?
Individual molecular events — one LCO binding, one Ca²⁺ release event — are stochastic, and a full treatment would use a chemical master equation or Gillespie simulation. However, the relevant pools are large (millions of LCO receptors, ~10⁶ Ca²⁺ ions per nuclear release event) and the variance averaged over the cell is small. The deterministic ODE captures the mean trajectory faithfully and is many orders of magnitude faster to integrate. Stochasticity becomes important if you go to single- receptor experiments or single-arbuscule live-imaging studies.
Run it yourself
The panel below lets you change four key parameters with sliders — integration time, initial LCO concentration, soil phosphate, and light intensity — and watch the 13 variables evolve. CCaMK crosses threshold for some parameter combinations and not others; finding the boundary is itself an exercise in bifurcation analysis.
Cellular ODE — 13-variable Symbiosis Model
Integrates the full single-cell carbon-phosphorus-nitrogen exchange between a plant and an arbuscular mycorrhizal fungus, including the LCO → Ca²⁺ → CCaMK signal cascade. Solver: scipy.integrate.solve_ivp on the FastAPI backend.
LCO_init = 0: the symbiosis cannot start without fungal signal. Try setting P_soil = 200 (high): the plant has no incentive to seek a fungal partner; SL drops and the cascade aborts even with LCO present. The model captures the well-known "fertiliser inhibits mycorrhization" effect quantitatively.