Numbers that were measured

Nine parameters, two of them invisible

A Watt six-bar has seven lengths, a fraction and a ground pivot's two coordinates. Read by a protractor on its output link, its identification Jacobian has rank seven — and the second missing direction is not a scaling of the machine at all. It is a scaling of the second loop alone, about the pivot the two loops share.

Assumes The direction no protractor can see.

The four-bar’s result could be an accident of having four numbers. Here is the same question asked of a mechanism with nine.

Nine parameters, two of them invisible. A Watt six-bar has seven lengths, a fraction that says where a point rides on its rocker, and a third ground pivot with two coordinates. Reading its output link with a protractor over 28 poses gives a matrix of rank 7: two directions are invisible, at 8.24e-10 and 5.06e-10 against a largest of 7.49e+0. One is scaling the whole machine, with a zero against the fraction, because a fraction is not a length. The other is scaling the second loop alone about O₄ — that loop is a four-bar in its own right and its own size does not reach the output angle. The two wrong guesses a reader would try, scaling those five parameters about O₂ or scaling the first loop alone, are refused at 1.5e-1 and 2.0e-1.
Fig. 1 Nine parameters, nine singular values, and two of them at the level of the arithmetic.

Nine parameters, and they are not nine lengths

A Watt six-bar as this site builds it has three ground pivots and six links. Its parameters are:

Seven from the dims list — g, a, b and c for the four-bar half; then arm, link and out for the dyad hanging off the rocker.

And two more the dims list does not contain: the coordinates of the third ground pivot O₆, which is a fixed point in the plane and has to be somewhere.

Nine numbers. And one of the nine is not a length: arm is where the point D rides along the rocker, expressed as a fraction of the rocker’s length, so it is dimensionless. That matters immediately.

The first invisible direction has a zero in it

Scale the machine and every length is multiplied and the fraction is not. So the direction a scaling moves the parameter vector along is

g  a  b  c  arm  link  out  O6x  O6y
✓  ✓  ✓  ✓   0    ✓     ✓    ✓    ✓

with a zero in the fifth place. The residual of that direction against every row of the identification Jacobian, over twenty-eight poses, is 4.1 × 10⁻¹⁰.

That is a bigger number than the four-bar’s 7.6 × 10⁻¹⁵ and for a plain reason: the six-bar’s derivatives are computed by central differences rather than analytically, because wattSixBar carries an attachment and a third ground pivot and its ∂f/∂ℓ has three shapes rather than two. A difference with a step of 10⁻⁶ against a solve driven to 10⁻¹³ has a noise floor around 10⁻⁷ absolute, and relative to a matrix of size ten that is about 10⁻¹⁰. So 4.1 × 10⁻¹⁰ is the differencing and nothing else.

Reading a zero off a measured null vector is dimensional analysis performed by a decomposition, and it is a pleasant confirmation that the parameter list has been classified correctly rather than merely written down in a plausible order. A parameter list with a fraction mistakenly treated as a length would give a null vector that is not annihilated, at a level far above the noise, and the reading would be a loud one rather than a marginal one.

Twenty-eight poses, and the count is not what limits it

A note before the second direction, because a reader might suspect the nullity of two is a shortage of data.

The sweep is twenty-eight crank angles and the machine reaches all of them, so the matrix is twenty-eight rows by nine columns — over-determined by a factor of three. Doubling the poses to fifty-six changes the singular values in the fourth figure and changes the nullity not at all, which is what the four-bar’s essay predicts: a dependency among columns is unaffected by adding rows.

Nine columns need nine rows to have any chance of full rank, and twenty-eight is comfortably more. The rank is seven because two combinations of the columns are zero, and it would be seven with a thousand rows.

And there is a second one

The nullity is two, not one. Nine parameters, rank seven.

The second direction has zeros in the first four places and is non-zero on arm, link, out and both coordinates of O₆ — measured against the machine’s own numbers, it is

0  0  0  0   arm   link   out   (O6x − g)   O6y

with a residual of 2.1 × 10⁻¹⁰.

What that direction is, in words: scale the second loop alone, about O₄. Multiply arm, link and out, and move O₆ so that its displacement from O₄ is multiplied by the same factor. Leave g, a, b and c exactly as they are.

Why that works

The second loop of a Watt chain is a four-bar in its own right, and seeing that is the whole explanation.

Its frame is the line O₄–O₆. Its input is the point D, which rides on the rocker at a fraction arm of the way along it. Its coupler is the link D–E of length link, and its output is the link O₆–E of length out, whose angle is what the protractor reads.

D’s angular position about O₄ is the rocker’s angle, which does not depend on arm at all — arm decides how far out along the rocker D sits, not which way. So scaling that sub-machine about O₄ multiplies the radius of D’s arc, the two link lengths, and the frame O₄–O₆, all together, and leaves every angle in the sub-machine unchanged.

