Page actions
instrument implementation / implementation-contract
Bolt Group / Eccentric Fastener Pattern Solver implementation
A source-bound implementation contract for Bolt Group / Eccentric Fastener Pattern Solver; deployment and executable qualification remain separate.
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
- t6-099
- Effect
- Computation or source lookup only
Input and validation requirements
The solver has an undefined-result failure for coincident bolt coordinates because the polar sum J becomes zero. It also has a convention-sensitive result: reversing the eccentricity sign or interpreting units differently reverses or rescales the torsional distribution and can change the critical bolt.
Required corrections
[
{
"vector": "1,2,3",
"field": "per_bolt_resultants/magnitudes (and J in v3)",
"wrong": "near-side bolts 1000 N / far-side 2236 N (v1); [0,2000] (v2); J=4, 901.39 (v3)",
"correct": "torsional force = (M/J)*(-y, x): near-side bolts carry 2236 N, far 1000 N (v1); [2000,0] (v2); J=Σ(x²+y²)=8, mags [559.0,559.0,250,250]-family recompute (v3)",
"cause": "systematic: torsional shear direction transposed (F_t=(My/J,-Mx/J) instead of (M/J)(-y,x)) — physically backwards (bolts nearer the eccentric load must carry MORE); v3 additionally computes J as Σx² only"
}
]Inspectable interface fixture
The sample below is evidence for interface and validation tests, not a production implementation.
{
"inputs": {
"units": "N, mm",
"bolt_coordinates_mm": [
[
50,
50
],
[
50,
-50
],
[
-50,
50
],
[
-50,
-50
]
],
"applied_force_N": [
0,
-4000
],
"eccentricity_mm": [
100,
0
]
},
"expected_outputs": {
"J_mm2": 20000,
"moment_Nmm": -400000,
"direct_shear_per_bolt_N": [
0,
-1000
],
"per_bolt_resultants_N": [
[
-1000,
0
],
[
1000,
0
],
[
-1000,
-2000
],
[
1000,
-2000
]
],
"per_bolt_magnitudes_N": [
1000,
1000,
2236.067977,
2236.067977
],
"critical_bolts": [
3,
4
],
"critical_force_N": 2236.067977
},
"working": "n=4, so F_d=P/n=(0,-4000)/4=(0,-1000) N. J=4(50²+50²)=4(5000)=20000 mm². M=e_xP_y=100(-4000)=-400000 N·mm. For each bolt F_t=(M y/J,-M x/J)=(-20y,20x) N. Bolt 1 (50,50): F_t=(-1000,1000), total=(-1000,1000)+(0,-1000)=(-1000,0), magnitude=√(1000²)=1000 N. Bolt 2 (50,-50): F_t=(1000,1000), total=(1000,0), magnitude=1000 N. Bolt 3 (-50,50): F_t=(-1000,-1000), total=(-1000,-2000), magnitude=√(1000²+2000²)=√5000000=2236.067977 N. Bolt 4 (-50,-50): F_t=(1000,-1000), total=(1000,-2000), magnitude=2236.067977 N."
}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-tranche6/tranche6-results.jsontranche errata record