This plotter uses an additive Hill-function hormesis model — a stimulatory Hill term and an independent inhibitory Hill term are evaluated separately and summed, so at low dose the stimulation term (which saturates early, at a small K₁) dominates, and at high dose the inhibition term (which saturates late, at a large K₂) takes over and drags the response down:
R(d) = R0 + Smax·d^n1/(d^n1+K1^n1) − Imax·d^n2/(d^n2+K2^n2)
R0 = baseline response (d→0)
Smax = maximum stimulatory boost
Imax = maximum inhibitory loss
K1 = dose at half-maximal stimulation
K2 = dose at half-maximal inhibition (K2 ≫ K1 for a hormetic hump)
n1,n2 = Hill exponents (fixed here at 2 and 4)
Every point plotted is a direct evaluation of R(d) for that exact dose — nothing is interpolated from a lookup table. The dose marker is fully draggable: click or touch anywhere on the plot and drag left/right to sweep the dose in real time and read its exact response off the sidebar.
- K1 / K2 — where each Hill term reaches half its maximum effect. Separating them (K1 small, K2 large) is what carves out the hormetic hump between the two.
- Smax / Imax — how tall the stimulatory bump and how deep the toxic decline are.
- Hormetic-zone peak dose — found numerically, not read off a table: the app samples R(d) densely on a log grid, computes the central-difference derivative dR/dd between consecutive samples, finds the bracket where that derivative changes from positive to negative, and bisects inside it until the derivative is ~0. That root is the exact dose of maximum stimulation, marked as a dashed line on the plot.
Real-world relevance: this two-term additive form is one of the standard ways pharmacologists and toxicologists parameterize hormetic dose-response data (alongside the multiplicative Brain–Cousens form) — it makes the "which mechanism wins at this dose" question explicit, since the stimulation and inhibition curves can be plotted and inspected separately.