About Chorus

What it computes, how the ensemble works, and where its limits lie.

What it computes

Chorus estimates vancomycin exposure from a full dosing history: administered doses, drawn serum levels, and longitudinal serum creatinine. It models changing renal function over the entire course of therapy rather than assuming static clearance.

The primary target metric is AUC24, benchmarked against a default therapeutic window of 400–600 mg·h/L. Chorus also projects trough concentrations and tests prospective dose-and-interval regimens, reporting the ensemble-wide probability of achieving target exposure for each option. The equations page has the mechanics, including the AUC integration and the KDIGO-based AKI detection.

All computation runs locally in your browser via client-side code. Nothing entered is transmitted to an external server or written to disk. When the browser tab closes, the session and everything in it are gone. Privacy has the detail.

Why 46 models instead of one

Conventional Bayesian TDM software fits concentration data to a single population pharmacokinetic (PK) model selected a priori. Choosing well is not straightforward: how a published model performs outside the cohort it was derived in is rarely established, and a patient who does match a cohort description may still have atypical kinetics.

Chorus avoids choosing the “right” model in advance by averaging across them, following the framework of Uster et al. (2021).

In that evaluation of 180 patients on therapeutic drug monitoring, the individual vancomycin PK models varied widely in both bias and imprecision. Combining them removed the pooled bias and performed roughly as well as the most appropriate single model, without needing to identify which one that was.

Chorus scales this ensemble methodology to 46 published models:

  1. 1 Independent MAP estimation. Each model is fitted independently via maximum a posteriori (MAP) estimation, balancing the observed concentrations against its own population priors.
  2. 2 Goodness-of-fit scoring. Each model is scored on how closely its posterior predictions match the drawn serum levels.
  3. 3 Penalized ensemble weighting. The models are averaged according to these scores, with a penalty for any model that fits the data only by assuming atypical individual pharmacokinetic parameters.

The model library

The ensemble incorporates 46 published models (2005–2026): 17 one-compartment, 26 two-compartment, and 3 three-compartment structures. Derivation cohorts include general ward, critically ill, obese, burn, neutropenic, ECMO, and solid organ transplant populations. Complete structural equations, parameter distributions, and covariate relationships are indexed in the model library.

What it does not do

  • Not a validated clinical tool, and not a source of dosing advice. See the Terms.
  • The model library covers adults 18 and over.
  • It does not support intermittent haemodialysis, peritoneal dialysis or CRRT.
  • Vancomycin only.

The engine, and how it is checked

The numerical core is written in Rust and compiled to WebAssembly, so the whole 46-model ensemble is fitted inside the browser tab itself, in a fraction of a second. There is no compute server behind it and no API call: the calculation runs entirely on your own machine, and nothing about the case is sent anywhere. It needs any current desktop browser — Chrome, Edge, Firefox or Safari — and nothing else.

Two things are checked, separately, because they can fail separately:

  • The arithmetic — the concentration curves and the Bayesian fitting are compared against rxode2 and mapbayr, two established pharmacometrics libraries. See the numbers.
  • The models — each is checked against the worked examples in its own publication, which is a different question from whether the solver is right. How a model is extracted.

The models

46 active

Who built it

Chorus is built and maintained by Nate Van Veldhuizen, PharmD.

Corrections to a model, or to anything on this site, are genuinely welcome — hello@vanc.app.

Simulation settings

Models

selected

Dose candidates (mg)

Interval candidates (h)

Demographics

Physical characteristics.

kg
cm
yr