Reduction, and what a model is for

Interpolating at the model’s own poles

One choice of interpolation points is not arbitrary — the mirrored poles of the model about to be built. It is a fixed point rather than a guess, and when it is reached it beats a method costing O(n³) — by 0.4 per cent, which is the honest size of the whole contest.

Worth reading first: Exact at the points that were named · The bound that is known in advance · A model that is a rational function.

Exact at the points that were named ends on an uncomfortable fact: the method’s whole content is r complex numbers, and nothing is known about where to put them at the moment the choice is made.

There is one choice that is not a guess. If the interpolation points are the mirror images of the reduced model’s own poles — σᵢ = −λᵢ(Aᵣ) — then Hᵣ satisfies the first-order conditions for a best H₂ approximation of H. That is a condition on the answer rather than an input to it, so it defines a fixed point, and IRKA is the iteration that looks for one: interpolate at some points, read the poles of what comes back, mirror them, repeat.

IRKA's interpolation points walking to the condition that defines themEach curve is one of 4 interpolation points across 13 iterations of σ ← −λ(Aᵣ). They start logarithmically spread over the frequency range, which is a guess, and settle at 9.861, 40.15, 102.1, 302.8. What is checked at the end is not that they stopped moving but that where they stopped is the first-order condition: the mirrored poles of the model they produced agree with them to 2.81·10⁻¹². A fixed-point iteration that stops moving without satisfying its own condition has converged to nothing, and this one has no convergence proof to lean on — so the condition is checked rather than the movement.01234567891011121310⁻¹110¹10²10³iterationinterpolation point σa fixed point that is a conditionorder4iterations13σ against −λ(Aᵣ)2.8·10⁻¹²H₂ error4.3·10⁻⁵it stopped movingand the condition holds there
Fig. 1 Four interpolation points walking from a guess to the condition that defines them.

What is checked at the end, and what is not

The iteration converges here in thirteen steps from a logarithmically spread guess, and settles at 9.861, 40.154, 102.133, 302.827 — which is close to, and deliberately not exactly, the model’s own poles at 9.9, 39.3, 87.8, 154.6.

What is checked is not that it stopped moving. A fixed-point iteration that stops moving without satisfying its own condition has converged to nothing, and there is no convergence proof for this one to lean on. So the check is the condition itself: take the model the final points produced, compute its poles, mirror them, and compare against the points that produced it. Agreement to 2.8·10⁻¹² on this model.

That distinction is worth making loudly because the two checks look the same in an implementation and are not the same statement. move < tol is a claim about the iteration. σ = −λ(Aᵣ) is a claim about the answer, and only the second is what the theorem is about. It is the same discipline a tolerance that reads its own residual applies to an inexact Newton method: stop on the condition that matters, not on the quantity that is easy to watch.

What the condition is worth, measured

Here is where the essay stops being about IRKA and becomes about the field.

At n = 24 both methods can be run. Balanced truncation’s two Lyapunov equations are instant, IRKA’s four solves are instant, and the two reduced models can be compared in both norms on the same system. Four systems, of different sizes, degrees and pole spreads:

system                        H₂ (BT ÷ IRKA)   H∞ (IRKA ÷ BT)
24 states, degree 8, r = 4        1.0079            1.156
24 states, degree 8, r = 3        1.0126            1.233
30 states, degree 10, r = 5       1.0042            1.123
24 states, degree 12, r = 4       1.0194            1.248

Both orderings hold on every system, so this is not a coin flip. IRKA wins H₂ every time, by 0.4 to 1.9 per cent. Balanced truncation wins H∞ every time, by 12 to 25 per cent.

Each method wins the norm it was designed for, and by less than anyone guessesRatios of the loser's error to the winner's, on 4 systems. In H₂ the interpolatory model wins every time, by 0.8%, 1.3%, 0.4%, 1.9% — IRKA satisfies the first-order conditions for that norm and balanced truncation does not. In H∞ balanced truncation wins every time, by 16%, 23%, 12%, 25%, which is the norm its bound is stated in. Both orderings hold on every system, so this is not a coin flip; and the H₂ margin is under two per cent, so a method costing r solves lands within two per cent of one costing two Lyapunov solves in the norm the cheap one optimises. The choice in this field is about cost.loser's error ÷ winner's error24 states, degree 8, r = 4 · H₂1.007924 states, degree 8, r = 4 · H∞1.155824 states, degree 8, r = 3 · H₂1.012624 states, degree 8, r = 3 · H∞1.232630 states, degree 10, r = 5 · H₂1.004230 states, degree 10, r = 5 · H∞1.123424 states, degree 12, r = 4 · H₂1.019424 states, degree 12, r = 4 · H∞1.2480IRKA wins the average, balanced truncation the maximum, on every systemH₂ to the interpolationH∞ to the bound
Fig. 2 Each method winning its own contest, and by how much.

Each method wins the norm it was designed for, which is the expected half. The unexpected half is the size: a method costing four sparse solves lands within half a per cent of a method costing two O(n³) factorisations, in the norm the cheap one optimises. And the expensive one’s advantage in its own norm is a fifth, not an order.

Reading that correctly

The comparison is usually reported one way round — either as balanced truncation has a bound, so use it or as IRKA is H₂-optimal, so use it — and both readings are supported by measuring one norm and not the other. Measuring both is what makes the answer honest, and the answer is that neither method is meaningfully better than the other at accuracy.

