FAILURE MAP
← Case archive

FA-91375 / Digital signal filters / Member archive

Biquad stores the new output in y[n-2] · case 05

A pure second-order feedback filter never feels its a2 term correctly and the impulse response rings at the wrong rate.

Member previewVariant 5 · 3 implementations · 7 checks per implementation

Case contract

Input [[b0, b1, b2, a0, a1, a2], samples]; coefficients are rational strings, normalized by a0 ("a0-zero" if a0 == 0). y[n] = b0 x[n] + b1 x[n-1] + b2 x[n-2] - a1 y[n-1] - a2 y[n-2] with zero initial state; return outputs as exact fraction strings.

Why this case matters

The biquad is the workhorse IIR section; sign, state or normalization slips produce unstable or wrong-gain filters.

One recorded failure

Sample boundary fixture

This sample comes from the broken implementation of a controlled reproducer.

Boundary fixtureActualExpectedOutcome
regression: random biquad 11["-3/2", "9/8", "-21/32", "-183/128", "1427/512"]["-3/2", "-1/4", "65/24", "-409/144", "-1243/864"]Failed

MEMBER ARCHIVE

The complete case is available to members.

This record includes three runnable implementations, regression fixtures, execution results, and source hashes.

Member access is invitation-based. Sign in with your invited account to inspect the sources.

Sign in to the archive ↗