# scipy.signal.iirdesign¶

scipy.signal.iirdesign(wp, ws, gpass, gstop, analog=False, ftype='ellip', output='ba')[source]

Complete IIR digital and analog filter design.

Given passband and stopband frequencies and gains, construct an analog or digital IIR filter of minimum order for a given basic type. Return the output in numerator, denominator (‘ba’) or pole-zero (‘zpk’) form.

Parameters : wp, ws : float Passband and stopband edge frequencies. For digital filters, these are normalized from 0 to 1, where 1 is the Nyquist frequency, pi radians/sample. (wp and ws are thus in half-cycles / sample.) For example: Lowpass: wp = 0.2, ws = 0.3 Highpass: wp = 0.3, ws = 0.2 Bandpass: wp = [0.2, 0.5], ws = [0.1, 0.6] Bandstop: wp = [0.1, 0.6], ws = [0.2, 0.5] For analog filters, wp and ws are angular frequencies (e.g. rad/s). gpass : float The maximum loss in the passband (dB). gstop : float The minimum attenuation in the stopband (dB). analog : bool, optional When True, return an analog filter, otherwise a digital filter is returned. ftype : str, optional The type of IIR filter to design: Butterworth : ‘butter’ Chebyshev I : ‘cheby1’ Chebyshev II : ‘cheby2’ Cauer/elliptic: ‘ellip’ Bessel/Thomson: ‘bessel’ output : {‘ba’, ‘zpk’}, optional Type of output: numerator/denominator (‘ba’) or pole-zero (‘zpk’). Default is ‘ba’. 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'.

#### Previous topic

scipy.signal.freqz

#### Next topic

scipy.signal.iirfilter