scipy.signal.butter

scipy.signal.butter(N, Wn, btype='low', analog=False, output='ba')[source]

Butterworth digital and analog filter design.

Design an Nth order digital or analog Butterworth filter and return the filter coefficients in (B,A) or (Z,P,K) form.

Parameters :

N : int

The order of the filter.

Wn : array_like

A scalar or length-2 sequence giving the critical frequencies. For digital filters, Wn is normalized from 0 to 1, where 1 is the Nyquist frequency, pi radians / sample. (Wn is thus in half-cycles / sample.) For analog filters, Wn is in radians / second.

btype : {‘lowpass’, ‘highpass’, ‘bandpass’, ‘bandstop’}, optional

The type of filter. Default is ‘lowpass’.

analog : bool, optional

When True, return an analog filter, otherwise a digital filter is returned.

output : {‘ba’, ‘zpk’}, optional

Type of output: numerator/denominator (‘ba’) or pole-zero (‘zpk’). Default is ‘ba’.

Returns :

b, a : ndarray, ndarray

Numerator (b) and denominator (a) polynomials of the IIR filter. Only returned if output='ba'.

z, p, k : ndarray, ndarray, float

Zeros, poles, and system gain of the IIR filter transfer function. Only returned if output='zpk'.

See also

buttord

Previous topic

scipy.signal.invres

Next topic

scipy.signal.buttord