Page actions
instrument implementation / implementation-contract
Reinforced Concrete Beam — Singly Reinforced Flexural Capacity implementation
A source-bound implementation contract for Reinforced Concrete Beam — Singly Reinforced Flexural Capacity; deployment and executable qualification remain separate.
Status: VERIFIED_WITH_ERRATALifecycle: implementation-contract
Binding contract
This record describes what an executable surface must bind and validate. It does not claim that a public calculator, package, or production route is deployed.
- Record owner
- Guth Instruments
- Lifecycle
- verified-with-binding-errata
- Evidence ID
- t5-122
- Effect
- Computation or source lookup only
Input and validation requirements
- Division by zero occurs if b is zero; d is also required to be positive for a meaningful section and steel ratio.
- Negative or inconsistent units can produce meaningless capacities; automatic unit validation is required.
- If a is greater than or equal to d, the simplified expression can produce zero or negative nominal moment and must not be presented as a valid tension-controlled design capacity.
- Applying φ=0.9 without checking tensile strain can overstate design capacity for over-reinforced sections.
- ρmin and ρmax cannot be checked because their formulas, ACI edition, and any required code parameters are absent.
- The zero-steel case computes arithmetically but is not a reinforced-concrete flexural design and would generally fail minimum-reinforcement requirements once those requirements are defined.
Required corrections
[
{
"stress_correction": {
"vector_inputs": {
"As": 300,
"fy": 500,
"fc": 40,
"b": 250,
"d": 450
},
"wrong_outputs": {
"a_mm": 14.823529,
"Mn_kN_m": 66.388235,
"phiMn_kN_m": 59.749412
},
"corrected_outputs": {
"a_mm": 17.647059,
"Mn_kN_m": 66.176471,
"phiMn_kN_m": 59.558824
},
"method": "a = As*fy/(0.85*fc*b) = 150000/8500 = 17.647059 mm, not 14.823529 (a ~1000/8500 arithmetic slip). Mn and phiMn recomputed downstream from the corrected a. rho/rho_min/rho_max/check flags do not depend on a and were unaffected."
}
}
]Inspectable interface fixture
The sample below is evidence for interface and validation tests, not a production implementation.
{
"inputs": {
"As": 300,
"fy": 420,
"fc_prime": 28,
"b": 300,
"d": 500,
"units": "As mm²; fy and fc_prime MPa; b and d mm"
},
"expected_outputs": {
"a_mm": 17.6470588,
"Mn_kN_m": 61.8882353,
"phiMn_kN_m": 55.6994118,
"rho": 0.002,
"rho_min_check": "UNDETERMINED: rho_min formula/value not supplied",
"rho_max_check": "UNDETERMINED: rho_max formula/value not supplied"
},
"working": "Asfy = 300 × 420 = 126000 N.\\n0.85fc'b = 0.85 × 28 × 300 = 7140 N/mm.\\na = 126000 ÷ 7140 = 17.6470588 mm.\\nMn = 126000 × (500 − 17.6470588 ÷ 2) = 126000 × 491.1764706 = 61888235.3 N·mm = 61.8882353 kN·m.\\nφMn = 0.9 × 61.8882353 = 55.6994118 kN·m.\\nρ = As/(bd) = 300/(300 × 500) = 300/150000 = 0.002."
}Other records
Sources and evidence
These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.
VERIFIED_LEDGER.jsonevidence-tranche5/tranche5-results.jsonSTRESS_TEST_CORRECTIONS_APPLIED.json