A 4 kHz Butterworth, mapped to 48 kHz two ways
Drawn above at its default parameters, which is almost never how an essay calls it. A placement states the numbers that essay is arguing about, so the figure a reader meets is about that argument rather than about the generator — 98% of the placements on this site pass one, and the phase that raised that number from 12% found eight captions describing a figure the page was not showing.
At those defaults the edge it states is -15.2% out at a quarter of the rate — the right-hand slot
of the caption strip, which on this site is never used for anything else, and which is read
back out of the drawing above rather than out of the code that wrote it.
It belongs to Where a signal becomes a number, which is to say a change to it is a
change to lib/figures/digital.js.
It takes a slider on design corner (kHz) with 7 settings,
and every one of them has passed the same assertions as the frame above — a figure whose
circuit stops doing what its caption says at any setting stops the build.
Called by 4 essays
which is the blast radius of changing it
The corner that moved
The bilinear transform has to fit an infinite frequency axis onto a circle, so something must be compressed, and what is compressed is everything near half the sample rate. A 4 kHz Butterworth mapped to a 48 kHz clock is 3.432 dB down at its own corner instead of 3.010, and at a quarter of the sample rate the axis is 15.2% out. Pre-warping puts one frequency back exactly and no other — it is a choice of where to be right, not a correction.
The period a delay lengthens
Feed a comparator's output back through a resistor to the capacitor on its own input and the two thresholds stop defending a decision and start setting a period. The closed form is two RC times the log of one plus beta over one minus beta, and a marched circuit recovers it as the step shortens. A comparator that responds fifty nanoseconds late does not add fifty nanoseconds to each half cycle: it adds 4/(1+beta) times the delay to the period, 2.65 here against the 2 that counting it twice gives, because during the delay the capacitor keeps going the way it was going.
The same filter, rounded twice
The filters field measured two realisations of one analogue response and found the passband error growing as the 0.99 power of a component tolerance in a cascade and the 2.00 power in a ladder. The digital version of that argument comes out harder. At eighth order and sixteen bits, a cascade of biquads moves its poles by 6.6 × 10⁻⁴ and stays at a radius of 0.9748; the same filter written as one polynomial moves its poles to a radius of 1.4536, which is not an inaccurate filter but an unstable one.
The word length that is not a threshold
The essay below this one measured an eighth-order direct form at five word lengths, found its poles outside the unit circle at every one, and left behind a phrase — the coefficient resolution required. Sixty word lengths later there is no such resolution. That filter is stable at 28 bits, unstable at 29 and stable again at 30, and the smallest word length a search would return is not one anybody can use. What survives is a law with a slope: 4.53 bits of coefficient for every pole added, rising to 47 bits at twelfth order, and none at all for a cascade.