Compound spur-gear train on a base plate, every gear on its own revolute joint.
| Part | Gates | Files |
|---|---|---|
| base compound-train-base | PASS 11/11 | STEP · STL |
| pinion compound-train-pinion | PASS 11/11 | STEP · STL |
| idler compound-train-idler | PASS 11/11 | STEP · STL |
| output compound-train-output | PASS 11/11 | STEP · STL |
| File | Kind | Size |
|---|---|---|
| compound-train.step | STEP | 14.3 MB |
| compound-train.stl | STL | 0.8 MB |
assembly.yaml (design contract)
Compound spur-gear train from sources/compound-train-spec.md (authoritative, text only): a 195 x 100 x 5 base plate carrying, on revolute joints about +z at (0, 0), (60, 0) and (120, 0), a motor-driven 20-tooth input pinion, a compound idler (40 teeth over z 0..8 and 15 teeth over z 8..16 on one solid) and a 45-tooth output gear (z 8.5..16.5); module 2, 20 deg pressure angle, zero shift, 0.10 mm circular backlash per mesh. The gears are phased at rest (pinion 0 deg, idler 4.5 deg, output 6.5 deg) so both meshes engage; the idler follows the pinion at -1/2 and the output follows the idler at -1/3 through meshed gear transmissions. A motion sweep turns the pinion through two pitches; the evaluator measures the train ratio and the output angle after one pinion revolution from the placed geometry. Kinematics only: the spec states no operating case, load or material.
| Tier | Gate | Result | Evidence |
|---|---|---|---|
| A | parts_pass Every part design passed its own 12 gates and has a handoff STEP | PASS | results/build123d/compound-train/parts.json designs.<design>.gates_ok: compound-train-base=True, compound-train-pinion=True, compound-train-idler=True, compound-train-output=True |
| A | bom_complete Every body of the bill of materials is in the export, once, with a placement | PASS | results/build123d/compound-train/verify.json solid_count = 4 (expected 4); placements.missing = []; unmatched = [] |
| A | joint_fidelity Every joint's child frame lies on its parent frame (axis, offset, rest angle) | PASS | results/build123d/compound-train/verify.json joints.joints.<joint>.checks; failing: none |
| A | clearances Static clearances and seats at rest | PASS | results/build123d/compound-train/verify.json clearances.<name>; failing: none |
| A | motion_clear Every drive moves through its range without interference; gears mesh; ratios match tooth counts | PASS | results/build123d/compound-train/kinematics.json motions.<name>.max_interference: pinionTurn=0 |
| A | fluid_domain Each fluid region is one sealed piece within its volume band and agrees with the source's fluid body | n/a | results/build123d/compound-train/domains.json fluids.<name>: |
| B | export_agreement Each exported body equals its part handoff x placement; the assembled envelope matches | PASS | results/build123d/compound-train/verify.json agreement.bodies.<body>.volume_rel/hausdorff_mm; envelope.max_error = 0.0 (tol 0.1) |
| B | performance Every predicted observable meets the requirement the sources state over its numerical band (value +- 2 u_numerical) | PASS | results/build123d/compound-train/simulate.json observables.<id>.requirement: trainRatio=0.1667, outputAt360=60 |
| B | conservation Energy, mass and force balances of every analysis close within their tolerance | n/a | results/build123d/compound-train/simulate.json simulations.<id>.conservation: |
| B | refinement Every prediction of a mesh ladder is resolved: all its levels finished and the grid-convergence index is within tolerance | n/a | results/build123d/compound-train/simulate.json simulations.<id>.refinement.observables: |
| C | source_hygiene The assembly source imports only its declared inputs, formats and lints clean | PASS | results/build123d/compound-train/verify.json hygiene: cad_refs=[] truth_refs=[]; ruff format True, ruff check True |
| C | boundaries_complete Every face of a bounded body carries exactly one named boundary | n/a | results/build123d/compound-train/domains.json boundaries.<body>.unassigned/conflicts: none |
| C | provenance Stage JSONs carry provenance stamps; part handoffs are hash-bound; inputs carry provenance | PASS | results/build123d/compound-train/<stage>.json provenance present for ['verify', 'kinematics', 'domains', 'simulate']; parts.json designs.<d>.step_sha256 present: True |
| C | evidence_separation No worker-visible artefact reads truth; the assembly source only places declared inputs | PASS | results/build123d/compound-train/verify.json hygiene.truth_refs = [] |
| Body | Kind | Design | Material |
|---|---|---|---|
| base | modelled | compound-train-base | |
| pinion | modelled | compound-train-pinion | |
| idler | modelled | compound-train-idler | |
| output | modelled | compound-train-output |