**Butterworth filter for Max/MSP (abstraction files)**

The butterworth filter is a type of network synthesis filter with a frequency response as flat as possible in the passband and rolls off towards zero in the stopband. The butterworth filter rolls off more slowly and without ripple around the cutoff frequency than the other filters such as the Chebyshev filter or the Elliptic filter as well as it has a better pulse response than the Chebyshev filter and a better rate of attenuation than Bessel filter. A first-order filter's response rolls off at −6 dB per octave (−20 dB per decade). A second-order filter decreases at −12 dB per octave, a third-order at −18 dB and so on.

The bilinear transform applied to a second-order filter by using biquad~ object (it implements a two pole, two zero filter) produces a recursive digital filter using the following equation:

y(n)= a0 x(n) + a1 x(n-1) + a2 x(n-2) - b1 y(n-1) - b2 y(n-2)

• Since these filters are just Max-abstraction files, the recommended procedure consists in copying the Butterworth folder to your "Max library folder". The folder consist of four abstractions:

pe.butterbp~ (butterworth band-pass filter)

pe.butterbr~ (butterworth band-reject filter)

pe.butterhp~ (butterworth high-pass filter)

pe.butterlp~ (butterworth low-pass filter)

The bilinear transform applied to a second-order filter by using biquad~ object (it implements a two pole, two zero filter) produces a recursive digital filter using the following equation:

y(n)= a0 x(n) + a1 x(n-1) + a2 x(n-2) - b1 y(n-1) - b2 y(n-2)

• Since these filters are just Max-abstraction files, the recommended procedure consists in copying the Butterworth folder to your "Max library folder". The folder consist of four abstractions:

pe.butterbp~ (butterworth band-pass filter)

pe.butterbr~ (butterworth band-reject filter)

pe.butterhp~ (butterworth high-pass filter)

pe.butterlp~ (butterworth low-pass filter)

*• These filters are adapted from © Dodge and Jerse, 1997.*