Tomato KEA3 model
The tomato KEA3 model is a non-photochemical quenching (NPQ) model adapted for tomato (Solanum lycopersicum) from the original Arabidopsis NPQ model. It tracks the photosystem II reaction-centre states, plastoquinone redox, lumenal proton and potassium balance, ATP synthesis, PsbS protonation and the xanthophyll cycle.
The KEA3 K⁺/H⁺ antiporter shapes the proton motive force and thus the kinetics of photoprotection, and the model supports PAM fluorescence protocols to reproduce the resulting quenching dynamics.

Simulation parameters
Analyses
PAM Fluorescence - NPQ results
Loading chart...
qL
Loading chart...
Add analysis
Model Details
Review and edit model structure, biological variables, and kinetic parameters.
| Name | Tex name | Initial value | Actions |
|---|---|---|---|
Edit Options
Edit Options
Edit Options
Edit Options
Edit Options
Edit Options
Edit Options
Edit Options
Edit Options
Edit Options
Edit Options
Edit Options
Eq Editor
Build an expression by selecting a node and replacing it with a MathML element, then adjust symbols to the allowed variable names.
Arithmetic
Functions
Trigonometry
Hyperbolic
Comparison
Logic
Tip: click any element to select it, then choose a MathML element above or adjust its value. Click the surrounding canvas to wrap the whole expression in a new element. Drag any element onto another to move it there; Ctrl+Z / Ctrl+Shift+Z undo and redo.
Eq Editor
Build an expression by selecting a node and replacing it with a MathML element, then adjust symbols to the allowed variable names.
Arithmetic
Functions
Trigonometry
Hyperbolic
Comparison
Logic
Tip: click any element to select it, then choose a MathML element above or adjust its value. Click the surrounding canvas to wrap the whole expression in a new element. Drag any element onto another to move it there; Ctrl+Z / Ctrl+Shift+Z undo and redo.
Eq Editor
Build an expression by selecting a node and replacing it with a MathML element, then adjust symbols to the allowed variable names.
Arithmetic
Functions
Trigonometry
Hyperbolic
Comparison
Logic
Tip: click any element to select it, then choose a MathML element above or adjust its value. Click the surrounding canvas to wrap the whole expression in a new element. Drag any element onto another to move it there; Ctrl+Z / Ctrl+Shift+Z undo and redo.
Eq Editor
Build an expression by selecting a node and replacing it with a MathML element, then adjust symbols to the allowed variable names.
Arithmetic
Functions
Trigonometry
Hyperbolic
Comparison
Logic
Tip: click any element to select it, then choose a MathML element above or adjust its value. Click the surrounding canvas to wrap the whole expression in a new element. Drag any element onto another to move it there; Ctrl+Z / Ctrl+Shift+Z undo and redo.
Generated LaTeX Code
\begin{align*}
\frac{d B0}{dt} &= - 2 \cdot B0 \cdot PPFD \\
& + 2 \cdot B1 \cdot (kH0 + Quencher act. \cdot kH\_Qslope) \\
& + 2 \cdot B1 \cdot kF \\
& + 2 \cdot B2 \cdot PQ \cdot kPQH2 - \frac{B0 \cdot PQH2 \cdot kPQH2}{Keq\_PQH2} \\
\frac{d B1}{dt} &= 2 \cdot B0 \cdot PPFD \\
& - 2 \cdot B1 \cdot (kH0 + Quencher act. \cdot kH\_Qslope) \\
& - 2 \cdot B1 \cdot kF - 2 \cdot 0.5 \cdot B1 \cdot kP \\
\frac{d B2}{dt} &= 2 \cdot 0.5 \cdot B1 \cdot kP \\
& - 2 \cdot B2 \cdot PQ \cdot kPQH2 - \frac{B0 \cdot PQH2 \cdot kPQH2}{Keq\_PQH2} \\
& - 2 \cdot B2 \cdot PPFD + 2 \cdot B3 \cdot kF \\
& + 2 \cdot B3 \cdot (kH0 + Quencher act. \cdot kH\_Qslope) \\
\frac{d PQH2}{dt} &= B2 \cdot PQ \cdot kPQH2 - \frac{B0 \cdot PQH2 \cdot kPQH2}{Keq\_PQH2} \\
& - PQH2 \cdot (O2ex \cdot kPTOX + \frac{Keqcytb6f \cdot PPFD \cdot k\_cytb6f}{1 + Keqcytb6f}) - \frac{PPFD \cdot k\_cytb6f \cdot (PQtot - PQH2)}{1 + Keqcytb6f} \\
\frac{d ATP}{dt} &= ATP\_pmf\_act \cdot ATPactivity \cdot kATPsynthase \cdot (ADP - \frac{ATP}{KeqATPsyn}) \\
& - ATP \cdot kATPconsumption \\
\frac{d H\_lumen}{dt} &= \frac{2}{bH} \cdot 0.5 \cdot B1 \cdot kP \\
& + \frac{4}{bH} \cdot PQH2 \cdot (O2ex \cdot kPTOX + \frac{Keqcytb6f \cdot PPFD \cdot k\_cytb6f}{1 + Keqcytb6f}) - \frac{PPFD \cdot k\_cytb6f \cdot (PQtot - PQH2)}{1 + Keqcytb6f} \\
& - \frac{HPR}{bH} \cdot ATP\_pmf\_act \cdot ATPactivity \cdot kATPsynthase \cdot (ADP - \frac{ATP}{KeqATPsyn}) \\
& - \frac{1}{bH} \cdot kleak \cdot (H\_lumen\_conc - H\_stroma\_conc) \\
& - \frac{1}{bH} \cdot \max(0, \frac{1000 \cdot k\_KEA3 \cdot reg\_KEA3 \cdot stroma\_volume\_per\_area\_membrane \cdot (H\_lumen\_conc \cdot K\_stroma\_conc - H\_stroma\_conc \cdot K\_lumen\_conc)}{molChl\_per\_area\_membrane}) \\
& + \frac{1}{bH} \cdot \max(0, \frac{1000 \cdot k\_KEA3 \cdot lumen\_volume\_per\_area\_membrane \cdot reg\_KEA3 \cdot (H\_stroma\_conc \cdot K\_lumen\_conc - H\_lumen\_conc \cdot K\_stroma\_conc)}{molChl\_per\_area\_membrane}) \\
\frac{d delta\_psi}{dt} &= \frac{2 \cdot volts\_per\_charge}{bH} \cdot 0.5 \cdot B1 \cdot kP \\
& + \frac{4 \cdot volts\_per\_charge}{bH} \cdot PQH2 \cdot (O2ex \cdot kPTOX + \frac{Keqcytb6f \cdot PPFD \cdot k\_cytb6f}{1 + Keqcytb6f}) - \frac{PPFD \cdot k\_cytb6f \cdot (PQtot - PQH2)}{1 + Keqcytb6f} \\
& - \frac{HPR \cdot volts\_per\_charge}{bH} \cdot ATP\_pmf\_act \cdot ATPactivity \cdot kATPsynthase \cdot (ADP - \frac{ATP}{KeqATPsyn}) \\
& - \frac{volts\_per\_charge}{bH} \cdot kleak \cdot (H\_lumen\_conc - H\_stroma\_conc) \\
\frac{d Vx}{dt} &= - \frac{Vx \cdot kDeepoxV \cdot {H\_lumen}^{nHX}}{{H\_lumen}^{nHX} + {\frac{1000 \cdot lumen\_volume\_per\_area\_membrane \cdot {10}^{- KphSatZ}}{molChl\_per\_area\_membrane}}^{nHX}} \\
& + Zx \cdot kEpoxZ \\
\frac{d PsbS}{dt} &= - \frac{PsbS \cdot kProt \cdot {H\_lumen}^{nHL}}{{H\_lumen}^{nHL} + {\frac{1000 \cdot lumen\_volume\_per\_area\_membrane \cdot {10}^{- KphSatLHC}}{molChl\_per\_area\_membrane}}^{nHL}} \\
& + PsbSP \cdot PsbS\_deprot\_act \cdot kDeprot \\
\frac{d ATPactivity}{dt} &= \begin{cases}kActATPase \cdot (1 - ATPactivity) & PPFD > 0 \\ - ATPactivity \cdot kDeactATPase & \text{else}\end{cases} \\
\frac{d K\_lumen}{dt} &= \max(0, \frac{1000 \cdot k\_KEA3 \cdot reg\_KEA3 \cdot stroma\_volume\_per\_area\_membrane \cdot (H\_lumen\_conc \cdot K\_stroma\_conc - H\_stroma\_conc \cdot K\_lumen\_conc)}{molChl\_per\_area\_membrane}) \\
& - \max(0, \frac{1000 \cdot k\_KEA3 \cdot lumen\_volume\_per\_area\_membrane \cdot reg\_KEA3 \cdot (H\_stroma\_conc \cdot K\_lumen\_conc - H\_lumen\_conc \cdot K\_stroma\_conc)}{molChl\_per\_area\_membrane}) \\
\frac{d K\_stroma}{dt} &= - \max(0, \frac{1000 \cdot k\_KEA3 \cdot reg\_KEA3 \cdot stroma\_volume\_per\_area\_membrane \cdot (H\_lumen\_conc \cdot K\_stroma\_conc - H\_stroma\_conc \cdot K\_lumen\_conc)}{molChl\_per\_area\_membrane}) \\
& + \max(0, \frac{1000 \cdot k\_KEA3 \cdot lumen\_volume\_per\_area\_membrane \cdot reg\_KEA3 \cdot (H\_stroma\_conc \cdot K\_lumen\_conc - H\_lumen\_conc \cdot K\_stroma\_conc)}{molChl\_per\_area\_membrane})
\end{align*}