As built

Seven lengths and a hundred corners

Nothing in a tolerance analysis is about four. A Watt six-bar has seven lengths, its corner enumeration is 128 mechanisms rather than 16, and the two routes still agree to a hundredth of a per cent — but the costs have separated — 142 solves against seven. At twenty parameters, which is an ordinary spatial mechanism, it is a million against twenty.

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.

Where enumerating the corners stops being affordable. The two routes to a tolerance band, costed against the number of toleranced lengths. Enumerating every extreme combination is 2ⁿ mechanisms at every crank position; differentiating the constraints is n linear solves. A four-bar is 16 corners and a Watt six-bar is 128, which is still cheap — 142 solves for one position — and the curve is the point rather than either number: at twenty parameters, which is an ordinary spatial mechanism, the corner route is a million mechanisms and the derivative route is twenty. Both are drawn because the corner route is not merely slower, it is the one that assumes nothing, and its answer is what the cheap route has to be checked against.
Fig. 1 The two routes to a tolerance band, costed against the number of toleranced lengths. Enumerating every extreme combination is 2ⁿ mechanisms at every crank position; differentiating the constraints is n linear solves. Both are cheap at four. Neither stays cheap.

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.

The output is a band, not an angle. The rocker's angle through one turn of the crank, for a four-bar whose four lengths are each specified to ±0.01. The line is the nominal mechanism; the band is where the output of an actual one lies, found by building all sixteen extreme combinations of the four lengths at every crank angle and solving each. The band is not a constant width: it is 0.73° at its widest, near 30°, and 0.36° at its narrowest — a factor of 2.0. Which of those a designer is told depends entirely on where the mechanism was measured.
Fig. 2 The four-bar’s band, for scale. The six-bar’s is three times as wide at the same tolerance, and it took 142 solves at one position to say so against the 24 this one needed — which is a factor of six in cost for a factor of three in answer, and the ratio gets worse in one direction only.

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.

Watt's chain. Six links and 7 pin joints, so Grübler counts 3(6 − 1) − 2(7) = 1 and the rank of the Jacobian measures 1. Two of the six links must carry three joints; they are shaded. Here they share a joint, which makes this a Watt chain. That adjacency is the entire classification, and it is read off the graph rather than off the picture.
Fig. 3 The chain the band is of. Two four-bar loops sharing the ternary rocker, with the output taken from the second dyad — so an error in the first loop arrives at the output having been through the second, and the accumulation is the same one that makes the mechanism useful.

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.

The four lengths do not matter equally. Each length's average contribution to the output band, for a tolerance of ±0.01 on all four, averaged over the 48 crank positions the mechanism reaches. The coupler contributes 38% of the total and the rocker 11% — a factor of 3.4 between the ends of the ranking. A tolerance specified equally on all four therefore spends most of its cost buying accuracy the mechanism does not notice, which is what a sensitivity ranking is for.
Fig. 4 The four-bar’s four contributions, for scale. A six-bar’s seven are obtained by the same call on the same machinery, and the reason to look at the four first is that this is the largest mechanism whose ranking a reader can still check by argument.

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.

Two routes to the same derivative. How much the output angle moves when the coupler length moves, through one turn, computed twice. One route rebuilds the mechanism at b ± 10⁻⁶ and solves both from scratch; the other differentiates the constraint equations and solves one linear system against the analytic Jacobian. They lie on top of each other — the strip beneath plots the difference on a four-decade log scale, and its largest value anywhere in the turn is 2.9e-10 against a sensitivity of order 0.41. That is the only independent check there is of the Jacobian itself, whose coupler rows carried four wrong signs from the foundation phase to 2026-08-12 without ever drawing anything wrong.
Fig. 5 The check that the six-bar does not yet have. On the four-bar one route rebuilds the mechanism and the other is nothing but the Jacobian, so a sign error cannot survive both. The six-bar’s derivative route is finite differences, which shares the solver with its own check — the situation this site spent four phases in without knowing.

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.

The four lengths do not matter equally. Each length's average contribution to the output band, for a tolerance of ±0.005 on all four, averaged over the 48 crank positions the mechanism reaches. The coupler contributes 38% of the total and the rocker 11% — a factor of 3.4 between the ends of the ranking. A tolerance specified equally on all four therefore spends most of its cost buying accuracy the mechanism does not notice, which is what a sensitivity ranking is for.
Fig. 6 Four contributions at half the tolerance, for comparison with the seven a six-bar has. The ranking is what the derivative route produces and the corner enumeration cannot, and it is the reason to differentiate even where enumerating is still affordable.

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, 2p2^p 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.

About the same objects

Not linked from either essay — found by the objects both name.

What links here

The 8 of 9 essays linking to this one that name the most of the same objects.

The objects this essay names

Each one links to every other essay that touches it.

AllocationConstraintConstraint jacobianDerivativeDwellJacobianSensitivitySix-barStrokeToleranceWatt's linkage