So the field’s choice is about cost, and about what is known in advance:

  • If n is small enough that O(n³) is available, balanced truncation gives an error bound before the model exists, which nothing else does.
  • If it is not, IRKA gives a model within a per cent of that in H₂ and a fifth of it in H∞, for r solves and no bound at all.

That is a clean answer and it is not the one the cost difference would predict. It is worth putting beside four knobs and one floor, which found four different regularisation rules landing within a few per cent of each other for the same underlying reason: when several methods are all extracting the same information from the same problem, the differences between them are small and the differences in what they cost are not.

Why the H∞ ordering goes the other way

It is worth one paragraph, because “each wins its own norm” is a slogan until there is a mechanism.

H₂ is an average over frequency — it is √(1/2π ∫|H − Hᵣ|² dω) — and IRKA’s conditions make the error orthogonal to the reduced model’s own tangent space, which is exactly what minimising an average means. H∞ is a maximum, and nothing in the interpolation conditions constrains a maximum — the distinction small compared to what draws between a norm and a componentwise statement, one level up: the error curve has r zeros and rises freely between them, and where it rises highest is not something the method looks at.

Balanced truncation, by contrast, drops directions ordered by a quantity that is itself a bound on the H∞ error, so its worst frequency is controlled by construction and its average is not. That is the same asymmetry the best approximation there is records for the truncated SVD, which is optimal in two norms at once and unusual for being so. The two methods are each blind to the other’s norm, and the measurement says how much that blindness costs: about a fifth, in both directions, which is smaller than either method’s advocates would guess.

What the mirrored poles mean

The condition σ = −λ(Aᵣ) looks arbitrary written down and it is not, so it is worth unpacking once.

H₂ is a norm on the error function, and minimising it over all rational functions of degree r is a smooth optimisation over 2r real parameters. Setting the derivative to zero produces conditions on where the error function is orthogonal to the tangent space of the manifold of degree-r rational functions — and the tangent space at Hᵣ is spanned by objects whose poles are Hᵣ’s own. Working the inner products out gives Hermite interpolation of H by Hᵣ at the mirror images of Hᵣ’s poles.

So the condition is not a heuristic that happens to work. It is what stationarity looks like when it is translated into the language of interpolation. That translation is the whole reason a first-order condition can be met by an iteration that only ever builds interpolants: the optimisation problem and the interpolation problem turn out to be the same problem written in two ways.

What that does not give is a guarantee of reaching it. Stationarity is a local condition, the manifold is not convex, and a fixed point of this iteration is a local optimum at best. The measurements above compare against balanced truncation rather than against the global optimum, because the global optimum is not available to compute.

The iteration’s own failure modes

Three, and all three are visible rather than silent.

It need not converge, which is the shape the same zero, and nothing was found gives to a different iteration in the Krylov field: a method whose stopping test can be met without the thing it tests for having happened. There is no proof, and on problems with clustered poles it can cycle. The routine reports whether it reached a fixed point rather than assuming it; a model returned from a run that did not converge is an interpolant at wherever it stopped, which is a perfectly valid reduced model with no optimality claim attached — the same distinction an answer that changes with the seed draws between a computed object and the guarantee it was supposed to carry.

Its poles can be complex. A complex interpolation point needs its conjugate present in the basis to keep the reduced model real, which is bookkeeping this implementation states rather than performs — it keeps the real part and reports how many complex poles it saw. On the models drawn here that count is zero, because the state matrix is symmetric and its reduced projections are too.

The reduced model can be unstable. A two-sided projection of a stable A need not be stable, and IRKA mirrors the poles of whatever it produced — so an unstable reduced model produces interpolation points in the wrong half-plane and the iteration walks away. This is the one failure this method has that balanced truncation cannot: balanced truncation of a stable system is stable, by a theorem.

What it costs per step

r solves for V, r for W, and an r × r eigenproblem, repeated until the points stop moving. Thirteen steps at r = 4 is 104 sparse solves.

Against balanced truncation’s two O(n³) factorisations that is still the cheap option at any large n, but it is not the four solves the previous essay priced. The optimality is bought with a factor of the iteration count, and the iteration count is not known in advance and has no bound.

That changes the practical reading slightly. A single interpolation at sensibly spread points costs r solves and gets within a few per cent of optimal on these models; IRKA costs 13r and gets to optimal. Whether the last few per cent is worth thirteen times the solves is exactly the kind of question a parameter chosen on a smaller problem answers by measuring rather than by arguing, and the answer here is usually no — the same shape what a rebuild is worth prices for a factorisation that could be refreshed and mostly should not be.

The starting guess, and whether it matters

An iteration with no convergence proof invites the question of how much the starting points decide, and the answer here is: the number of steps, and not the destination.

Started from points spread logarithmically over the frequency range the iteration takes thirteen steps at r = 4. Started from a tighter cluster it takes more and arrives at the same fixed point to the digits printed. That is the behaviour a local optimum with a wide basin produces, and it is consistent with what is generally reported for this iteration.

It is not a guarantee, and the honest statement is the narrow one: on the models drawn here, every start tried reached the same fixed point, and the routine reports the step count so that a run which took unusually long is visible rather than hidden inside a returned model. A method whose only guarantee is a fixed-point condition owes its caller the information that it reached one, and the number of times it went round.

