Skip to main content

Lab · Biquad design

Computed

Notch filters, corner by corner

Removes one frequency and leaves the rest of the spectrum untouched. Every ISO third-octave centre from 20 Hz to 20 kHz, solved at 48 kHz and seven other sample rates.

Every corner, with what changes across the sweep

The pole radius column is the one worth reading down. It rises toward 1 as the corner drops relative to the sample rate, and it is what decides the last column: the 3 corners at and below 40 Hz do not survive 16-bit fixed point at 48 kHz.

CornerAt f₀Pole radius @ 48 kHz16-bit fixed pointb0 · b1 · b2 · a1 · a2 @ 48 kHz
20 Hz−∞ dB0.998692diverges0.998692716 · -1.997378587 · 0.998692716 · -1.997378587 · 0.997385432
25 Hz−∞ dB0.998365diverges0.998366430 · -1.996722168 · 0.998366430 · -1.996722168 · 0.996732859
31.5 Hz−∞ dB0.997940holds · ≤ 30.330 dB0.997942577 · -1.995868188 · 0.997942577 · -1.995868188 · 0.995885155
40 Hz−∞ dB0.997385diverges0.997388854 · -1.994750364 · 0.997388854 · -1.994750364 · 0.994777708
50 Hz−∞ dB0.996733holds · ≤ 36.018 dB0.996738205 · -1.993433713 · 0.996738205 · -1.993433713 · 0.993476410
60 Hz−∞ dB0.996081holds · ≤ 0.933 dB0.996088410 · -1.992115377 · 0.996088410 · -1.992115377 · 0.992176820
80 Hz−∞ dB0.994778holds · ≤ 14.753 dB0.994791380 · -1.989473669 · 0.994791380 · -1.989473669 · 0.989582759
100 Hz−∞ dB0.993476holds · ≤ 23.861 dB0.993497758 · -1.986825285 · 0.993497758 · -1.986825285 · 0.986995516
125 Hz−∞ dB0.991852holds · ≤ 15.647 dB0.991885518 · -1.983505484 · 0.991885518 · -1.983505484 · 0.983771035
160 Hz−∞ dB0.989583holds · ≤ 2.165 dB0.989637300 · -1.978840513 · 0.989637300 · -1.978840513 · 0.979274600
200 Hz−∞ dB0.986996holds · ≤ 14.146 dB0.987080621 · -1.973484746 · 0.987080621 · -1.973484746 · 0.974161242
250 Hz−∞ dB0.983772holds · ≤ 7.850 dB0.983903785 · -1.966753982 · 0.983903785 · -1.966753982 · 0.967807571
315 Hz−∞ dB0.979597holds · ≤ 1.709 dB0.979805369 · -1.957945114 · 0.979805369 · -1.957945114 · 0.959610737
400 Hz−∞ dB0.974166holds · ≤ 34.830 dB0.974499323 · -1.946327611 · 0.974499323 · -1.946327611 · 0.948998646
500 Hz−∞ dB0.967816holds · ≤ 0.143 dB0.968333964 · -1.932521374 · 0.968333964 · -1.932521374 · 0.936667929
630 Hz−∞ dB0.959628holds · ≤ 0.243 dB0.960442557 · -1.914357062 · 0.960442557 · -1.914357062 · 0.920885114
800 Hz−∞ dB0.949033holds · ≤ 0.969 dB0.950331647 · -1.890251261 · 0.950331647 · -1.890251261 · 0.900663293
1 kHz−∞ dB0.936734holds · ≤ 0.199 dB0.938735232 · -1.861408445 · 0.938735232 · -1.861408445 · 0.877470465
1.25 kHz−∞ dB0.921614holds · ≤ 0.362 dB0.924686387 · -1.824671315 · 0.924686387 · -1.824671315 · 0.849372773
1.6 kHz−∞ dB0.900925holds · ≤ 0.781 dB0.905833330 · -1.772077397 · 0.905833330 · -1.772077397 · 0.811666661
2 kHz−∞ dB0.877973holds · ≤ 0.167 dB0.885418424 · -1.710497046 · 0.885418424 · -1.710497046 · 0.770836849
2.5 kHz−∞ dB0.850335holds · ≤ 0.225 dB0.861534419 · -1.631625797 · 0.861534419 · -1.631625797 · 0.723068837
3.15 kHz−∞ dB0.816178holds · ≤ 0.017 dB0.833073403 · -1.526503638 · 0.833073403 · -1.526503638 · 0.666146806
4 kHz−∞ dB0.774597holds · ≤ 0.001 dB0.800000000 · -1.385640646 · 0.800000000 · -1.385640646 · 0.600000000
5 kHz−∞ dB0.730270holds · ≤ 0.099 dB0.766647336 · -1.216444450 · 0.766647336 · -1.216444450 · 0.533294672
6.3 kHz−∞ dB0.680357holds · ≤ 0.000 dB0.731442613 · -0.993007581 · 0.731442613 · -0.993007581 · 0.462885225
8 kHz−∞ dB0.629016holds · ≤ 0.000 dB0.697830521 · -0.697830521 · 0.697830521 · -0.697830521 · 0.395661041
10 kHz−∞ dB0.590467holds · ≤ 0.011 dB0.674325697 · -0.349056666 · 0.674325697 · -0.349056666 · 0.348651394
12.5 kHz−∞ dB0.578174holds · ≤ 0.002 dB0.667142801 · 0.087266454 · 0.667142801 · 0.087266454 · 0.334285603
16 kHz−∞ dB0.629016holds · ≤ 0.000 dB0.697830521 · 0.697830521 · 0.697830521 · 0.697830521 · 0.395661041
20 kHz−∞ dB0.774597holds · ≤ 0.001 dB0.800000000 · 1.385640646 · 0.800000000 · 1.385640646 · 0.600000000

The other seven types

Method. RBJ Audio EQ Cookbook coefficients at Q = 1.0000, normalised to a₀ = 1. Pole radii are the roots of the denominator quadratic, not √|a₂| — the two disagree exactly when coefficient rounding pushes the poles onto the real axis, which is the case this table's last column is about. Every figure is solved; nothing is fetched.