Seven lengths and a hundred corners
Assumes Where a stack-up stops working.
Five essays of this field have been about a four-bar, and a reader would be entitled to wonder whether the four is doing any work.
It is not. What the four decides is the cost, and the cost is the whole argument for one of the two routes.
The six-bar, done both ways
A Watt six-bar is six links and seven joints: a four-bar with a second dyad hung off its rocker. Its dimensions are the four the four-bar has, plus where the second dyad attaches to the rocker, plus the two lengths of that dyad — seven numbers, each of which will be cut to a tolerance.
Run the same two computations on it.
The corner enumeration builds 2⁷ = 128 mechanisms at every crank position and solves each. Every one of them assembles at the position drawn, so what comes back is an accuracy rather than a jam. The band is 2.00° at a tolerance of ±0.01 on all seven, against 0.68° for the four-bar at the same tolerance — three times as wide, from three more toleranced lengths and a longer chain from input to output.
The derivative route perturbs each length by 10⁻⁶, solves twice, and sums seven contributions. The two answers differ by 0.01%.
That agreement is the point of the essay and it is deliberately unspectacular. Nothing new had to be built: the same solver, the same finite differences, the same summation. The method did not know it was working on a four-bar and does not notice that it is now working on a six.
Where the two costs separate
At four lengths the corner route is 16 mechanisms and the derivative route is 4 solves — a factor of four, which is nothing. At seven it is 128 against 7, and the whole six-bar calculation costs 142 solves for one crank position, which is still under a second.
Both of those are affordable, and that is exactly why the comparison has to be drawn as a curve rather than argued from two points. One of the two lines is a straight line on log paper and the other is not.
| lengths | corners | derivative |
|---|---|---|
| 4 | 16 | 4 |
| 7 | 128 | 7 |
| 12 | 4,096 | 12 |
| 20 | 1,048,576 | 20 |
Twenty parameters is not a hypothetical. It is a spatial mechanism with a handful of links: each joint axis has a direction and a position, each link a length and a twist, and the numbers accumulate faster in space than in the plane because a body there has six freedoms rather than three.
So the crossing is somewhere around six or seven parameters — which is to say, the four-bar is the last mechanism for which the honest slow method is the obvious one, and the site has been using it for five essays because it was cheap rather than because it was right.
Why keep the slow route at all
Because it assumes nothing.
The derivative route needs the constraint Jacobian to be invertible, and at a change point it is not. It needs the response to be locally linear, and near a fold it is not. It gives an answer in both of those situations and the answer is wrong, and there is nothing in the arithmetic to say so.
The corner enumeration has neither requirement. It builds mechanisms and solves them. Where the derivative route is describing something that does not exist, the corner route quietly returns a different number, and the disagreement between them is the only signal either one gives.
That is why this site computes both on the four-bar even though the second is redundant there, and why the six-bar computation above runs all 128 corners even though seven derivatives would have done. The expensive route is not a legacy method being kept for comfort; it is the check.
What changes past six or seven parameters is only that the check has to become a sample. Not all million corners — a few dozen, chosen at random from the box, compared against the linear prediction. That is enough to catch a Jacobian that has gone singular, and it is what a tolerance analysis on anything large actually does.
Two loops, and where the error is amplified
The three-times figure deserves decomposing, because “longer chain” is a description rather than a mechanism.
A Watt six-bar’s first loop is an ordinary four-bar, and its rocker carries the second dyad at a point part-way along it. That attachment point is the interface between the two loops, and its position error is the four-bar’s output error — scaled by how far along the rocker it sits.
The second loop then treats that moving point as its input, and multiplies its error by its own velocity ratio, exactly as it multiplies the motion. So the first loop’s contribution to the output arrives multiplied, and the second loop’s own three lengths contribute directly.
Two consequences fall out that a designer can act on.
The attachment point is a design variable with unusual leverage. Moving it along the rocker changes both the motion the second loop sees and the error it inherits, and the two do not scale together — so there is generally a position that gives the wanted motion with less error than a neighbouring one that gives nearly the same motion.
And the second loop should be the accurate one. Its lengths contribute without amplification, but it amplifies everything upstream, so tightening it improves the whole chain while tightening the first loop improves only part of it. That is the same conclusion as a gear train’s last mesh dominating, reached by the same argument about what sits between an error and the output.
The band is wider for a reason, and it is not “more parts”
Three per cent more lengths does not give three times the band. Something else is going on, and it is worth separating because it is a design property rather than an arithmetic one.
A six-bar’s output is further from its input. The crank moves the coupler, the coupler moves the rocker, the rocker carries the second dyad, and the second dyad moves the output — so an error early in the chain is amplified by everything after it, in the same way a velocity is. The four lengths the six-bar shares with the four-bar therefore contribute more to its output than they do to the four-bar’s, before the three new ones contribute anything at all.
That is the tolerance version of the reason a six-bar can do things a four-bar cannot: the extra dyad buys a second stage of motion transformation, and a second stage transforms errors as willingly as it transforms motion.
The count of parameters is a modelling choice
One more thing hides in “seven lengths”, and it decides the cost as surely as the mechanism does.
A Watt six-bar has seven lengths in this site’s parameterisation. It does not have seven degrees of manufacturing freedom. The attachment point of the second dyad on the rocker is one number here — a fraction along the link — and on a real part it is a hole with two coordinates, only one of which is along the rocker. The ternary rocker is a triangle, and a triangle has three sides.
So the parameter count is a property of how the mechanism was written down, not of the object. Written as three side lengths per ternary link and two coordinates per attachment, the same six-bar has more than seven parameters and the corner enumeration is correspondingly larger.
That matters twice. It matters for cost, because 2ⁿ is unforgiving about n. And it matters for correctness, because a parameterisation that under-counts the freedoms is silently assuming some errors away — exactly the assumption the feature-based analysis exists to expose.
The practical rule is that the parameters should be the things a drawing tolerances. Where they are, the count is right and the answer is about the part. Where they are convenient abstractions, the count is smaller and the answer is about the model.
Which mechanisms this stops working on
Not a limit of the arithmetic — a limit of the assumption underneath all of it.
The corner enumeration needs the output to be monotone in each parameter over the box, so the extreme is at a corner. On a four-bar away from a change point it is; on a six-bar it usually is; on a mechanism with two loops that can each change branch independently, it is not, and the failure is worse than the four-bar’s because there are more branches to land on.
A Watt six-bar has two four-bar loops. Each can pass through its own change point, and the combinations multiply. So the check that matters on a six-bar is not just the linear-versus-corner comparison but a count of how many of the 128 corner mechanisms came out on the same branch as the nominal one — and a corner that changed branch should be excluded and reported rather than averaged into a band.
The generator here asserts that all 128 assemble. It does not yet assert that all 128 assembled the same way, and that is a real gap rather than a rhetorical one.
What a designer does with seven contributions
Exactly what they do with four, and the arithmetic does not change: rank them, and spend the budget where the ranking says.
What does change is that the ranking stops being guessable. With four lengths on a four-bar it was already surprising that the crank came third and the ground second; with seven on a two-loop chain there is no intuition left to appeal to at all. The derivative route hands over seven numbers for seven linear solves, and that is the only way anyone gets them.
The statistical combination also gets better as the count grows: its ceiling is √k, so seven contributions can save up to 2.65 against worst case where four could only save 2. And the same caveat gets worse, because seven lengths on a two-loop mechanism are more likely to share a fixture than four on one.
A sample is not a worse enumeration
The suggestion above — check a few dozen random corners rather than all of them — deserves more than a clause, because it is what a real analysis does and it is easy to do badly.
A random sample of the tolerance box is not looking for the extreme; it will almost never find a corner, and the chance of hitting all seven extremes at once is 1 in 128. What it is looking for is a disagreement with the linear prediction.
For each sampled point the linear model predicts an output, and the solve returns one. Away from a singularity they match to the accuracy of the expansion. Near one they do not, and they do not by a large factor rather than a small one — five and a half orders of magnitude at a change point. A disagreement that large is visible in a handful of samples; it does not need the extremes.
So the sample is a test of the model, and the corner enumeration is a measurement of the band. On a small mechanism one computation does both, which is why the distinction has not needed making until now. On a large one they separate, and confusing them produces the worst of both: a few dozen samples reported as a band, which is an under-estimate by construction.
What does not carry over
One thing genuinely does not, and it is worth naming rather than leaving as an implication.
sensitivityByJacobian — the implicit-differentiation route that gives all four sensitivities from one linear solve each — is written against the four-bar’s constraint set. A six-bar has an attach constraint and a third ground pivot, so its ∂f/∂ℓ has three shapes rather than two, and the routine would need extending before it works there.
The six-bar figures above therefore use finite differences for the derivative route: perturb the length, solve twice, subtract. That is slower per parameter than the implicit route and still linear in the parameter count, so the argument of this essay is unaffected — but it means the six-bar has only one independent route rather than two, and the sensitivity check that caught nothing on the four-bar because there was nothing to catch is not available on it.
Recording that is the point. The claim “the method carries over” is true of the mathematics and not yet true of this repository, and the difference is a morning’s work that has not been done.
What it cost to find out
The six-bar band in this essay took 142 solves at one crank position. Drawn across a cycle it is a few thousand, which is a second or two, and the figure above is built from a single position for that reason rather than from a sweep.
That is worth admitting because it is the argument of the essay turning up in the essay’s own production. The four-bar figures in this field sweep 72 positions without anybody noticing the cost; the six-bar’s does not, and the reason is 2⁷ rather than 2⁴.
At twelve parameters a single position would be 4,096 solves and a cycle would be a quarter of a million — still possible, and no longer something to put in a page that rebuilds on every edit. Past that the enumeration stops being a thing a figure can contain, which is the practical form of the crossing this essay is about.
The corner route has a hypothesis too
The two routes are compared above on cost and on what each assumes, and the derivative route’s assumption is named — an invertible Jacobian. The corner route’s is named in passing and deserves the same treatment, because it is the one that decides whether the enumeration is a measurement or an estimate.
A box’s extreme values sit at its vertices only when the function is monotone in each parameter across the box. Where that holds, corners are exhaustive and the band is exact. Where it does not, the extreme is somewhere in the interior, no corner reaches it, and the enumeration reports a band that is too narrow — confidently, with every corner solved correctly.
So the corner route is not merely the slow one; it is conditionally correct, and its condition is as real as the derivative route’s. The two are not a careful method and a fast approximation to it. They are two methods with two hypotheses, and a mechanism can violate either.
The condition is checkable and the check is the one the essay has already described for another purpose. Sample the interior of the tolerance box, solve at each sampled point, and compare against the band the corners produced. Any interior point falling outside the corner band is a monotonicity failure, immediately and unambiguously, and a few dozen samples will find one if the function is badly behaved anywhere.
That gives the two routes a symmetry worth having. The derivative route is checked against the corners, which is the essay’s standing comparison. The corner route is checked against an interior sample, which costs a few dozen solves against the enumeration’s hundred and twenty-eight. Neither is the arbiter of the other, and both have a cheap test aimed at their own hypothesis.
Where monotonicity actually fails is worth naming, because it is not exotic. A mechanism near a change point has an output that turns round as a parameter is swept, so a box straddling one contains an interior extreme by construction. That is the same configuration the derivative route fails at, which is an awkward coincidence rather than a convenient one: it is the case where both instruments need their assumptions checked, and the corner route’s failure is the quieter of the two.
The honest summary
The four-bar has been this field’s example because it is small enough to compute exhaustively and small enough to reason about. Both of those stop being true almost immediately.
What survives the growth is the pair of routes and the requirement that they agree. What does not survive is the assumption that the expensive one is always available — and a tolerance analysis on a real mechanism is therefore a derivative calculation with a sampled check rather than an enumeration, which is a different practice from the one the four-bar essays describe and rests on exactly the same measurement.
What this makes readable
Essays that name this one as a prerequisite.
- Tolerancing the holes As built
- Where the shortest loops are As built
About the same objects
Not linked from either essay — found by the objects both name.
- Which pin to buy allocation · derivative · jacobian · sensitivity · tolerance
- A clearance is a link constraint · jacobian · tolerance
- Counting and measuring mobility constraint · jacobian · tolerance
- Locked on purpose constraint · derivative · stroke
- Sarrus, and the straight line that is exact constraint · stroke · watt's linkage
- Six legs and a square root constraint · jacobian · stroke
What links here
The 8 of 9 essays linking to this one that name the most of the same objects.
- Where an error at the shoulder ends up One path to the tool
- A clearance inside a tolerance box As built
- Exactness a micron destroys As built
- Where the shortest loops are As built
- The error that is repeated As built
- A shape with a dent in it Links with a width
- Same links, same pins, different machines The chain before the lengths
- The chain has no lengths The chain before the lengths
The objects this essay names
Each one links to every other essay that touches it.
AllocationConstraintConstraint jacobianDerivativeDwellJacobianSensitivitySix-barStrokeToleranceWatt's linkage