Guth
NewsDocs
Page actions
View as Markdown ↗
Explore MCP tools ↗

instrument implementation / implementation-contract

Gear Ratio & Train Calculator implementation

A source-bound implementation contract for Gear Ratio & Train Calculator; 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
t4-260
Effect
Computation or source lookup only

Input and validation requirements

  • Division by zero occurs if input speed is used as the denominator while calculating a ratio and input speed is zero.
  • Division by zero occurs if output tooth count, output pitch diameter, overall ratio, or efficiency-adjusted denominator is zero.
  • Zero or negative tooth counts, diameters, ratios, and efficiencies outside 0 < efficiency <= 1 must be rejected.
  • A gear mesh requires compatible module or diametral pitch; arbitrary tooth counts or diameters do not guarantee physically meshing gears.
  • Compound gears must be constrained so the paired gears on each intermediate shaft share the same angular speed.
  • Pitch-diameter units must be normalized before division; mixing inches and millimetres without conversion produces an incorrect ratio.
  • Ideal torque conservation is not physically honest for real gears with friction, windage, bearing losses, and mesh losses.
  • External gear direction reverses at every mesh; reporting only a positive speed omits output rotation direction.

Required corrections

[
  {
    "stress_correction": {
      "vector_inputs": {
        "input_pitch_diameter": "2 in",
        "output_pitch_diameter": "5 in",
        "input_speed": "1800 rpm",
        "input_torque": "18.439 lbf·ft"
      },
      "wrong_outputs": {
        "overall_speed_ratio": 0.4,
        "output_speed": "720 rpm",
        "output_speed_SI": "75.3982 rad/s",
        "output_torque": "7.3756 lbf·ft",
        "output_torque_SI": "10.0000 N·m"
      },
      "corrected_outputs": {
        "overall_speed_ratio": 0.4,
        "output_speed": "720 rpm",
        "output_speed_SI": "75.3982 rad/s",
        "output_torque": 46.0975,
        "output_torque_SI": 62.4998
      },
      "method": "power conservation: P_in=P_out => T_out = T_in / speed_ratio = 18.439/0.4 = 46.0975 lbf·ft = 62.4998 N·m"
    }
  }
]

Inspectable interface fixture

The sample below is evidence for interface and validation tests, not a production implementation.

{
  "inputs": {
    "train_type": "simple",
    "input_gear_teeth": 20,
    "output_gear_teeth": 40,
    "input_speed_rpm": 1800,
    "input_torque_Nm": 10,
    "efficiency": 1
  },
  "expected_outputs": {
    "overall_ratio": 0.5,
    "output_speed_rpm": 900,
    "output_torque_Nm": 20
  },
  "working": "GR = Z_in/Z_out = 20/40 = 0.5. Output speed = GR × input speed = 0.5 × 1800 = 900 rpm. Ideal output torque = input torque/GR = 10/0.5 = 20 N·m."
}

Other records

Sources and evidence

These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.

  • VERIFIED_LEDGER.json
  • evidence-tranche4/tranche4-results.json
  • STRESS_TEST_CORRECTIONS_APPLIED.json