Exactness a micron destroys
Assumes A length is a range.
Every exact statement on this site meets this field eventually. Peaucellier’s cell draws a straight line exactly and a made one does not. Bennett’s linkage moves because its lengths satisfy a condition and a made one is unbuildable to size. The pattern is old and the question is always the same: how far from exact does an artefact land.
The compiled machines are the largest exact mechanisms this site has produced, and this rung asks the question of them.
The measurement
Take a compiled machine. Lengthen one of its bars by , re-solve from the unperturbed configuration, and read the polynomial at the tracing point. Repeat for every bar in turn.
The polynomial was zero before and is not zero after. How far from zero is the whole answer, and the ratio of that to the error put in is the amplification.
Two things are visible immediately, and only one of them was expected.
What was expected, and what the numbers said instead
It is worth recording the expectation this measurement was set up against, because it was wrong in both of its halves.
The expectation was that the amplification would be roughly one and roughly constant. Roughly one, because a linkage is a geometric object and a small change in a length ought to produce a small change in a position; roughly constant, because there is no obvious mechanism by which a bigger machine would be worse — the errors are independent, and independent errors combine as a square root rather than a product.
Both halves failed. The amplification reaches ninety, and it grows.
The square-root intuition is the one worth examining, because it is the tolerance field’s standard tool and it is right about almost everything else on this site. It applies when errors add: a stack of dimensions accumulates deviations that are as likely to cancel as to reinforce, so the expected total goes as the square root of the count.
Here the errors do not add. An error in an angle at the bottom of a multiplication chain is multiplied by the integer the chain multiplies by, and no amount of independence helps with a factor.
It grows with the machine
A line, five bars: . The worst bar produces an error at the tracing point smaller than the one put in. That is the ordinary situation for a small mechanism and it is why nobody worries about a four-bar’s tolerances more than about anything else.
A hyperbola, twenty bars: .
An ellipse, thirty-four bars: .
A cubic, a hundred and one bars: .
A lemniscate, fifty bars: .
The trend is up and it is not smooth — the lemniscate, at fifty bars, is worse than the cubic at a hundred and one, because what governs is the deepest chain of angle arithmetic rather than the total count.
Extrapolating is unwise, and the direction is not in doubt. The bigger the construction, the further the artefact is from it, which is a bad property for an approach whose whole selling point is exactness.
The fragile parts are not the numerous ones
The second finding is the one worth the rung, because every expectation set up by the cost accounting points the other way.
Three quarters of a large compiled machine is parallelograms carrying directions from where they were computed to where they are used. A quarter is angle arithmetic: reflectors, means, rigid offsets, the arm.
The worst offenders are reflectors, every time. On the lemniscate’s machine the worst reflector bar produces and the worst translator bar — a factor of forty-five between them, with forty-five times as many translators.
The reason is what each part does. A reflector performs arithmetic on an angle: its output is a function of its inputs, that output feeds another reflector, and the whole chain multiplies an angle up by as much as five. An error at the bottom of that chain is multiplied along with the angle. A translator copies: an error in it shifts one copied direction by a first-order amount, and nothing downstream compounds it.
So the amplification tracks the depth of the angle arithmetic, not the number of parts, which is why the lemniscate — whose terms reach frequency four — is worse than the cubic, whose terms reach three.
The part to make carefully is not the part there is most of. That is a bad shape for a manufacturing problem: a builder’s attention naturally goes to the repeated element, and the repeated element is the forgiving one.
The median is the other half of the answer
Quoting the worst bar is right for a design decision and it is not the whole picture, so the distribution is worth reading as well as its maximum.
On the lemniscate’s fifty-bar machine the worst bar gives and the median bar gives — a factor of thirty-three between them. Most of the machine barely matters.
That is a much better situation than the headline suggests, and it is the shape a builder could act on. If the reflectors were made to a tolerance ten times tighter than everything else, the machine’s worst amplification would fall by nearly an order of magnitude at a cost of tightening a quarter of its parts.
A tolerance budget is not uniform and this machine’s is very far from uniform. The tolerance field’s own machinery says exactly this about a four-bar — that its four lengths do not matter equally, and that knowing which matters is worth more than tightening all of them — and the same argument at a scale of fifty bars is the same argument with more room in it.
Two routes, and what the gap between them says
The site’s usual discipline here is two independent routes to a sensitivity: once by perturbing and re-solving, and once from the Jacobian in closed form. The two agreeing is what makes either trustworthy.
The second route is a chain rule through the constraint system and it is cheaper than the first, not dearer. A bar’s residual is |b − a| − L, so the whole system’s derivative with respect to bar i’s length is a vector carrying −1 in that bar’s row and nothing anywhere else. Differentiating the closure conditions gives
J · ∂q/∂L = e
one right-hand side per bar against one Jacobian. Where the perturb route pays a full non-linear solve per bar — fifty solves on a fifty-bar machine — this pays a decomposition once and a back-substitution per bar.
The two do not agree exactly, and they must not. The perturb route is exact for the machine it actually solves; the Jacobian route is exact for the linearisation of it. They differ by the perturbation’s own second-order term, so a check that demanded a match to some tolerance would be choosing the tolerance after seeing the answer. What can be demanded is that the difference behaves.
It does. Halving the perturbation halves the disagreement, over five halvings, on every machine in the catalogue where there is anything to fit: fitted slopes run 0.99 to 1.06 against a prediction of exactly one. On the four smallest machines the two agree to better than a hundredth of a per cent at every step and there is no slope to fit, which is the same statement with nothing left over.
The badly conditioned machines are where this earns its place. The lemniscate’s compiled linkage has a condition number of 8.8 × 10⁴ and amplifies a bar error seventy-six fold, and at a perturbation of 4 × 10⁻⁶ its linearisation is 16.3% out — falling to 7.4%, 3.5%, 1.7% and 0.86% as the step is halved. That is not a defect in either route. It is the honest statement that on that machine a sensitivity quoted from a linearisation is good to one significant figure at a micron, and a reader planning to trust one needs to know which machine they are on.
The second route also found something the first could not: a bar whose closed-form response is exactly nought. Several are — the reflector bars that lie along a line the tracing point does not depend on — and the perturb route reports them at 3 × 10⁻¹¹, which is its own solver noise for that step. Two routes distinguish a zero from a small number and one route cannot.
What the perturbation actually moves
One detail of the measurement is worth stating, because it decides what the number means.
The perturbed machine is re-solved from the unperturbed configuration, so the solver finds the nearest configuration satisfying the new bar lengths rather than some other assembly. That is the right question — a made machine with a slightly long bar sits near where the ideal one would, not somewhere else entirely — and it is a choice that could have been made differently and would then be measuring something else.
The re-solve converges in every case; none of the two hundred and fifty perturbations across the catalogue produced a machine that would not close. That matters, because a mechanism can respond to a length error in two ways: by moving to a nearby configuration, or by having no nearby configuration at all. The second happens to overconstrained mechanisms, where a small error makes the loop unclosable and the mechanism simply does not go together.
An unbraced compiled machine is not overconstrained, so it takes up the error by moving, and what is measured is how far that movement carries the tracing point. A braced one has a hundred and fifty-four redundant equations and would behave like Bennett’s linkage instead — errors it cannot absorb by moving. That measurement is not made here and would be a different rung.
Where the error comes out, as a distance
The polynomial’s value at a point is not a length, and a builder would want one, so the same measurement is worth reading the other way.
Alongside the polynomial residual the measurement records how far the tracing point moved from where the unperturbed machine put it. On the lemniscate’s machine the worst bar moves it by a few thousandths of the arm’s own length — which is to say by about what the error put in, geometrically, and by a great deal more than that measured against the curve.
The two readings differ because the polynomial’s gradient at a point is not one: a curve along which changes slowly tolerates a large displacement for a small residual, and one where it changes quickly does the opposite. So the amplification of ninety is an amplification in the polynomial’s units, and converting it to a distance off the curve needs the gradient there.
That conversion is not done, and the residual is quoted because it is the quantity the specification is written in. The specification says and the measurement says how far from zero is, which is the comparison the field’s claim is about; a distance would be a different and equally reasonable thing to report, and mixing them would be the error.
What this does to the frontier
The comparison of straight-line mechanisms puts Watt’s four bars at nine per cent of the stroke and the exact mechanisms at , with fourteen decades of empty axis between them. That comparison is for ideal mechanisms.
Give every mechanism a length tolerance of a thousandth and the picture changes. Watt’s linkage is still out by nine per cent, because a thousandth is lost inside it. Peaucellier’s cell is out by something like a thousandth, so the gap closes from fourteen decades to about two. A compiled machine with an amplification of ninety is out by nearly a tenth — worse than Watt.
That is the sharpest thing this field has to say about universality, and it is not about size. A compiled machine large enough to be interesting is, when built to any tolerance anybody could hold, less accurate than the four-bar approximation it was supposed to improve on.
Exactness is a property of a design and accuracy is a property of an artefact, and the second is what a machine delivers.
It is worth being careful about what that comparison does and does not say. It is not that compilation is a bad method; it is that the quantity a compiled machine is optimal in — exactness of the relation — is not the quantity an artefact preserves. The same sentence applies to Peaucellier’s cell and has for a hundred and fifty years, and the only thing new here is the size of the amplification.
Why a ten-thousandth, and what happens at other sizes
The perturbation is on bars whose lengths are of order one, so it is a relative error of a hundredth of a per cent — roughly what a competent machine shop holds on a moderate part without trying, and a hundred times better than a casual one.
Choosing it fixes the units of the answer and nothing else, because the response is linear at this size. Halve the perturbation and every number halves; the amplification is a ratio and does not move. That was checked rather than assumed: at the worst amplification on the lemniscate reads within a per cent of the same ninety.
What would change it is a perturbation large enough to move the machine near one of its singular configurations, where the response stops being linear and the machine’s sensitivity rises without bound. That happens at errors far larger than any tolerance and it is worth knowing the boundary exists: the amplification quoted here is a small-error amplification and the machine has configurations where no such number applies.
A sensitivity is a derivative and a derivative is a local statement. The tolerance field has the same caution about every linear sensitivity it computes, and the caution is sharper here because a compiled machine’s working arc ends at a singularity rather than merely containing one somewhere.
Where the amplification comes from, structurally
It is worth asking whether the growth is intrinsic or an artefact of this construction, because the answer decides whether a better construction would help.
The angle chains are intrinsic. Any construction reaching frequency has to multiply an angle by , and multiplying an angle by multiplies an angular error by as well. That is arithmetic and no gadget set avoids it.
What is not intrinsic is the depth of the chain. Doubling and adding reaches in about steps, and each step multiplies the accumulated error by two, so the total factor is about — the same as a chain of additions would give. A construction with a cleverer multiplier would have the same error growth and fewer parts.
So the honest statement is that the amplification is a property of integer angle multiplication, and the machine’s size is a property of transport, and improving the second does nothing for the first. A smaller universal construction would be exactly as fragile.
One consolation, and it is small
Against all of that there is one thing in a compiled machine’s favour as an artefact, and it deserves its sentence.
The errors do not accumulate along the summing chain. A chain of eighteen links added head to tail is exactly the shape the stack-up machinery was built for, and the natural fear is that the last chain vertex carries the sum of eighteen independent errors. It does — and the closing constraint only reads the chain’s horizontal component, which is a projection, and the errors’ contributions to it are what the measurement already counts.
So the chain contributes its errors once, linearly, in the ordinary way. Nothing about the length of the chain makes it worse than the number of bars in it would suggest, which is why the translators come out as the forgiving part despite there being so many of them.
The depth of the arithmetic is what costs, and the arithmetic is shallow: five levels on a quintic. A construction reaching frequency fifty would be another matter entirely, and nothing in this catalogue goes there.
Where this leaves the practice field
This field’s question has always been what survives contact with parts, and its answers have been a series of reductions: an exact linkage is exact to its tolerance, a stack-up is worse than the worst part, clearance is a link with freedoms of its own.
The compiled machines add a case at the far end of a scale the field has not reached before, and they add one thing that is genuinely new to it.
The amplification is a function of the design’s depth rather than of its part count. Everywhere else on this site the sensitivity analysis is about how many dimensions stack and how their tolerances combine — a question of counting and of statistics, where the root-sum-square is a good answer because the errors are independent. Here the errors are not stacking; they are being multiplied, by an integer the construction chose, and no statistical treatment of independent errors captures that.
That is the residue worth carrying. A mechanism that adds lengths has a tolerance problem the field’s existing machinery handles. A mechanism that does arithmetic has one it does not, because arithmetic has gain and addition does not.
The fragile parts not being the numerous ones is the finding, and its practical shape is a caution about where a tolerance budget goes. The instinct on a machine of fifty bars is to spread the accuracy evenly, or to spend it on whatever there is most of; the measurement says the sensitivity is concentrated in the reflectors, which are the cheapest and least regarded part of the machine. So a budget allocated by cost, by part count, or by intuition puts the accuracy in the wrong place — and the error is not marginal, since the amplification runs to ninety times on a fifty-bar machine. Sensitivity is not correlated with anything a bill of materials records, which is the whole reason it has to be computed. That is the same conclusion the four-bar’s length sensitivities reach on a mechanism small enough to check by hand, arriving here on one where nobody could have guessed.
About the same objects
Not linked from either essay — found by the objects both name.
- A clearance inside a tolerance box sensitivity · stack-up · tolerance
- Six things a compiled linkage is not compiled linkage · exact mechanism · tolerance
- The ratio that has a tolerance sensitivity · stack-up · tolerance
- Where an error at the shoulder ends up sensitivity · stack-up · tolerance
- Where the shortest loops are sensitivity · stack-up · tolerance
- Which contact to make accurately sensitivity · stack-up · tolerance
What links here
Essays that link to this one from their own argument.
- A parallelogram a micron wrong What can move
- Exact costs more than close The curve as an equation
- Five bars for a line, four hundred for a quintic The curve as an equation
- One freedom and four hundred links What can move
- Where the machine stops being the function The curve as an equation
- A bar between two midpoints The curve as an equation
- A parallelogram carries an angle, and only so far The curve as an equation
- A sextic that comes apart The paths points trace
The objects this essay names
Each one links to every other essay that touches it.
Compiled linkageError amplificationExact mechanismLength errorSensitivityStack-upTolerance