Quasi-linear phase IIR filter from halfband filter specification
hd = design(d,'iirlinphase')
hd = design(...,'filterstructure',structure)
hd = design(...,'filterstructure',structure) returns a filter with the structure specified by structure. By default, the filter structure is df2sos (direct-form II with second-order sections). You can substitute one of the following strings for structure to specify the structure of hd.
Direct-form I IIR filter with second-order sections
Direct-form II IIR filter with second-order sections
Transposed direct-form I IIR filter with second-order sections
Transposed direct-form II IIR filter with second-order sections
Design a quasi-linear phase, minimum-order halfband IIR filter with transition width of 0.36 and stopband attenuation of at least 80 dB.
tw = 0.36; ast = 80; d = fdesign.halfband('tw,ast',tw,ast); % Transition width, % stopband attenuation. hd = design(d,'iirlinphase'); fvtool(hd)
Notice the characteristic halfband nature of the ripple in the stopband. If you measure the resulting filter, you see it meets the specifications.