An angle at O₆ is one of those angles. The output link’s direction does not move.

The centre is what decides it

The result is easy to state and easy to state wrongly, so the two wrong versions are worth measuring.

Scale the same five parameters about O₂ instead of O₄ — that is, multiply O₆’s coordinates rather than its displacement from O₄. Residual: 1.5 × 10⁻¹, which is not a null direction by nine orders of magnitude.

Scale the first loop alone — g, a, b, c multiplied, the rest fixed. Residual: 2.0 × 10⁻¹. Also not.

So the invisible direction is specific: those five parameters, about that pivot. Both plausible neighbours of it are refused, and the gap between accepted and refused is nine orders rather than a factor of two, which is what makes this a measurement rather than a hunch.

What 20 poses determine. The singular values of the identification Jacobian, on a log axis, with the rank cut at 1e-9 of the largest. 3 of 4 parameters are determined; 1 is not, and the one that is not sits at 3.85e-15 against the largest at 1.97e+0. That is not a small number, it is nought: the gap between the last kept value and the first discarded one is a factor of 9.8e+13, so the decision does not depend on where the cut is put. The condition number over the recovered directions is 5.21.
Fig. 2 For comparison, the four-bar’s own spectrum: four values, one of them nought, one invisible direction.
The direction no protractor can see. The measured null direction of the identification Jacobian against the four link lengths themselves, both normalised so the largest entry is one. They are the same vector to 1.3e-15. That is Euler's relation rather than a coincidence: the output angle depends only on the ratios of the lengths, a function homogeneous of degree zero is annihilated by its own argument, and the residual over all 24 rows is 7.61e-15. Scaling this four-bar by any factor whatever produces a machine no reading of its output angle can distinguish from it.
Fig. 3 And the four-bar’s null direction, which is simply the machine — the case where there is nothing to be surprised by.

How it was found

Worth recording, because it was not predicted and it is the kind of result the site’s habits are supposed to produce.

The computation was set up expecting a nullity of one — the four-bar’s result, on a bigger machine. What came back was two singular values at the level of the differencing noise instead of one, which is the sort of reading that is either a finding or a bug.

The distinguishing test is the one this site always uses: predict a specific direction and see whether it is annihilated. The whole-machine scaling was, at 4.1 × 10⁻¹⁰. The remaining direction had to be found, and finding it took reading the measured second null vector and noticing that its entries for g, a, b and c were all proportional to those lengths — which meant it was a mixture of the known direction and something with zeros there.

Subtracting the known part left a vector supported on arm, link, out and O₆, whose entries were, near enough, arm, link, out, O₆x − g and O₆y. That is a guess with a geometric reading attached, and testing it directly gave 2.1 × 10⁻¹⁰.

The decomposition found that a second direction exists and could not say what it is, because a null space is a subspace and any basis of it is a mixture. Naming the direction took an argument about the mechanism, and the argument was then checked by measurement.

What the second loop does not know

The reason the second-loop scaling works is worth one more sentence, because it is the same reason a four-bar’s own scaling works and seeing that makes the pair into one idea.

A four-bar’s output angle is a function of its four lengths’ ratios because a similarity about a ground pivot preserves every angle. The Watt six-bar’s output angle is a function of the second loop’s parameters and of the rocker’s angle, which the second loop’s own parameters do not affect. So the second loop is a four-bar being driven by an angle, and a similarity of it about its own frame pivot preserves what it computes.

The only thing that could break it is if the second loop’s size fed back into the first, and it cannot: the dyad hangs off the rocker and imposes nothing on it. A dyad added to a mechanism adds two links and three joints, which is zero net freedoms and zero net constraints on what was there before.

So the second scaling exists because the second loop is driven rather than coupled, and that is a structural property visible in the chain rather than in the arithmetic.

The seventh singular value

The nine values run 7.489, 2.177, 0.393, 0.141, 0.0414, 0.0219, 5.58 × 10⁻⁴, 8.2 × 10⁻¹⁰, 5.1 × 10⁻¹⁰.

The seventh is 5.58 × 10⁻⁴, which is not zero and is not comfortable either. Against the largest it is one part in thirteen thousand, so the condition number over the recoverable directions is 13,400.

That is a far more practical problem than the two null directions. A null direction is at least honest: it is exactly invisible, it can be identified and quotiented out, and the seven remaining parameters are well defined. A direction at one part in thirteen thousand is recoverable in the sense that matters to a rank and not in the sense that matters to a report — the instrument’s error arrives in that combination multiplied by thirteen thousand.

The interesting number in this spectrum is the one that is not zero. Six directions come back well, one comes back at the level of the noise times ten thousand, and two do not come back at all, and only the middle case needs a decision.

