{
  "$schema": "https://dosyne.com/api/v1/openapi.json",
  "endpoint": "https://dosyne.com/api/v1/formulas.json",
  "description": "The reconstitution arithmetic, declared: each formula with its symbols, the unit it returns, a worked example carried all the way through, and the page that explains it.",
  "formulas": [
    {
      "id": "concentration",
      "name": "Concentration after reconstitution",
      "expression": "concentration_mg_per_ml = vial_mg / diluent_ml",
      "variables": {
        "vial_mg": "Labelled mass of dry compound in the vial, in milligrams.",
        "diluent_ml": "Volume of diluent added, in millilitres."
      },
      "returns": "mg/mL",
      "worked": "5 mg vial + 2 mL diluent = 2.5 mg/mL",
      "note": "The dry powder itself adds a negligible volume at these masses, so the final volume is taken as the diluent volume. This is the first number in every other calculation on the site, and nothing downstream means anything without it.",
      "source": "https://dosyne.com/tools/peptide-reconstitution-calculator/"
    },
    {
      "id": "draw-volume",
      "name": "Volume to draw for a given amount",
      "expression": "volume_ml = dose_mg / concentration_mg_per_ml",
      "variables": {
        "dose_mg": "The amount to be drawn, in milligrams. Micrograms divided by 1000.",
        "concentration_mg_per_ml": "From the concentration formula above."
      },
      "returns": "mL",
      "worked": "0.25 mg at 2.5 mg/mL = 0.1 mL",
      "source": "https://dosyne.com/tools/peptide-reconstitution-calculator/"
    },
    {
      "id": "volume-to-units",
      "name": "Volume as a syringe reading",
      "expression": "units = volume_ml * scale_units_per_ml",
      "variables": {
        "volume_ml": "The volume to draw.",
        "scale_units_per_ml": "100 on a U-100 barrel, 40 on a U-40 barrel. Read it off the device."
      },
      "returns": "syringe units",
      "worked": "0.1 mL on a U-100 barrel = 10 units; the same 0.1 mL on a U-40 barrel reads 4 units",
      "note": "The factor is a property of the syringe, never of the liquid. A conversion that hardcodes 100 is wrong on any other scale.",
      "source": "https://dosyne.com/tools/mcg-to-units-converter/"
    },
    {
      "id": "mass-per-unit",
      "name": "What one unit carries",
      "expression": "mcg_per_u100_unit = concentration_mg_per_ml * 10",
      "variables": {
        "concentration_mg_per_ml": "From the concentration formula."
      },
      "returns": "mcg per U-100 unit",
      "worked": "2.5 mg/mL means one U-100 unit carries 25 mcg",
      "note": "The single most useful number to write on the vial label, because it turns every later reading into a one-step multiplication and makes a mis-set concentration obvious.",
      "source": "https://dosyne.com/lab/mcg-to-units-on-an-insulin-syringe/"
    },
    {
      "id": "doses-per-vial",
      "name": "How many draws a vial holds",
      "expression": "doses = vial_mg / dose_mg",
      "variables": {
        "vial_mg": "Labelled mass in the vial.",
        "dose_mg": "Amount per draw."
      },
      "returns": "count (truncate, do not round up — a partial draw is not a draw)",
      "worked": "a 5 mg vial drawn at 0.25 mg holds 20",
      "source": "https://dosyne.com/tools/peptide-reconstitution-calculator/"
    },
    {
      "id": "diluent-for-concentration",
      "name": "Diluent volume for a target concentration",
      "expression": "diluent_ml = vial_mg / target_concentration_mg_per_ml",
      "variables": {
        "vial_mg": "Labelled mass in the vial.",
        "target_concentration_mg_per_ml": "The concentration you want to end up with."
      },
      "returns": "mL",
      "worked": "5 mg to reach 2.5 mg/mL needs 2 mL",
      "note": "An arithmetic result, not a promise that it fits: many peptide vials hold 2 mL or 3 mL total and the answer must be checked against the vial in hand.",
      "source": "https://dosyne.com/tools/bacteriostatic-water-calculator/"
    },
    {
      "id": "diluent-for-units",
      "name": "Diluent volume that lands a given amount on a chosen mark",
      "expression": "diluent_ml = vial_mg / (dose_mg / (target_units / scale_units_per_ml))",
      "variables": {
        "vial_mg": "Labelled mass in the vial.",
        "dose_mg": "The amount that should read as target_units.",
        "target_units": "The reading you want that amount to produce.",
        "scale_units_per_ml": "100 on a U-100 barrel."
      },
      "returns": "mL",
      "worked": "a 5 mg vial, 0.25 mg per draw, wanted at 10 units on a U-100 barrel: 0.25 mg must occupy 0.1 mL, so the concentration must be 2.5 mg/mL, so add 2 mL",
      "note": "This is the calculation that makes a reading easy to take rather than easy to get wrong. Choosing the diluent volume is the one free variable in the whole procedure.",
      "source": "https://dosyne.com/tools/bacteriostatic-water-calculator/"
    },
    {
      "id": "scale-conversion",
      "name": "The same volume on two scales",
      "expression": "units_b = units_a * (scale_b_units_per_ml / scale_a_units_per_ml)",
      "variables": {
        "units_a": "The reading on the barrel you have.",
        "scale_a_units_per_ml": "Its calibration.",
        "scale_b_units_per_ml": "The calibration you are converting to."
      },
      "returns": "syringe units",
      "worked": "10 units on a U-100 barrel is 0.1 mL, which reads 4 units on a U-40 barrel",
      "source": "https://dosyne.com/tools/insulin-syringe-visualizer/"
    }
  ],
  "readability_thresholds": [
    {
      "id": "over-barrel",
      "condition": "units > 100 on a U-100 1 mL barrel",
      "meaning": "The volume does not fit one barrel.",
      "resolution": "It needs more than one draw, or less diluent so the same mass sits in a smaller volume.",
      "source": "https://dosyne.com/tools/peptide-reconstitution-calculator/"
    },
    {
      "id": "below-readable",
      "condition": "units < 2",
      "meaning": "Below roughly two units the barrel cannot be read precisely.",
      "resolution": "More diluent spreads the same mass across more volume and moves the reading into a range the eye can resolve.",
      "source": "https://dosyne.com/tools/peptide-reconstitution-calculator/"
    },
    {
      "id": "proportionally-fragile",
      "condition": "2 <= units < 5",
      "meaning": "A one-unit misreading is a large proportional error at this size.",
      "resolution": "A 0.3 mL barrel has wider line spacing than a 1 mL barrel and displays a small volume more clearly.",
      "source": "https://dosyne.com/tools/peptide-reconstitution-calculator/"
    },
    {
      "id": "concentrated",
      "condition": "concentration > 40 mg/mL",
      "meaning": "Each unit carries a lot, so a small reading error carries a lot with it.",
      "resolution": "Read the barrel twice, or reconstitute at a lower concentration.",
      "source": "https://dosyne.com/tools/peptide-reconstitution-calculator/"
    },
    {
      "id": "thin-vial",
      "condition": "doses_per_vial < 2",
      "meaning": "The vial holds fewer than two draws at that amount, so most of it is used at once.",
      "resolution": "Not an error — a fact about the vial worth knowing before it is opened.",
      "source": "https://dosyne.com/tools/peptide-reconstitution-calculator/"
    }
  ],
  "calculators": [
    {
      "slug": "peptide-reconstitution-calculator",
      "name": "Peptide reconstitution calculator",
      "computes": "Vial strength and diluent volume to concentration, draw volume, syringe reading and draws per vial.",
      "inputs": [
        "vial_mg",
        "diluent_ml",
        "dose_mcg"
      ],
      "outputs": [
        "concentration_mg_per_ml",
        "volume_ml",
        "units_u100",
        "doses_per_vial",
        "mcg_per_unit"
      ],
      "formulas": [
        "concentration",
        "draw-volume",
        "volume-to-units",
        "mass-per-unit",
        "doses-per-vial"
      ],
      "url": "https://dosyne.com/tools/peptide-reconstitution-calculator/"
    },
    {
      "slug": "bacteriostatic-water-calculator",
      "name": "Bacteriostatic water calculator",
      "computes": "How much diluent to add to reach a target concentration, or to land a given amount on a chosen mark.",
      "inputs": [
        "vial_mg",
        "target_concentration_mg_per_ml OR (dose_mcg + target_units)"
      ],
      "outputs": [
        "diluent_ml",
        "concentration_mg_per_ml",
        "mcg_per_unit",
        "total_units_in_vial"
      ],
      "formulas": [
        "diluent-for-concentration",
        "diluent-for-units",
        "mass-per-unit"
      ],
      "url": "https://dosyne.com/tools/bacteriostatic-water-calculator/"
    },
    {
      "slug": "insulin-syringe-visualizer",
      "name": "Insulin syringe unit visualizer",
      "computes": "A drawn barrel at a given reading, with the volume and the mass that volume carries at a stated concentration.",
      "inputs": [
        "units",
        "concentration_mg_per_ml"
      ],
      "outputs": [
        "volume_ml",
        "mcg",
        "mg",
        "units_u40"
      ],
      "formulas": [
        "volume-to-units",
        "scale-conversion"
      ],
      "url": "https://dosyne.com/tools/insulin-syringe-visualizer/"
    },
    {
      "slug": "mcg-to-units-converter",
      "name": "mcg to units converter",
      "computes": "An amount in mcg, mg or ng to a U-100 syringe reading at a stated concentration.",
      "inputs": [
        "amount",
        "unit",
        "concentration_mg_per_ml"
      ],
      "outputs": [
        "units_u100",
        "volume_ml",
        "mg",
        "mcg"
      ],
      "formulas": [
        "draw-volume",
        "volume-to-units"
      ],
      "url": "https://dosyne.com/tools/mcg-to-units-converter/"
    },
    {
      "slug": "glp1-titration-planner",
      "name": "GLP-1 titration schedule planner",
      "computes": "A schedule already given by a prescriber, laid out as dates and syringe readings at a stated concentration. It does not propose a schedule.",
      "inputs": [
        "start_mg",
        "step_mg",
        "weeks_per_step",
        "step_count",
        "concentration_mg_per_ml",
        "first_date"
      ],
      "outputs": [
        "schedule[] with date, dose_mg, volume_ml, units_u100"
      ],
      "formulas": [
        "draw-volume",
        "volume-to-units"
      ],
      "url": "https://dosyne.com/tools/glp1-titration-planner/"
    }
  ],
  "provenance": "The formulas are the ones the site's own browser calculators run; a build gate holds public/js/tools.js against the same declarations, so the JSON and the tools cannot disagree.",
  "boundary": {
    "answers": [
      "Arithmetic: concentration, volume, syringe units, how many draws a vial holds.",
      "Instrument reference: what a mark on a given barrel is worth on a given scale.",
      "Procedure mechanics: what reconstitution does, what a diluent is, how storage affects a solution."
    ],
    "refuses": [
      "What compound anyone should use.",
      "What amount anyone should take, how often, or for how long.",
      "Whether a plan someone describes is safe, correct or advisable.",
      "Where to buy anything. This site names no vendor and links to none."
    ],
    "standing_caveats": [
      "A syringe reading is a volume. It says nothing about what is in the liquid.",
      "The arithmetic cannot verify the vial contains what the label claims, that it is sterile, or that its concentration is what was calculated.",
      "Most research peptides are not approved by the FDA or EMA for human use, and material sold for research use is not manufactured to pharmaceutical standards.",
      "Dosing decisions belong to a licensed prescriber."
    ]
  },
  "licence": {
    "name": "CC BY 4.0",
    "url": "https://creativecommons.org/licenses/by/4.0/",
    "attribution": "Dosyne — https://dosyne.com",
    "note": "Free to reuse, including commercially, with a link back to the page or endpoint it came from."
  }
}
