How far a primordium reaches
Worth reading first: The angle is an output · A stem is a cylinder.
The rule this collection has used since its foundation phase is one sentence long: each new element goes where the repulsion from the ones already present is least. It has produced the golden angle from a start that knows nothing about it, a bifurcation diagram, a ladder that a growing stem walks, and a threshold in the rate at which a shoot changes branch.
There is a number inside it that nobody had looked at. The repulsion falls off as some power of the distance, and this site has used the inverse cube throughout, because that is what Douady and Couder’s experiment was made of — two magnetised ferrofluid droplets really do repel as . Nothing about a plant supplies the exponent, and until this phase there was no way to vary it here: iterate() in lib/dynamics.js took no exponent and passed none down, so a docstring’s claim that it barely matters had been unfalsifiable for three phases.
This essay is about what the exponent controls. It went down a wrong path first, and the wrong path is worth walking, because it is short, plausible, and arrives at a number that agrees with the measurement for the wrong reason.
The tidy wrong answer
The rule computes a sum over neighbours,
and takes its minimum. It is natural to ask whether that sum has a value at all — whether it keeps growing as more distant elements are included — and the answer depends on how fast neighbours accumulate with distance.
That accumulation is a property of the organ rather than of the rule, and it is worth measuring on its own account.
Take a cylindrical lattice of circumference 1 with a rise of 0.02, and count the nodes within a distance of a node in the middle. Close in, the surface is effectively a plane and the count grows as . That regime ends at about one circumference, where the disc of radius has wrapped all the way round and can only grow upward and downward. Past that, the count grows linearly: a band of height contains nodes and nothing else.
Measured on four thousand nodes, the fitted exponent beyond one circumference is 1.0195 and the coefficient is 99.9 per unit against the 100 the geometry fixes. The coefficient is checked as well as the slope, because a slope of one with the wrong constant would mean the distances are being measured somewhere other than on the surface — an easy mistake on a cylinder, where the shorter way round the seam is the whole of the metric.
With , the contribution from the shell between and goes as , and the total converges if and only if . Computed directly on twenty thousand nodes, the last doubling of the range — from sixteen circumferences to thirty-two — multiplies the total by 1.000 at , by 1.004 at and by 1.029 at ; at by 1.266 and at by 1.449, with no sign of stopping. At exactly it multiplies by 1.142, which is what a logarithm looks like sampled this way.
So: on a stem the rule’s energy has a value above and not below it. The measured exponent at which the rule stops producing a lattice, in the next essay, is between 1.12 and 1.25. It is very tempting to join those two facts.
They do not join. The rule takes the argument of the minimum, and a term that is the same at every azimuth does not move a minimum however large it is. A diverging total is a constant added to every candidate position.
The quantity that decides a placement
What matters is not how much energy each shell of neighbours contributes but how much it makes the profile vary around the circumference. A distant ring of nodes contributes a great deal of energy and almost none of that variation, because from far enough away every azimuth looks alike.
So the measurement was redone on the right quantity. The energy profile is computed shell by shell — nodes zero to two node spacings from the growing tip, two to four, four to eight, and so on out to sixty-four — and each shell’s contribution to the peak-to-trough range of the profile is recorded, at eight exponents.
Two things come out of it, and the first disposes of the wrong answer.
The far shells contribute almost nothing to the variation, at any exponent. Sixteen to thirty-two spacings out, the contribution is under two per cent of the nearest shell’s at and under a hundredth of a per cent at . Whatever the total is doing out there, it is doing it uniformly.
What moves with the exponent is the ratio between the nearest shell and the next one out. At the two are within ten per cent of each other — 1.1. At the ratio is 3.1, at it is 8.2, at it is 13.0, at it is 20.9, at it is 50.9, at it is 296, and at it is nearly ten thousand.
The measured band where the rule starts producing a lattice reliably — between and — is where that ratio passes about twenty.
Why that is the quantity, and not another coincidence
The account is short enough to state and it has the merit of predicting the direction rather than only the number.
A lattice is an arrangement in which each element sits between its immediate neighbours. That is what a parastichy pair is: node is closest to and , and the whole structure is the accumulation of that local relation.
The rule produces such an arrangement only when it is placing elements with respect to those immediate neighbours. If the profile’s variation comes mostly from the nearest shell, the minimum sits in a gap between two of them and the placement is local. If every shell contributes comparably — as at , where the first four shells are within a factor of a few of each other — the minimum sits wherever a broad, shallow landscape assembled from dozens of elements happens to dip, and there is no reason for the result to be a lattice. Measured, it is not: at the divergence scatters by forty degrees, which is the scatter of an arbitrary sequence.
So the exponent is not controlling range in the sense of how far the rule can see. It is controlling contrast — how much more say a node’s nearest neighbours have than its next-nearest — and a lattice needs that contrast to be large.
The one-dimensional regime is a long way from any real apex
There is a second reason the convergence argument was about the wrong thing, and it is worth stating because it is the kind of objection that applies to a great deal of asymptotic reasoning about growing tissue.
The linear accumulation of neighbours begins at about one circumference from the node. On a stem with a rise of there are nodes in a circumference’s height, so at the rise where a pattern shows 8/13 — about 0.004 — that crossover sits two hundred and fifty internodes away from the node in question.
No apex contains two hundred and fifty internodes’ worth of anything that could be interacting. A meristem is a dome of a few hundred micrometres carrying a handful of visible primordia and rather more that are not yet visible; whatever the inhibition is, it operates over a region that holds perhaps ten to thirty elements. In that region the surface is still effectively a plane, the neighbours are still accumulating as , and the one-dimensional regime is a fact about the infinite mathematical lattice rather than about the organ.
So the total-energy calculation is not only about the wrong quantity for the argmin — it is about a part of the lattice no plant has. The shell measurement, by contrast, is about the first two to four node spacings, which is exactly the region an apex does contain.
That is a useful check to have available generally. When a derivation about a growing organ turns on the behaviour of a sum at infinity, the first question is how far out “infinity” starts in units the organ has, and the second is whether the organ has that many of them.
What the model’s neighbourhood is, and what it is not
The implementation carries a neighbourhood of its own, and the two should not be confused with each other or with the physical one.
For each new node the rule sums over the previous nodes, with set to a multiple of — a number that climbs as the rise falls, because the nodes within a fixed distance of the growing tip number about and a fixed count starves the fine end of every run. That was already recorded on this site as a mistake made once on the disc and repeated on the cylinder because the geometry repeats it.
The multiple is a parameter, and until this phase it was a constant. Making it a knob is what allowed the shell measurement to be checked against something: a rule cut off at three spacings and the same rule cut off at twelve are different rules, and if the shells beyond three mattered they would differ.
They do, but not in the way the convergence story predicts, and the difference is sharp enough to have its own essay. A rule at — below the band, with a divergent total and a near-shell ratio of only 8 — produces a clean 8/13 lattice when its neighbourhood is cut at three spacings, and no pattern at all when it is allowed twelve. The truncation supplies the contrast the exponent does not.
The disc model is a different geometry, and not in the way one expects
The obvious guess is that a disc, being two-dimensional, gathers neighbours as . It does not, and the reason is worth more than the answer.
In the disc model the elements do not sit still. Each is pushed outward as the meristem grows, so an element of age sits at radius in meristem radii. The distance to an element is therefore exponential in its age, which means the number within a distance grows like : at , within two meristem radii there are 2 elements, within four 4, within eight 5, within sixteen 7, within thirty-two 8, within sixty-four 10. Each doubling adds two or three, not twice as many.
That is a much weaker accumulation than any surface can manage, and it is why the disc model is nearly indifferent to the exponent — which is a claim this site had been making in a code comment since its foundation phase without a test. The next essay measures how indifferent, and the answer is three and a half degrees across a sixteenfold range.
The same rule is short-ranged on one organ and unbounded on another
That sentence is the one worth carrying away, and it is slightly uncomfortable.
A rule is usually thought of as having a range: an inverse cube is local, an inverse square less so, an inverse first power long-ranged. That intuition assumes a fixed background geometry, and phyllotaxis does not have one. The identical rule with the identical exponent computes a convergent total on a growing disc and a divergent one on a stem, and — more to the point — assembles its profile’s variation from very different neighbourhoods on the two.
The consequences run both ways. A result obtained on the disc model does not transfer to a stem for free: every finding on this site that came out of lib/dynamics.js — the bifurcation diagram, the golden angle as an attractor, the whorled regimes at large growth — was obtained in a geometry where the exponent is nearly irrelevant, and that is a licence for those results and a warning about generalising them. And a real organ is neither of these two extremes; where it falls is set by how its elements separate with age, which is a growth law rather than a shape.
What this does not claim
The convergence question is about the far end of the sum, and nothing here says the far end is what a plant is doing. Real inhibition does not extend indefinitely at any exponent — there is a meristem, it has a size, and whatever the mechanism is chemically it does not act across a whole shoot. A physically truncated interaction converges trivially.
What the measurement says is narrower and still useful. The exponent decides how sharply a node is placed relative to its immediate neighbours rather than its whole neighbourhood, and a lattice needs that ratio to be of the order of twenty. Everything else about the exponent — the divergence of the total, the range in the ordinary sense — turns out not to be the operative thing.
There is also a lesson about the first calculation, and it is the reason this essay begins with it rather than hiding it. The convergence argument is correct arithmetic about a real quantity, it lands within a fifth of the measured boundary, and it is about the wrong thing. A derivation that agrees with a measurement is not thereby the explanation of it, and the way to tell is to ask whether the quantity derived is the quantity the mechanism uses. Here it was not: the rule uses an argmin, and an argmin cannot see a constant.
How nearly it shipped
It is worth being specific about how close the wrong version came to being the published one, because the failure mode is not carelessness.
The convergence calculation was done first, in about ten minutes. It is a standard argument, it uses a quantity — the neighbour count — that had to be measured anyway, and the measurement came out beautifully: an exponent of 1.0195 and a coefficient within a twentieth of a per cent of what the geometry fixes. The partial sums confirmed the boundary at and even showed the boundary case behaving logarithmically, which is the sort of detail that reads as a measurement finding something real rather than confirming an expectation.
Then the placement sweep came back with a band between 1.12 and 1.25. One and a bit, against a derived boundary of one. Everything agreed.
What did not fit, and what eventually forced the second measurement, was the truncation result: cutting the neighbourhood at three spacings makes the rule produce a clean lattice. If the failure at were the divergence of the total, then truncation would fix it by removing the divergence, which sounds right — but truncation at three spacings also removes almost nothing of the total, since a sum diverging logarithmically has most of its mass close in. The two accounts make different predictions about which shells matter, and only one of them can be checked.
The check is the shell measurement, and it says the far field never mattered. The tidy answer survived exactly as long as nobody asked it to predict anything it had not already been fitted to.
What links here
Computed from the collection, not written here: the essays that point at this one.
Reads more easily once this is understood
Essays that name this one as worth reading first.
Shares its objects with
Essays that name at least two of the same things, and that neither author linked.
- Where the model stops — both name convergence, meristem, repulsion, truncation
- Where the noise gets in — both name meristem, the neighbour graph, the placement rule, rise
- A pattern with a rate — both name the placement rule, repulsion, rise
- Continuity from a coarse start — both name convergence, repulsion, rise
- A cone has a rise that falls — both name cylinder, rise
- A disc is a cylinder — both name cylinder, rise
Named objects
A flat tag is an object no other essay names yet.
ConvergenceCylinderMeristemThe neighbour graphThe placement ruleRepulsionRiseTruncation