The identification Jacobian of a four-bar, read by protractor. One row for every number the instrument reads and one column for every parameter that might be wrong. Each cell is the derivative of that reading with respect to that parameter, drawn to the right of its centre line when positive and to the left when negative, with the largest entry in the whole matrix at 4.07e-1. 12 rows against 4 columns: far more equations than unknowns, which is what makes an identification a least-squares problem rather than a solve, and what makes the question of which combinations of columns cancel a real one. These are the same derivatives the tolerance field computes one at a time — the same matrix read down instead of across.
Fig. 4 The shape of the object all of this is read off: rows for readings, columns for parameters, and a dependency among the columns that no number of rows removes.
What each instrument recovers. The same twenty poses of the same four-bar, read three ways. A protractor on the output link recovers 3 of the four lengths and leaves the fourth exactly invisible, because its readings are dimensionless in the lengths and scaling the machine does not move them. A coordinate machine on the tracing point recovers all six parameters — the four lengths and the two that say where the tracer sits — at a condition number of 162.3. Using both recovers the same six at 26.1, 6.2 times better, which is the case for putting two instruments on one machine: not more parameters, better-conditioned ones.
Fig. 5 And the repair, on the smaller machine: an instrument whose readings carry a length closes a scale direction, and the same is true here for both of them.

What a minimal description would be

Seven identifiable directions means seven numbers, and nobody has written them down.

For the four-bar the three are Freudenstein’s, found in 1954 by somebody looking for a compact way to design a function generator. For the Watt six-bar the equivalent is a set of seven invariants of the two-parameter group generated by the two scalings, and the construction is not hard — the first four could be the four-bar’s three K’s plus one more, and the remaining three would be ratios within the second loop.

That this site does not carry them is worth recording rather than glossing. It is not a gap in the argument; the rank and the null directions are measured and complete. It is a gap in the presentation: an identification of a six-bar returns nine numbers, seven of which are supported and two of which are arbitrary, and there is no compact coordinate system in which to write the seven.

Why the derivatives are differenced here

A note on method, since every other identification Jacobian in this field is analytic and this one is not.

The four-bar’s ∂f/∂ℓ is written out by hand, and doing so is instructive: the four lengths turn out to be four different objects to the solver, of which only two are bar lengths. The Watt six-bar has three such objects again — an attach constraint whose derivative with respect to arm is the vector along the rocker, a third ground pivot whose coordinates enter two rows, and an out link whose derivative is an ordinary bar’s.

Writing all nine out is straightforward and was not done. The reason is that the result being sought is a rank and a pair of null directions, and the differencing noise floor of 10⁻¹⁰ sits nine orders below the smallest genuine singular value of 5.58 × 10⁻⁴. There is no risk of confusing the two.

That is a judgement rather than a rule, and it would be the wrong judgement if the interesting quantity were the seventh singular value’s precise size rather than the fact that two others are nought. The precision a method needs is decided by the gap it has to resolve, and here the gap is six orders wide.

The one place this shows is in the numbers quoted: 4.1 × 10⁻¹⁰ and 2.1 × 10⁻¹⁰ against the four-bar’s 7.6 × 10⁻¹⁵. Those are not five orders of worse geometry, they are five orders of worse arithmetic, and the essay would be misleading if it did not say so.

What it means for measuring one

Two practical consequences and neither is obvious from the four-bar case.

A ruler on the frame does not fix everything. Measuring the ground length g pins the whole-machine scaling and leaves the second loop’s own scaling free. Two independent length measurements are needed and they have to be in the right places — one anywhere in the first loop, one anywhere in the second.

And a nominal value substituted for an invisible parameter propagates. Fix out at its drawing value and the fit returns arm, link and O₆’s position all consistent with that choice — every one of them scaled by whatever factor makes the drawing’s out correct. Five numbers wrong together, in a way no residual detects, from one substitution.

That is the four-bar’s failure again with more moving parts, and it is why the count of invisible directions is the first thing to compute on any mechanism before believing a single one of its identified parameters.

Seven of nine is still most of the machine

Before the general rule, the same reassurance the four-bar’s essay gives: a nullity of two does not mean the measurement failed.

Seven independent directions come back from a protractor on the output link, which is seven-ninths of the parameter space and includes everything about the machine’s behaviour. The input–output relation is fully determined. Where the output link is at every crank angle, the shape of its motion, whether the mechanism has a dwell and how long it lasts, where its singularities fall — all of it comes back, because all of it is invariant under both scalings.

What does not come back is how big the machine is, and how big its second loop is relative to its first. Two numbers, both of which a tape measure supplies in one visit.

The two invisible directions are exactly the two questions a protractor was never going to answer, and framing the result that way is more useful than framing it as a deficiency: the measurement did everything it could and the two gaps are named and cheap to fill.