The one thing the start does decide is whether a complex pole appears mid-iteration. A badly placed cluster can produce a reduced model with a conjugate pair, at which point the implementation’s restriction to real shifts bites and it keeps the real part. On these symmetric models that never happens; on a general one it is the first thing to check when the iteration behaves oddly.

What the comparison needed in order to be fair

The four rows of numbers above are the point of the essay, and they took more care to produce than they take to read. Three things had to be held fixed for them to mean anything.

The same order. A reduced model of order four and one of order five are not comparable, and the temptation is real because IRKA’s natural output is whatever order its fixed point wanted. Both methods were asked for exactly r here.

The same measurement. Both errors are computed by forming the difference system H − Hᵣ and measuring it, rather than by sampling |H − Hᵣ| on a grid. A sampled maximum is a lower bound and would flatter whichever method happens to put its worst frequency between two samples. The H₂ norm comes from a Lyapunov solve on the difference system, which is a different routine from either reduction and therefore cannot favour one.

The same models, more than one of them. A single system would leave the ordering a coincidence. Four systems of different sizes, degrees and pole spreads, with both orderings holding on all four, is what turns “IRKA was better here” into “IRKA is better in this norm”.

The third of those is the one this site keeps having to insist on. One matrix is an anecdote, and the habit of checking a claim about typical behaviour across several problems is the same one randomisation does not create structure applies to seeds. Here there is no randomness — every model is deterministic — and the argument transfers anyway, because what is being ruled out is not noise but a coincidence of construction.

What could still be wrong with the comparison is worth stating too. All four models come from the same operator, so they share a spectral shape; a system with clustered poles or a non-symmetric state matrix might order the two methods differently, and nothing here rules that out. The claim these numbers support is narrow: on models of this kind, at these orders, each method wins its own norm by a margin small enough that cost decides. That is the claim, and it is the one the field’s practice already assumes without having measured.

What to take from four rows of numbers

Not the ranking. The ranking is the expected result and it is worth about a fifth in one norm and half a per cent in the other.

What to take is that a method with a proved bound and a cubic cost, and a method with no bound at all and a linear one, produce reduced models of essentially the same quality on the problems where both can be run. That is not an argument for ignoring bounds — the bound is what makes the expensive method usable without checking, and checking is what a large problem cannot do. It is an argument for being clear about what a bound buys, which here is confidence rather than accuracy.

At other settings

