# Digital filter design and analysis

In digital signal processing, a digital filter is a system that performs mathematical operations on a discrete-time signal to either reduce or enhance certain aspects of that specific signal. For example, a digital filter can be used to attenuate noise, DC bias etc. Furthermore, a digital filter can be used to extract the signal within a certain frequency range, which is one of the most important role frequency selective digital filters. There are three main categories of digital filters: the recursive filters otherwise known as infinite impulse response (IIR) filters, and the nonrecursive filter otherwise known as finite impulse response (FIR) filters.

The MatDeck software contains a variety of different functions for both IIR and FIR filter design and analysis. The overview of these functions is given in a sequel.

## Digital filter design

### IIR filters

 Filter type Lowpass/Highpass Bandpass/Bandstop Butterworth buttlohi() buttband() Chebyshev type I cheby1lohi() cheby1band() Chebyshev type II cheby2lohi() cheby2band() Elliptic filter elliplohi() elipband()

### FIR filters

• windowing design: firbandpass(), firbandstop(), firhighpass(), firlowpass()
• frequency sampling: firfreqsampl()
• optimal design: firopt(), firoptord ()

## Digital filter analysis and implementation

• IIR filters: iirfilter(), initiirfilter(), iirfreqresp(), iirgrpdelay(), iirphasedelay()
• FIR filters: firfilter(), initfirfilter(),firfreqresp()

MatDeck provides several toolkits which enable digital filter designing in a graphical environment, which is very convenient for many users. The list of digital filtering toolkits is given below.

• Filtering Toolkit – IIR Filtering Form
• Filtering Toolkit for FIR design by windowing and frequency sampling – FIR Filtering Form
• Filtering Toolkit for FIR optimal design – FIR Optimal Form