Skip to main content

Lab · Biquad design

Computed

Low-pass filters, corner by corner

Passes everything below the corner and rolls off above it at 12 dB/octave. 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−3.01 dB0.998151diverges0.000001710 · 0.000003421 · 0.000001710 · -1.996297602 · 0.996304443
25 Hz−3.01 dB0.997689diverges0.000002671 · 0.000005342 · 0.000002671 · -1.995372005 · 0.995382690
31.5 Hz−3.01 dB0.997089holds · ≤ 0.000 dB0.000004238 · 0.000008476 · 0.000004238 · -1.994168733 · 0.994185685
40 Hz−3.01 dB0.996304diverges0.000006829 · 0.000013657 · 0.000006829 · -1.992595229 · 0.992622543
50 Hz−3.01 dB0.995383holds · ≤ 0.000 dB0.000010660 · 0.000021320 · 0.000010660 · -1.990744060 · 0.990786699
60 Hz−3.01 dB0.994462holds · ≤ 0.054 dB0.000015336 · 0.000030672 · 0.000015336 · -1.988892906 · 0.988954250
80 Hz−3.01 dB0.992623holds · ≤ 6.007 dB0.000027214 · 0.000054428 · 0.000027214 · -1.985190658 · 0.985299513
100 Hz−3.01 dB0.990787holds · ≤ 3.474 dB0.000042443 · 0.000084887 · 0.000042443 · -1.981488509 · 0.981658283
125 Hz−3.01 dB0.988497holds · ≤ 0.846 dB0.000066166 · 0.000132331 · 0.000066166 · -1.976861000 · 0.977125662
160 Hz−3.01 dB0.985300holds · ≤ 1.159 dB0.000108058 · 0.000216116 · 0.000108058 · -1.970382898 · 0.970815131
200 Hz−3.01 dB0.981658holds · ≤ 0.756 dB0.000168224 · 0.000336447 · 0.000168224 · -1.962980089 · 0.963652984
250 Hz−3.01 dB0.977126holds · ≤ 0.091 dB0.000261653 · 0.000523305 · 0.000261653 · -1.953727949 · 0.954774560
315 Hz−3.01 dB0.971265holds · ≤ 0.316 dB0.000412951 · 0.000825903 · 0.000412951 · -1.941702982 · 0.943354787
400 Hz−3.01 dB0.963653holds · ≤ 0.169 dB0.000660779 · 0.001321558 · 0.000660779 · -1.925983970 · 0.928627086
500 Hz−3.01 dB0.954775holds · ≤ 0.129 dB0.001023218 · 0.002046435 · 0.001023218 · -1.907501626 · 0.911594497
630 Hz−3.01 dB0.943355holds · ≤ 0.024 dB0.001605703 · 0.003211406 · 0.001605703 · -1.883495555 · 0.889918368
800 Hz−3.01 dB0.928627holds · ≤ 0.052 dB0.002550535 · 0.005101070 · 0.002550535 · -1.852146485 · 0.862348626
1 kHz−3.01 dB0.911595holds · ≤ 0.027 dB0.003916127 · 0.007832253 · 0.003916127 · -1.815341083 · 0.831005589
1.25 kHz−3.01 dB0.890744holds · ≤ 0.013 dB0.005988546 · 0.011977093 · 0.005988546 · -1.769471038 · 0.793425223
1.6 kHz−3.01 dB0.862354holds · ≤ 0.005 dB0.009525762 · 0.019051525 · 0.009525762 · -1.705552146 · 0.743655195
2 kHz−3.01 dB0.831023holds · ≤ 0.002 dB0.014401440 · 0.028802881 · 0.014401440 · -1.632993162 · 0.690598923
2.5 kHz−3.01 dB0.793476holds · ≤ 0.006 dB0.021620718 · 0.043241437 · 0.021620718 · -1.543121131 · 0.629604005
3.15 kHz−3.01 dB0.747258holds · ≤ 0.001 dB0.032653053 · 0.065306107 · 0.032653053 · -1.427782127 · 0.558394340
4 kHz−3.01 dB0.691080holds · ≤ 0.002 dB0.049489956 · 0.098979913 · 0.049489956 · -1.279632425 · 0.477592250
5 kHz−3.01 dB0.630993holds · ≤ 0.015 dB0.072230875 · 0.144461751 · 0.072230875 · -1.109228793 · 0.398152294
6.3 kHz−3.01 dB0.562533holds · ≤ 0.001 dB0.105710197 · 0.211420394 · 0.105710197 · -0.893603075 · 0.316443862
8 kHz−3.01 dB0.490314holds · ≤ 0.011 dB0.155051026 · 0.310102051 · 0.155051026 · -0.620204103 · 0.240408206
10 kHz−3.01 dB0.433988holds · ≤ 0.014 dB0.220194700 · 0.440389401 · 0.220194700 · -0.307566360 · 0.188345161
12.5 kHz−3.01 dB0.415467holds · ≤ 0.021 dB0.312326343 · 0.624652685 · 0.312326343 · 0.076692548 · 0.172612822
16 kHz−3.01 dB0.490314holds · ≤ 0.000 dB0.465153077 · 0.930306154 · 0.465153077 · 0.620204103 · 0.240408206
20 kHz−3.01 dB0.691080holds · ≤ 0.078 dB0.689306169 · 1.378612338 · 0.689306169 · 1.279632425 · 0.477592250

The other seven types

Method. RBJ Audio EQ Cookbook coefficients at Q = 0.7071, 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.