A spectrum that comes in reciprocal pairs
Worth reading first: A matrix that depends on its own eigenvalue · A nearby problem of the wrong kind · A factorisation with nothing to pivot for · The condition number is an amplifier.
A palindromic quadratic reads the same backwards:
Q(λ) = λ²A + λB + Aᵀ, B = Bᵀ.
Multiply Q(1/λ) by λ² and what comes out is Q(λ)ᵀ, so det Q(1/λ)λ^2n = det Q(λ), and λ is an eigenvalue exactly when 1/λ is. The 2n eigenvalues arrive in n pairs whose products are one.
Problems of this shape come from periodic structures — a rail under a moving train, a waveguide, a surface acoustic wave filter — where λ is the factor by which a solution repeats from one period to the next and 1/λ is the same wave going the other way. The symmetry is not decoration; it is the physics.
It is also the third kind of structural constraint this field has met, and the three are worth keeping apart. Hyperbolicity constrains where the eigenvalues are — all real, in two groups. A singular leading coefficient constrains how many there are, as a degree rather than a rank decision. This one constrains how they pair, and it is the only one of the three that a computed spectrum can fail to have while every eigenvalue in it is individually reasonable.
What a general solver returns
Linearise, run the real Schur factorisation, and 2n numbers come back with no relationship between them. The solver was never told about the symmetry and has no way to have inferred it.
The family here is built so that the truth is a closed form. A is the model stiffness matrix and B = b(A + I), so both are polynomials in the same tridiagonal matrix, they are simultaneously diagonalised by the sine basis, and the quadratic falls apart into n scalar palindromic quadratics aλ² + b(a + 1)λ + a = 0. The two roots of each multiply to a/a = one, exactly, and the large one is available without cancellation while the small one is its reciprocal. The parameter b moves the spread: the spectrum spans about 2k decades at b = 10ᵏ.
Measured at n = 6, with b from 10 to 10¹⁰:
| b | large eigenvalues | small eigenvalues | departure from λλ′ = 1 |
|---|---|---|---|
| 10 | 2.9·10⁻¹⁵ | 1.1·10⁻¹⁴ | 1.0·10⁻¹⁴ |
| 10⁴ | 4.4·10⁻¹⁵ | 3.3·10⁻⁹ | 3.3·10⁻⁹ |
| 10⁶ | 3.2·10⁻¹⁵ | 6.6·10⁻⁸ | 6.6·10⁻⁸ |
| 10¹⁰ | 4.9·10⁻¹⁵ | 1.0·10⁻⁷ | 1.0·10⁻⁷ |
The large half is at the rounding level at every stop. The small half loses seven orders. And the third column is the same number as the second — the departure from the pairing is the error in the small eigenvalues, because each small eigenvalue is the reciprocal of a large one that is right.
None of that is surprising on its own. A spectrum spanning twenty decades asks a lot of a similarity transformation, and a small eigenvalue coming back with a poor relative error is the subject of small compared to what and accurate is not a property of a method. It is the setup for the sentence that is surprising.
The small half is a division away
Take the large eigenvalues — the ones that are correct to 5·10⁻¹⁵ — and invert them. What comes back is the small half, correct to 5·10⁻¹⁵.
| b | small half, directly | small half, as 1/λ |
|---|---|---|
| 10⁴ | 3.3·10⁻⁹ | 4.4·10⁻¹⁵ |
| 10⁶ | 6.6·10⁻⁸ | 3.2·10⁻¹⁵ |
| 10¹⁰ | 1.0·10⁻⁷ | 4.9·10⁻¹⁵ |
Seven orders of magnitude, for a division, out of a symmetry the solver discarded.
The mechanism is worth being explicit about, because it is the whole essay. The half of the spectrum a Schur factorisation gets right is the large half: relative accuracy at the small end of a widely spread spectrum is not something a similarity transformation preserves, and this site has said so twice before. The reciprocal symmetry says the small half is determined by the large half exactly. So the accurate route to the small eigenvalues does not go through the small eigenvalues at all.
That is the same move as computing the small root of a scalar quadratic from the product of the roots rather than from the quadratic formula — the cancellation that cancellation takes the answer, not a digit is about, avoided by using an identity instead of a subtraction. It is a first-year trick, and it recovers seven orders on a matrix problem where nobody thinks to look for it.
And preserving the structure costs the half that was right
The obvious alternative is a structure-preserving algorithm: one whose arithmetic cannot produce a spectrum that is not reciprocal. There is a clean one here.
Substitute λ = (1 + z)/(1 − z) and multiply by (1 − z)². With A symmetric the z term vanishes and what is left is
z²(2A − B) + (2A + B) = 0,
an ordinary symmetric generalised eigenvalue problem of size n, not 2n. Its eigenvalues come in ± pairs, and the Cayley map sends a ± pair to a reciprocal pair exactly. So the pairing is enforced by construction, at half the size, with a symmetric-definite pencil that this site already knows how to solve accurately.
Measured, its pairing error is 2.3·10⁻¹⁶ at every spread — flat, exact, as promised.
Its eigenvalues are worse. At b = 10¹⁰ the Cayley route’s large eigenvalues have a relative error of 6.5·10⁻⁶, against the general route’s 4.9·10⁻¹⁵. Nine orders, in the wrong direction.
The mechanism is the symmetry itself. Each pair comes from one computed z, so both members carry that number’s error — measured, the two halves of the Cayley spectrum have the same relative error at every spread, to within a factor of two. The general route confined the inaccuracy to the small eigenvalue, where it was harmless because the small eigenvalue was recoverable another way. Enforcing the symmetry spreads it onto the large one, where it is not recoverable at all.
So the best of the three routes is neither algorithm: take the general solver’s large half and divide. Exactly reciprocal, accurate to 5·10⁻¹⁵ in both halves, from the unstructured method and one division.
Preserving a structure and using one are different acts
That is the sentence to carry, and it is not the one the phrase “structure-preserving algorithm” suggests.
A structure can be imposed on the arithmetic, which forces the answer to have the property and constrains what the arithmetic may do to get there. Or it can be used as an identity after the fact, which leaves the arithmetic alone and applies the property where it helps. The first is what the Cayley route does and it costs nine orders here; the second is a division and it gains seven.
There are structures where the first is the right choice — where the property being preserved is the answer, rather than a relation among parts of it. A rotation that must stay a rotation is one: a reflection cannot stop being one is about exactly that, and there the constraint is free because the operation is orthogonal anyway. What separates the cases is whether preserving the property forces two quantities of different accuracy to share a number.
Why the small half is the half that is wanted
There is a temptation to shrug at the small eigenvalues: they are tiny, so who cares whether their relative error is 10⁻⁷ or 10⁻¹⁵. The application answers that, and the answer is why the essay exists.
For a periodic structure λ is a propagation factor — the complex number by which a wave is multiplied from one period to the next. |λ| < 1 is a wave decaying to the right, |λ| > 1 one decaying to the left, and the two members of a reciprocal pair are the same physical wave viewed in the two directions. Which of them is wanted depends on which end of the structure the boundary condition sits at, and both are wanted when the structure has two ends.
So the small half is not a numerical afterthought; it is half of the answer, and half of it is the half a general solver returns badly. In the worked family the small eigenvalues run down to 10⁻¹³, and their relative accuracy decides whether a computed mode decays at the right rate over a hundred periods. That is the same distinction between absolute and relative smallness that deciding that a zero has arrived turns on, arriving here as a question about half of a spectrum rather than about a single entry. A relative error of 10⁻⁷ compounded a hundred times is not a rounding.
What makes this family checkable
The closed form here is doing more work than usual and it is worth saying how it was arranged, since a reader may want to reproduce it.
A and B are chosen to be polynomials in the same tridiagonal matrix — A is the model stiffness and B = b(A + I) — which makes them commute and therefore simultaneously diagonalisable by the sine basis. In that basis the quadratic is n uncoupled scalar palindromic quadratics, each with roots available in closed form, and the whole spectrum is known exactly at every b and every n.
The reference is then computed the stable way, which is itself a demonstration of the essay’s point: the large root comes from the quadratic formula with the sign that avoids cancellation, and the small root comes from the product of the roots — that is, as 1/λ_big — rather than from the formula’s other branch. Computing the reference the naive way would have produced a “truth” with the same seven-order error as the thing being measured, and the measurement would have reported agreement.
That is a trap worth naming, since the site has walked into its relative once: a reference computed by the same route as the thing being checked is not a reference. Here it is avoided by construction, and the construction is the identity the essay is about.
What the Cayley route is still good for
The measurement is unkind to the structure-preserving route, and it should not be read as saying the idea is worthless.
It halves the size. The symmetric generalised problem is n × n where the linearisation is 2n × 2n, which is a factor of eight in the dense factorisation and a factor of two in memory — and it is symmetric, so the factorisation is the cheaper and better-behaved one this site has spent a whole field on. On a problem where the spectrum is not spread over twenty decades, that is a real win with no accuracy cost, because the shared-error mechanism only bites when the two members of a pair have very different magnitudes.
And it gives the pairing exactly, which is worth something when the pairing is what is being used downstream — a code that classifies modes by whether |λ| is above or below one wants that decision to be consistent, and a pairing error of 10⁻⁷ near |λ| = 1 makes it a coin toss.
The honest summary is a trade rather than a verdict: impose the structure when the spectrum is tight and the pairing is the output; use it as an identity when the spectrum is spread and the eigenvalues are. Which is a sentence that could only be written after measuring both.
The backward error does not see any of this
One more measurement, and it is the negative one that makes the finding sharp.
The structured backward error asks: what is the smallest perturbation of the coefficients that keeps the palindromic form and for which a computed pair is exact? It could in principle be much larger than the unstructured one, in which case ignoring the structure would be a stability question rather than a symmetry question.
It is not. Constructing an explicit symmetric perturbation ΔB with ΔBx = −r/λ — the minimum-norm symmetric matrix mapping x to a given vector, checked to be symmetric and checked to do the job — gives an upper bound on the structured quantity, and it comes out at most 1.41 times the unstructured backward error, with a median of 1.17, over twelve eigenpairs. Every pair is backward stable to begin with, at 10⁻¹⁵ or better.
So nothing in a backward-error analysis would have flagged the general solver. Its answers are exact for a palindromic problem a rounding away. What they are not is reciprocal, and no backward error measures that — which is the same gap a nearby problem of the wrong kind opens from the other side: there the nearby problem is not of the right kind, and here it is, and the computed spectrum still fails to have a property the exact one has.
What to print beside the answer
The operational summary is two lines of output rather than a change of algorithm.
Print the reciprocity. For each computed λ, the distance from 1/λ to the nearest other computed eigenvalue, relative to |1/λ|. It needs no reference answer, no closed form and no knowledge of the spectrum — it is a property of the returned set, computable in O(n²) comparisons, and on this family it is exactly the error in the small half. A solver that prints a residual and not this is printing the quantity that stays flat.
And produce the small half by division. If the reciprocity is large, the large eigenvalues are the trustworthy ones and their reciprocals are the small ones. That is a decision a caller can make from the printed number, and it costs n divisions.
Neither of those is a structure-preserving algorithm and neither requires one. They are what it looks like to use a symmetry rather than to impose it, and the measurement says the difference is seven orders of magnitude.
At other settings
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.
Named objects
A flat tag is an object no other essay names yet.
Cayley transformGeneralised eigenvalue problemPalindromic quadraticQuadratic eigenvalue problemReciprocal pairRelative accuracyStructure preservingStructured backward error