Verification of calcnote's ACI 318-19 column engine
calcnote's interaction-diagram construction and operating-point capacity calculations are verified against three independent authorities. This page summarizes the results; the full verification report (PDF) carries the complete per-case derivations. The same reference cases run as regression tests on every code change, so these claims are re-checked continuously — last revalidated 2026-08-22.
Verdict
calcnote matches each published authority within the precision tolerance appropriate to that source:
| Reference | Comparison | Agreement |
|---|---|---|
| StructurePoint published interaction-diagram example (ACI 318-19, spColumn v10.00-validated) | 4 tabulated control points, canonical 16×16 / 8-#9 column | ≤ 0.03% |
| Wight, Reinforced Concrete: Mechanics and Design, 7th ed., Example 11-4 | Eccentricity at reference Pn, load cases | 0.47–1.17% |
| Independent first-principles ACI 318-19 strain compatibility (re-implemented without calcnote source) | All interaction-curve anchors | ≤ 0.02% |
Product scope
calcnote's V0 scope is short, rectangular, tied, uniaxially-loaded reinforced concrete columns per ACI 318-19, within the input envelope below. The verification exercises 8 reference test cases inside this envelope (sections 12–22 in, f′c 4,000–10,000 psi, bars #7–#11) — the full report details each case.
| Parameter | Supported range |
|---|---|
| Section | rectangular tied, 8–60 in each side |
| Concrete strength f′c | 3,000–10,000 psi (normal-weight) |
| Steel grade | Grade 60, Grade 80 |
| Longitudinal bars | 4–20 bars (multiples of 4), #6–#11, perimeter layouts |
| Bending | uniaxial (strong or weak axis) |
| Slenderness | short columns (klu/r gate per ACI §6.2.5) |
Out of scope (not covered by this verification): biaxial bending, slender-column magnification, spiral or circular sections, composite sections, torsion, and seismic special-frame detailing, among others. See the methodology for the full scope statement and design-choice rationale.
Continuous revalidation
The reference cases above are encoded as automated regression tests that run against the engine on every code change. A drift beyond the stated tolerances fails the build before it can deploy — the numbers on this page cannot silently rot as the engine evolves.