IRKA's interpolation points walking to the condition that defines themEach curve is one of 2 interpolation points across 14 iterations of σ ← −λ(Aᵣ). They start logarithmically spread over the frequency range, which is a guess, and settle at 10.31, 67.52. What is checked at the end is not that they stopped moving but that where they stopped is the first-order condition: the mirrored poles of the model they produced agree with them to 1.44·10⁻¹¹. A fixed-point iteration that stops moving without satisfying its own condition has converged to nothing, and this one has no convergence proof to lean on — so the condition is checked rather than the movement.0123456789101112131410⁻¹110¹10²10³iterationinterpolation point σa fixed point that is a conditionorder2iterations14σ against −λ(Aᵣ)1.4·10⁻¹¹H₂ error0.0065it stopped movingand the condition holds there
Fig. 3 Two points, which reach the fixed point in fewer steps and spread less far.
IRKA's interpolation points walking to the condition that defines themEach curve is one of 3 interpolation points across 15 iterations of σ ← −λ(Aᵣ). They start logarithmically spread over the frequency range, which is a guess, and settle at 9.91, 45.25, 156. What is checked at the end is not that they stopped moving but that where they stopped is the first-order condition: the mirrored poles of the model they produced agree with them to 4.06·10⁻¹². A fixed-point iteration that stops moving without satisfying its own condition has converged to nothing, and this one has no convergence proof to lean on — so the condition is checked rather than the movement.012345678910111213141510⁻¹110¹10²10³iterationinterpolation point σa fixed point that is a conditionorder3iterations15σ against −λ(Aᵣ)4.1·10⁻¹²H₂ error6.5·10⁻⁴it stopped movingand the condition holds there
Fig. 4 Three, where the middle point is the one that moves most.
IRKA's interpolation points walking to the condition that defines themEach curve is one of 5 interpolation points across 11 iterations of σ ← −λ(Aᵣ). They start logarithmically spread over the frequency range, which is a guess, and settle at 9.857, 39.35, 90.51, 193.8, 432.9. What is checked at the end is not that they stopped moving but that where they stopped is the first-order condition: the mirrored poles of the model they produced agree with them to 7.14·10⁻¹². A fixed-point iteration that stops moving without satisfying its own condition has converged to nothing, and this one has no convergence proof to lean on — so the condition is checked rather than the movement.0123456789101110⁻¹110¹10²10³iterationinterpolation point σa fixed point that is a conditionorder5iterations11σ against −λ(Aᵣ)7.1·10⁻¹²H₂ error2.1·10⁻⁶it stopped movingand the condition holds there
Fig. 5 Five, and the points distribute themselves over the same spectrum.
IRKA's interpolation points walking to the condition that defines themEach curve is one of 6 interpolation points across 10 iterations of σ ← −λ(Aᵣ). They start logarithmically spread over the frequency range, which is a guess, and settle at 9.857, 39.27, 88.05, 162.2, 297, 524.7. What is checked at the end is not that they stopped moving but that where they stopped is the first-order condition: the mirrored poles of the model they produced agree with them to 1.95·10⁻¹³. A fixed-point iteration that stops moving without satisfying its own condition has converged to nothing, and this one has no convergence proof to lean on — so the condition is checked rather than the movement.01234567891010⁻¹110¹10²10³iterationinterpolation point σa fixed point that is a conditionorder6iterations10σ against −λ(Aᵣ)2·10⁻¹³H₂ error5.6·10⁻⁸it stopped movingand the condition holds there
Fig. 6 Six, which is as many as this model’s poles will support.
Each method wins the norm it was designed for, and by less than anyone guessesRatios of the loser's error to the winner's, on 4 systems. In H₂ the interpolatory model wins every time, by 0.8%, 1.3%, 0.4%, 1.9% — IRKA satisfies the first-order conditions for that norm and balanced truncation does not. In H∞ balanced truncation wins every time, by 16%, 23%, 12%, 25%, which is the norm its bound is stated in. Both orderings hold on every system, so this is not a coin flip; and the H₂ margin is under two per cent, so a method costing r solves lands within two per cent of one costing two Lyapunov solves in the norm the cheap one optimises. The choice in this field is about cost.loser's error ÷ winner's error24 states, degree 8, r = 4 · H₂1.007924 states, degree 8, r = 4 · H∞1.155824 states, degree 8, r = 3 · H₂1.012624 states, degree 8, r = 3 · H∞1.232630 states, degree 10, r = 5 · H₂1.004230 states, degree 10, r = 5 · H∞1.123424 states, degree 12, r = 4 · H₂1.019424 states, degree 12, r = 4 · H∞1.2480H₂, where IRKA wins by 1.9% at mostH₂ to the interpolationH∞ to the bound
Fig. 7 The H₂ contest alone, where every bar is just past one.
Each method wins the norm it was designed for, and by less than anyone guessesRatios of the loser's error to the winner's, on 4 systems. In H₂ the interpolatory model wins every time, by 0.8%, 1.3%, 0.4%, 1.9% — IRKA satisfies the first-order conditions for that norm and balanced truncation does not. In H∞ balanced truncation wins every time, by 16%, 23%, 12%, 25%, which is the norm its bound is stated in. Both orderings hold on every system, so this is not a coin flip; and the H₂ margin is under two per cent, so a method costing r solves lands within two per cent of one costing two Lyapunov solves in the norm the cheap one optimises. The choice in this field is about cost.loser's error ÷ winner's error24 states, degree 8, r = 4 · H₂1.007924 states, degree 8, r = 4 · H∞1.155824 states, degree 8, r = 3 · H₂1.012624 states, degree 8, r = 3 · H∞1.232630 states, degree 10, r = 5 · H₂1.004230 states, degree 10, r = 5 · H∞1.123424 states, degree 12, r = 4 · H₂1.019424 states, degree 12, r = 4 · H∞1.2480H∞, where balanced truncation wins by 25% at mostH₂ to the interpolationH∞ to the bound
Fig. 8 And the H∞ contest, where every bar is a fifth past it.
A reduced model of order 4, and the 4 places it is exact|H(s) − Hᵣ(s)| ÷ |H(s)| along the real axis, for a rational-Krylov reduction of a 24-state model at the interpolation points 1.5, 5, 16, 50. At each of them the curve falls to 5.3·10⁻¹⁶ — the reduced function passes through the original, and its derivative does too, because the projection is two-sided. Between and beyond them it reaches 8.37·10⁻⁴, and there is no bound on it: the method buys 8 exact conditions for 4 solves and offers nothing anywhere else. That is the trade against balanced truncation, which asks for nothing and bounds everything at a cost of two Lyapunov solves.10⁻¹110¹10²10³10⁻¹⁷10⁻¹⁴10⁻¹¹10⁻⁸10⁻⁵s, on the real axis|H − Hᵣ| ÷ |H|exact where askedpoints4conditions bought8worst at a point5.3·10⁻¹⁶worst away from one8.4·10⁻⁴4 points, 8 conditionsand no bound in between
Fig. 9 The error curve a fixed set of points produces, for comparison.
A reduced model of order 5, and the 5 places it is exact|H(s) − Hᵣ(s)| ÷ |H(s)| along the real axis, for a rational-Krylov reduction of a 24-state model at the interpolation points 1.5, 5, 16, 50, 160. At each of them the curve falls to 8.9·10⁻¹⁶ — the reduced function passes through the original, and its derivative does too, because the projection is two-sided. Between and beyond them it reaches 2.97·10⁻⁵, and there is no bound on it: the method buys 10 exact conditions for 5 solves and offers nothing anywhere else. That is the trade against balanced truncation, which asks for nothing and bounds everything at a cost of two Lyapunov solves.10⁻¹110¹10²10³10⁻¹⁷10⁻¹⁴10⁻¹¹10⁻⁸10⁻⁵s, on the real axis|H − Hᵣ| ÷ |H|exact where askedpoints5conditions bought10worst at a point8.9·10⁻¹⁶worst away from one3·10⁻⁵5 points, 10 conditionsand no bound in between
Fig. 10 And one point more, which is cheaper than one IRKA step.
The error a reduced model has, and the bound computed before it existed‖H − Hᵣ‖∞ for balanced truncation of a 20-state model, against 2Σ_{k>r}σₖ — a number available from two Lyapunov solves before any reduced model is formed — and against σᵣ₊₁, which is a lower bound no reduced model of that order can beat. The measured error and the upper bound are the same curve: the ratio is 1.0000 to 1.0000 across the sweep, spread 1.0000. The bound is attained rather than approached, because on a spectrum falling this fast the tail sum is its own first term and removing one state costs exactly twice it. The measured error sits at 2.03 times the lower bound, so the whole question of what order to truncate at is answered by a curve nobody has to compute a model to see.123456710⁻¹¹10⁻⁹10⁻⁷10⁻⁵10⁻³10⁻¹order r kepterror and bounds2Σσ, and the errorσᵣ₊₁a bound that is an equalityorders7bound ÷ error, worst1spread over the sweep1error ÷ σᵣ₊₁, worst2.1computed before the modeland attained by it
Fig. 11 The bound the other method has and this one does not.
Hankel singular values, and the half of them a product cannot seeσₖ divided by σ₁, for a 20-state model of McMillan degree 12. The lower curve is the square-root route — Cholesky-like factors of the two Gramians and one SVD of RᵀS — and it descends to the level at which the Gramians were computed. The upper curve eigendecomposes the product PQ, agrees for the first 6 values and then stops, flattening at 9.67·10⁻¹⁰. The dashed line is σ₁√u = 2.32·10⁻⁹, which is where a route that squares the conditioning must stop: the eigenvalues of PQ are σ², an absolute error of uσ₁² on them is a relative error of √u on σ. κ(PQ) is 1.8·10³⁶ against 1.34·10¹⁸. Every σ below the line is a term in the error bound, so this is not an academic loss.1357911131510⁻¹⁸10⁻¹⁵10⁻¹²10⁻⁹10⁻⁶10⁻³1index kσₖ ÷ σ₁σ₁√utwo factorstheir productthe normal equations, againroutes agree to k =6product floors at9.7·10⁻¹⁰σ₁√u2.3·10⁻⁹κ(P)κ(Q)1.8·10³⁶√ of it1.3·10¹⁸do not form the productthe σ below the line are the bound
Fig. 12 And the O(n³) it costs to obtain.
Two bases for one subspace, at an interpolation point of 20κ₂ of the moment basis (σI − A)⁻¹B, (σI − A)⁻²B, … at a single point σ = 20, against κ₂ of the same number of solves spent at points spread across the model's poles and orthogonalised as they are built. The moment basis runs 10.9 to 7.75·10⁹, multiplying by about 65.8 per vector, while the spread one stays at 1. The reason is the one behind every Krylov basis on this site: repeated application of one operator converges to a direction, so every new moment is nearly the last. The rate is set by the ratio of distances from σ to the poles, which means the user's own choice of interpolation point decides how fast their basis becomes unusable — and spending the solves at different points instead is both a better approximation and a basis that survives.2345678110²10⁴10⁶10⁸10¹⁰vectors in the basisκ₂ of the basisas derivedsolves spread outone subspace, two spanning setseight moments at one point7.7·10⁹eight points, spread1growth per vector661/u4.5·10¹⁵the same subspaceand only one of them usable
Fig. 13 The basis this iteration must not build.
The transfer function of a 24-state model, by a solve and by a formula|H(iω)| for the second-difference operator on 24 points with one actuator and one sensor. The curve is C(iωI − A)⁻¹B, one factorisation of a complex 24 × 24 matrix per frequency, and the crosses are Σ(cᵀvₖ)(vₖᵀb)/(iω − λₖ) with the eigenvalues and eigenvectors written down in closed form. The two share the coefficient matrices and no code. Below ω = 100 they agree to 1.05·10⁻¹⁴ relatively; above it the modal sum is computing a number far below its own largest term, because the residues sum to cᵀb and the sensor is not at the actuator, so the relative comparison stops meaning what it looks like. Measured against the size of the terms being added, the two agree to 3.85·10⁻¹⁵ at every frequency. A state dimension of 24 and a function of one variable: the gap between those is what the field is about.10⁻¹110¹10²10³10⁻¹¹10⁻¹⁰10⁻⁹10⁻⁸10⁻⁷10⁻⁶10⁻⁵10⁻⁴10⁻³10⁻²10⁻¹frequency ω|H(iω)|one function, two routesstates24relative, ω ≤ 10010⁻¹⁴against the terms3.9·10⁻¹⁵‖H‖∞0.0924 statesone function of one variable
Fig. 14 The function both methods are approximating.
Two rank decisions for one integer: the McMillan degree of a 40-state modelSingular values, each divided by the largest of its own set. The Loewner matrix is built from 32 samples of H on the imaginary axis and never touches A: its 6th singular value stands 9.46·10⁴ above the next, so the rank decision is not a close call. The Hankel matrix of Markov parameters CAᵏB is built from A, B and C — strictly more information — and has no cliff, because ‖A‖ is (n+1)² and its entries span 3·10³⁷. It returns 2 where the answer is 6. The definition is not the algorithm, and the route with less information is the one that works.1357911131510⁻¹⁸10⁻¹⁵10⁻¹²10⁻⁹10⁻⁶10⁻³1indexsingular value ÷ the largestdegree 6from samples of Hfrom A, B and Cone integer, two routesstates40Loewner rank6its gap9.5·10⁴Markov rank2its dynamic range3·10³⁷the rank of a divided differenceand the rank that cannot be seen
Fig. 15 And the order at which either would be exact.
Newton on the Bratu problem: analytic Jacobian, differenced Jacobian at ε = 10^-6, and matrix-freeThree residual sequences, all starting from zero. The analytic Jacobian gives 8, 0.052, 3·10⁻⁶, 5.2·10⁻¹³; a Jacobian differenced at ε = 10^-6, whose entries are correct to about 1.3·10⁻¹⁰, gives 8, 0.052, 3·10⁻⁶, 4.6·10⁻¹³. They stop at the same residual. The matrix-free run, where GMRES sees only a closure and no entry exists anywhere, lands 8.1·10⁻¹⁶ from the analytic answer in 438 products.0123456710⁻¹⁴10⁻¹²10⁻¹⁰10⁻⁸10⁻⁶10⁻⁴10⁻²1Newton step‖F(x)‖analytic Jdifferenced Jmatrix-freeone fixed point, three derivativesanalytic floor4.2·10⁻¹³differenced floor3.9·10⁻¹³matrix-free floor3.8·10⁻¹³products used, matrix-free438the derivative chooses the stepand the residual decides the answer
Fig. 16 A fixed-point iteration with a proof, for contrast.
What each Newton step asked of its linear solve, and what the solve cost, under the adaptive policyThe lower series is the tolerance handed to the inner solve at each step and the upper one is the number of conjugate gradient iterations it took. Under the adaptive rule the first step asks for 0.9 and costs 1 iteration, and the last asks for 0.0042 and costs 271. The whole solve costs 1009 inner iterations across 10 Newton steps and ends at a relative residual of 3.37·10⁻¹¹.0123456789101110⁻¹⁵10⁻¹²10⁻⁹10⁻⁶10⁻³110³Newton steptolerance asked for, and iterations paiditerations paidtolerance asked forouter residualthe adaptive policy, step by stepNewton steps10inner iterations, total1009first step's cost1last step's cost271final outer residual3.4·10⁻¹¹the rule reads the last two residualsand asks for nothing it cannot use
Fig. 17 Stopping on the condition rather than on the movement, one field over.
The accuracy asked for, against the accuracy obtained, for two kernels on one partitionε is applied to each block against that block's own largest singular value; the error is then reported against the whole matrix's norm. The two are not the same number and the dashed diagonal is where they would be. For 1/r the obtained error is 36 times smaller than the tolerance asked for; for log r on the identical partition it is 30 times smaller. Both curves are straight and parallel to the diagonal, so the knob does what a knob should — a decade in buys a decade out — and neither of them sits on it. The factor is how much of the matrix's mass lives off the diagonal, which is a property of the kernel; it is not the number of blocks, which is 46 and would put the curves on the other side of the diagonal.10⁻¹³10⁻¹⁰10⁻⁷10⁻⁴10⁻¹10⁻¹⁵10⁻¹²10⁻⁹10⁻⁶10⁻³ε asked for, per block‖A − A_H‖ ⁄ ‖A‖ obtainedasked = obtainedlog r1 ⁄ rtwo numbers, not one1/r, obtained at 10⁻⁸2.8·10⁻¹⁰log r, obtained at 10⁻⁸3.3·10⁻¹⁰1/r, obtained ⁄ asked0.028log r, obtained ⁄ asked0.033blocks in the partition46the tolerance is per blockand the error is per matrix
Fig. 18 A tolerance that is obtained rather than requested.
Four knobs on one problem at 1.0% noiseRelative error against the fraction of each method's own range, on a logarithmic vertical axis. A truncation, a Tikhonov parameter, a conjugate gradient step count and a randomised rank each have an interior minimum, and the four minima are 0.1445, 0.1406, 0.1426, 0.1449 — a spread of 3%. The horizontal line is the best of them.00.250.50.75110⁻¹110¹10²10³fraction of the method's own rangerelative errorfloor 0.141truncation KTikhonov λCGLS steprandomised rankfour methods, one floortruncation K0.14Tikhonov λ0.14CGLS step0.14randomised rank0.14four knobs from four fieldsand one obstruction underneath them
Fig. 19 Four rules landing within a few per cent of each other.
The L-curve, and where four rules put λThe norm of the solution against the norm of its residual, on logarithmic axes, as λ sweeps eight decades. The curve has a corner: to the left of it the noise is being amplified and to the right the signal is being thrown away. Four points are marked — the three rules that use only the data, and the oracle, which requires the exact answer and is not a method.10⁻¹110¹10²10³10⁴10⁵‖Ax − b‖‖x‖the oraclediscrepancyL-curvegeneralisedscored against a truth none hasoracle, relative error0.14discrepancy principle, as a multiple1L-curve corner, as a multiple1.3generalised cross-validation, as a multiple1the oracle needs the exact answer and is not a methodit is the reference the others are scored on
Fig. 20 And what each of them is actually reading.
How far a perturbation of size ε moves an eigenvalue, 10×10A log–log plot of eigenvalue movement against perturbation size. The symmetric case lies on a line of slope one; the non-symmetric case lies on a line of slope one eighth, and at a perturbation of ten to the minus sixteen it has already moved by a hundredth.10⁻¹⁶10⁻¹³10⁻¹⁰10⁻⁷10⁻⁴10⁻¹10⁻¹⁶10⁻¹³10⁻¹⁰10⁻⁷10⁻⁴10⁻¹size of the perturbation ‖δA‖how far the eigenvalues moveJordan block, ε^(1/10)symmetric, ≤ ‖δA‖rounding error alone moves it to 10⁻²six seeds per symmetric point; Jordan is closed formsymmetry beats precision
Fig. 21 The poles this iteration mirrors, and how well they can be computed.
The real Schur form with 2 conjugate pairs: 2 blocks that cannot be splitA square matrix drawn as a grid. Everything below the diagonal is zero except for a small number of two-by-two boxes on the diagonal, which are highlighted.3000000120000-21000000-0.5-1.500001.5-0.5000000-2T = ZᵀAZthe highlighted boxes each hold one conjugate pair, and no real rotation removes themthe form, and that it is one‖A − ZTZᵀ‖/‖A‖1.8·10⁻¹⁵‖ZᵀZ − I‖2.5·10⁻¹⁵worst eigenvalue error2.7·10⁻¹⁵surviving subdiagonal26×6, spectrum chosen before the matrix was builtquasi-triangular is as far as the reals go
Fig. 22 The factorisation each step ends in.
The spectrum in the plane, with the pair at 1 ± 0.10iA complex plane with the real axis marked. Open circles show the eigenvalues the matrix was built from and filled dots show the ones the algorithm returned; two of them sit symmetrically above and below the real axis.-5-3-1135-202real partimaginary partbuilt incomputedthe real line — where a real shift lives‖A − ZTZᵀ‖/‖A‖2.6·10⁻¹⁵‖ZᵀZ − I‖4.3·10⁻¹⁵worst eigenvalue error7.1·10⁻¹⁵departure from normality10⁻¹⁸5×5 real matrix, 1 conjugate pairthe answer is not on the axis
Fig. 23 A complex pair, which is the bookkeeping this implementation declines.
Why a Gramian can be truncated at all: a rational approximation problemλₖ₊₁(P)/λ₁(P) for the controllability Gramian of a 30-state model, against Z_k², where Z_k is the smallest a degree-(k,k) rational function with poles on one side can be made on the other. The Gramian's spectrum falls from 1 to 2.48·10⁻⁸ in 10 steps, and the bound falls with it. Nothing about the model enters the bound except the two ends of the spectrum of −A, 9.86 and 3834, whose ratio is 388.8 — so the decay that makes model reduction possible is predictable from two numbers before the Gramian exists. That is the fact this whole field rests on and it is a fact about rational approximation.1234567891010⁻¹⁹10⁻¹⁶10⁻¹³10⁻¹⁰10⁻⁷10⁻⁴10⁻¹kλₖ₊₁ ÷ λ₁, and the boundZ_k²the Gramianpredicted from two numbersstates30κ of the spectrum389λ11 ÷ λ₁2.5·10⁻⁸the bound there5.2·10⁻⁴the cliff everything rests onand the reason for it
Fig. 24 The decay the bounded method depends on.
The ADI error is the rational function, not merely bounded by it‖P − ZZᵀ‖/‖P‖ after k steps of low-rank ADI on a 30-state model, against max|r|² for the same shifts, with P taken from its closed form rather than from another solve. The two curves are parallel: their ratio is 0.756 at k = 2 and 0.746 at k = 10, a spread of 1.0340 while the error itself falls from 0.289 to 3.87·10⁻⁴. A bound that is a constant factor from its quantity over four orders is an identity with a projection in front of it — the constant is how much of P lies where |r| is largest, which depends on the system and not on k.234567891010⁻⁴10⁻²1ADI steps krelative error, and max|r|²max|r|²the measured errora bound that is an identitysteps drawn9ratio, worst0.77spread of the ratio1error at k = 103.9·10⁻⁴its residual1.1·10⁻⁴four orders of errorand one constant
Fig. 25 And the rational function underneath it.
Multiplications in a hierarchical solve and in a dense factorisation, and where they crossBoth counted rather than estimated: the recursion carries a counter and reports what it actually did. The dense factorisation is n³/3 and rises at exactly three per doubling. The hierarchical solve rises at 2.18, 1.93, 1.78 — falling, because the cost is n log²n and its exponent is on its way to one. The two cross between n = 128 and n = 256: below it the format is the more expensive way to solve the system, at 1.97 times the dense count, and at n = 512 it is 4.4 times cheaper. Every point returns an answer at a backward error of about 1.1·10⁻¹², so the comparison is between two ways of getting the same thing.567891010⁴10⁵10⁶10⁷10⁸10⁹log₂ nmultiplicationsdense factorisation, n³⁄3the recursion, countedwhere the format starts payingratio at n = 642ratio at n = 5120.23exponent, first doubling2.2exponent, last doubling1.8backward error1.1·10⁻¹²cheaper is a sizenot a property
Fig. 26 The operation both methods are counted in.
What 12 members of a sequence cost, by what changes between themEvery bar is 12 solves of an 120×120 system, costed in multiplications with a dense Cholesky at n³/3 and a solve at 4n². When nothing changes the answer is reused and the cost is one factorisation. When only the right-hand side changes, one factorisation serves every member — 16.5 per cent of the independent cost, with every solve still at a relative residual of 1.54·10⁻¹³. When the matrix drifts, the factorisation is reusable for a while and the while has to be measured: 4 factorisations for 12 members. When everything changes, nothing carries.nothing8.3%the right-hand side16.5%the matrix, slowly85.9%everything100.0%what can be reused: the answerwhat can be reused: the factorisationwhat can be reused: the factorisation, for a whilewhat can be reused: nothingshare of the cost of a sequence that shares nothingwhat 12 members cost in factorisationssame: factorisations1rhs: factorisations1drift: factorisations4independent: factorisations12what changes between the membersdecides what may be carried
Fig. 27 Paying once and using many times, which is what a reduced model is for.
The cost of a drifting sequence of nonlinear solves, against how often the Jacobian is refactorisedTwenty members, each warm-started from the last, each solved by a chord iteration on a factorisation that may be several members old. Refactorising at every member costs 19.01 MFlop; refactorising every 3 costs 14.50. Past a period of 6 the chord iteration stops converging altogether, which is drawn as an open circle on the ceiling rather than omitted. The filled square is the rule that refactorises when the observed contraction ratio exceeds 0.2: 8 factorisations, 12.33 MFlop, and it was never told the drift rate.024681012141618202210⁶10⁷10⁸members served by one factorisationmultiplications for the whole sequencedoes not convergethe contraction ruledrift 0.032 a memberevery member1.9·10⁷every 3 members1.5·10⁷contraction rule1.2·10⁷its factorisations8cliff at a period of6a factorisation has a shelf lifeand the cliff is past the optimum
Fig. 28 When a computed object is worth recomputing.
Conjugate gradients at κ = 102, against the bound κ permitsA semi-logarithmic plot of the relative A-norm error against iteration count. The measured curve falls below a smooth dashed curve showing the classical condition-number bound.0408012016020024010⁻¹⁶10⁻¹³10⁻¹⁰10⁻⁷10⁻⁴10⁻¹iteration‖e‖_A / ‖e₀‖_Ameasuredκ bound58 steps40×40, spectrum spread evenly in logbound permits 142
Fig. 29 An iteration whose count is known in advance, unlike this one.
Adding 0.1 to 256, a thousand times, at 8 significand bitsThree lines against the number of additions: the exact total rising steadily, a staircase following it, and a flat line at the starting value.02505007501000250275300325350375additionsrunning totalround to nearest: nothing arrivesexactstochasticnearesta thousand additionshalf an ulp at 2561moves, round to nearest0moves, stochastic46relative error, nearest0.28relative error, stochastic0.0228 significand bits, unbounded exponenta flat line is not a small error
Fig. 30 An iteration that stops moving without arriving.
IRKA's interpolation points walking to the condition that defines themEach curve is one of 4 interpolation points across 13 iterations of σ ← −λ(Aᵣ). They start logarithmically spread over the frequency range, which is a guess, and settle at 9.861, 40.15, 102.1, 302.8. What is checked at the end is not that they stopped moving but that where they stopped is the first-order condition: the mirrored poles of the model they produced agree with them to 2.81·10⁻¹². A fixed-point iteration that stops moving without satisfying its own condition has converged to nothing, and this one has no convergence proof to lean on — so the condition is checked rather than the movement.01234567891011121310⁻¹110¹10²10³iterationinterpolation point σa fixed point that is a conditionorder4iterations13σ against −λ(Aᵣ)2.8·10⁻¹²H₂ error4.3·10⁻⁵it stopped movingand the condition holds there
Fig. 31 The hero again, beside the models it is judged against.
Each method wins the norm it was designed for, and by less than anyone guessesRatios of the loser's error to the winner's, on 4 systems. In H₂ the interpolatory model wins every time, by 0.8%, 1.3%, 0.4%, 1.9% — IRKA satisfies the first-order conditions for that norm and balanced truncation does not. In H∞ balanced truncation wins every time, by 16%, 23%, 12%, 25%, which is the norm its bound is stated in. Both orderings hold on every system, so this is not a coin flip; and the H₂ margin is under two per cent, so a method costing r solves lands within two per cent of one costing two Lyapunov solves in the norm the cheap one optimises. The choice in this field is about cost.loser's error ÷ winner's error24 states, degree 8, r = 4 · H₂1.007924 states, degree 8, r = 4 · H∞1.155824 states, degree 8, r = 3 · H₂1.012624 states, degree 8, r = 3 · H∞1.232630 states, degree 10, r = 5 · H₂1.004230 states, degree 10, r = 5 · H∞1.123424 states, degree 12, r = 4 · H₂1.019424 states, degree 12, r = 4 · H∞1.2480IRKA wins the average, balanced truncation the maximum, on every systemH₂ to the interpolationH∞ to the bound
Fig. 32 And the contest, which is closer than the cost difference suggests.

What links here

Computed from the collection, not written here: the essays that point at this one.

Shares its objects with

Essays that name at least two of the same things, and that neither author linked.

Named objects

A flat tag is an object no other essay names yet.

Balanced truncationFixed point iterationFlop countH2 normHermite interpolationLyapunov equationMoment matchingOptimality conditionRational krylovTransfer function