The two directions commute

A small structural fact that makes the pair easy to reason about.

The whole-machine scaling and the second-loop scaling are two one-parameter families, and applying them in either order gives the same machine. Together they generate a two-parameter group acting on the nine parameters, and the identifiable quotient is seven-dimensional.

That is worth saying because it is not automatic. Two invariances of a system need not commute, and when they do not, the group they generate can be larger than two-dimensional and the nullity larger than two. Here they do: scaling everything and then scaling the second loop about O₄ multiplies the second loop’s parameters by the product of the two factors and the first loop’s by the first factor alone, whichever order it is done in.

So the count of invisible directions is the dimension of the group, the group is a plain two-torus of scalings, and the seven identifiable directions are its invariants. A nullity is the dimension of a symmetry group, which is the general statement the four-bar’s case makes with a one-dimensional group and is easier to see here where there are two.

The other six-bar, which hides one

The argument above explains why a Watt chain hides two directions in terms of where its second loop is hung, and an explanation of that shape makes a prediction about the other six-link chain. Predicting is not measuring, so the prediction was written down and then run.

There are exactly two six-link chains. Watt’s has its two ternary links sharing a pin; Stephenson’s has them sharing none. In the Watt arrangement here the second loop is a four-bar in its own right, hung on the rest of the machine at the third ground pivot — a point a scaling of that loop leaves exactly where it is — with its input riding on the rocker at a dimensionless fraction. That is what makes the second direction available.

A Stephenson chain hangs its second dyad differently: on the coupler, at a point that moves, and on the frame at the third pivot. There is no centre a scaling of the second loop alone could be taken about that leaves the first loop’s geometry untouched, so the prediction is one invisible direction rather than two.

Two six-bars, and the different numbers they hide. The singular values of the identification Jacobian of each six-link chain, read by a protractor on the output link. Watt's has 9 parameters and rank 7: two directions are invisible, and only one of them is a scaling of the whole machine — the other is a scaling of its second loop alone about the third ground pivot, which is available because that loop is a four-bar in its own right hung on the rest of the machine at a point the scaling leaves where it is. Stephenson's has 10 parameters and rank 9: ONE invisible direction, the whole machine's scaling, measured on a gap of 2.1e+6. Its second dyad is hung on the coupler, which moves, so there is no centre a scaling of it alone could be taken about. The two chains have the same number of links and the same mobility; what differs is where the second loop is attached, and that is what decides how much a measurement can recover.
Fig. 6 The two six-link chains and their spectra. Same link count, same mobility, different numbers hidden.

Measured, a Stephenson six-bar described by ten parameters — eight lengths, and two dimensionless numbers saying where the coupler point rides — has rank nine, on a gap of 2.1 × 10⁶ between the ninth singular value and the tenth. One invisible direction, and it is the scaling of the whole machine to one part in ten million. The prediction holds.

So the link count does not decide what a measurement recovers; the arrangement does. Two chains with six links, six joints and one degree of freedom apiece, differing only in whether two ternary links touch, differ by a whole dimension in what a protractor can determine about them. That is worth having as a caution against parameter counting: nine parameters and ten parameters are not usefully comparable numbers when one machine gives up seven of its nine and the other nine of its ten.

Getting the measurement required one piece of care worth recording, because it is a trap this site has an essay about. The dyad P–C–O₆ has two assemblies, C on either side of the line joining P to the output pivot, and a solver started anywhere converges to whichever is nearer. Left to a fixed starting guess the model returned −2.862 radians where the routine that designed the same machine returns 2.544 — not an error, the other assembly, reported with no complaint. A finite difference whose two evaluations land on different assemblies is not a derivative of anything, and a Jacobian with one such column in it still produces a rank. Every derivative here is therefore seeded from its own unperturbed pose, and the sweep carries each pose’s answer forward to the next.

The general rule this suggests

A mechanism made of loops that hang off one another has one scaling per independently resizable sub-assembly, and the count is a structural property rather than something to be discovered by decomposition each time.

A Watt chain is a four-bar with a dyad attached at one pivot, so the dyad resizes about that pivot: two scalings. A Stephenson chain, whose two ternary links do not share a pin, has its second loop attached at two places rather than one — so scaling it alone would move both attachment points and cannot be done independently. That predicts a nullity of one rather than two, and it is a prediction rather than a measurement: this field has not run it, and it is recorded as a shortfall.

Testing it is a few lines, since the site carries both chains. It is the sort of prediction worth making before measuring, because a wrong prediction here would mean the account above is a description of an arithmetic result rather than an explanation of it.

About the same objects

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

What links here

The 8 of 10 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.

IdentifiableIdentification jacobianMinimal parameterisationScale invarianceSingular valueSix-barStructural identifiabilityUnidentifiable direction