Main Content


Determine if digital filter has finite impulse response



flag = isfir(d) returns true if a digital filter, d, has a finite impulse response.


collapse all

Use designfilt to design FIR and IIR versions of a highpass filter. Specify a normalized stopband frequency of 0.3 and a normalized passband frequency of 0.6. Verify that each filter is of the correct class. Display the frequency responses of the filters.

fir = designfilt('highpassfir','StopbandFrequency',0.3,'PassbandFrequency',0.6);
iir = designfilt('highpassiir','StopbandFrequency',0.3,'PassbandFrequency',0.6);
isfirFIR = isfir(fir)
isfirFIR = logical

isiirFIR = isfir(iir)
isiirFIR = logical

fvt = fvtool(fir,iir);

Figure Figure 1: Magnitude Response (dB) contains an axes object. The axes object with title Magnitude Response (dB), xlabel Normalized Frequency ( times pi blank r a d / s a m p l e ), ylabel Magnitude (dB) contains 2 objects of type line. These objects represent FIR, IIR.

Input Arguments

collapse all

Digital filter, specified as a digitalFilter object. Use designfilt to generate a digital filter based on frequency-response specifications.

Example: d = designfilt('lowpassiir','FilterOrder',3,'HalfPowerFrequency',0.5) specifies a third-order Butterworth filter with normalized 3 dB frequency 0.5π rad/sample.

Output Arguments

collapse all

Filter class identification, returned as a logical scalar.

Version History

Introduced in R2014a