Release Notes

Version 2.0 (July 2026)

Binding Curve Viewer v2.0 introduces exact IC50 calculations and three R Shiny applications for Monte Carlo simulation of binding experiments.

Exact Calculation of IC50 and Apparent IC50

Previous versions of Binding Curve Viewer approximated the IC50 and apparent IC50. Version 2.0 replaces this approximation with exact analytical calculations based on the equilibrium mass-balance equations of the competitive binding system (see Appendix 3).

The calculation is implemented in two functions:

  • inhibition_calc(p0, l0, kd, ki) — a Python function used in the Binding Curve Viewer web application.

  • inhibitionCalc(p0, l0, kd, ki) — the equivalent JavaScript function for client-side computation.

Both functions derive \([\mathrm{PL}]_{\mathrm{eq\text{-}0}}\) from the quadratic binding equation, determine the concentrations of all species at 50% inhibition from the equilibrium mass-balance equations, and return the exact IC50 (free inhibitor concentration) and the exact apparent IC50 (total inhibitor concentration) without approximation.

Three New R Shiny Simulation Applications

Version 2.0 adds three standalone R Shiny applications for Monte Carlo simulation and parameter estimation. Each app generates synthetic binding data under user-specified conditions, adds Gaussian noise to simulate experimental uncertainty, and fits the noisy data using non-linear least-squares methods. The distributions of fitted parameters are visualized as histograms, and Kolmogorov–Smirnov tests are applied to evaluate normality. For details, see Simulations in R.

  • Determination of Dissociation Constant (kd-sim/app.R): Simulates equilibrium binding experiments and estimates \(K_\mathrm{d}\) and \([\mathrm{P}]_\mathrm{total}\) using both the exact quadratic binding equation (Formula 1) and the hyperbolic approximation (Formula 2). Supports optional Gaussian noise on \([\mathrm{P}]_\mathrm{total}\) and \([\mathrm{L}]_\mathrm{total}\) to model concentration measurement errors.

  • Kinetics of Association and Dissociation (kin-sim/app.R): Simulates binding kinetics experiments across multiple ligand concentrations and estimates \(k_\mathrm{off}\) from dissociation time courses and \(k_\mathrm{on}\) from association time courses using both the exact second-order kinetic model and the pseudo-first-order approximation. The kinetic \(K_\mathrm{d} = k_\mathrm{off}/k_\mathrm{on}\) is reported for both association models.

  • Competitive Binding — Inhibition Curve (comp-sim/app.R): Simulates competitive binding experiments and estimates the apparent IC50 and \(K_\mathrm{i}\) by fitting the simulated inhibition curve with a 4-parameter logistic model and with the exact competitive binding equation (Wang equation; Anal. Biochem. 2004, 332, 261–273), respectively. Supports optional Gaussian noise on \([\mathrm{P}]_\mathrm{total}\), \([\mathrm{L}]_\mathrm{total}\), and \([\mathrm{I}]_\mathrm{total}\) to model concentration measurement errors.