Next  |  Prev  |  Up  |  Top  |  JOS Index  |  JOS Pubs  |  JOS Home  |  Search

MATLAB FIR Filter Design Functions, Continued

fir1: Window-based finite impulse response filter design.

b = fir1(n,Wn) returns row vector b containing the n+1 coefficients of an order n lowpass FIR filter.

Algorithms: The window method of FIR filter design [1].






fir2: Frequency sampling-based finite impulse response filter design.

b = fir2(n,f,m) returns row vector b containing the n+1 coefficients of an order n FIR filter. The frequency-magnitude characteristics of this filter match those given by vectors f(frequency) and m(corresponding magnitude). References:[2, 3]






firls: Least square linear-phase FIR filter design.

b = firls(n,f,a) returns row vector b containing the n+1 coefficients of the order n FIR filter whose frequency-amplitude characteristics approximately match those given by vectors f and a. The output filter coefficients, or ``taps,'' in b obey the symmetry relation. References: [4, 5]






fircls: Constrained least square, FIR multiband filter design.

b = fircls(n,f,amp,up,lo) generates a length n+1 linear phase FIR filter b. The frequency-magnitude characteristics of this filter match those given by vectors f(frequency) and amp(amplitude).

Algorithms: uses an iterative least-squares algorithm to obtain an equiripple response. The algorithm is a multiple exchange algorithm that uses Lagrange multipliers and Kuhn-Tucker conditions on each iteration[6].






fircls1: Constrained least square, lowpass and highpass, linear phase, FIR filter design.

b = fircls1(n,wo,dp,ds) generates a lowpass FIR filter b, where n+1 is the filter length, wo is the normalized cutoff frequency in the range between 0 and 1 (where 1 corresponds to the Nyquist frequency), dp is the maximum passband deviation from 1 (passband ripple), and ds is the maximum stopband deviation from 0 (stopband ripple).

Algorithms: uses an iterative least-squares algorithm to obtain an equiripple response. The algorithm is a multiple exchange algorithm that uses Lagrange multipliers and Kuhn-Tucker conditions on each iteration[6].






firpm: Parks-McClellan optimal FIR filter design.

b = firpm(n,f,a) returns row vector b containing the n+1 coefficients of the order n FIR filter whose frequency-amplitude characteristics match those given by vectors f and a. The filters are optimal in the sense that the maximum error between the desired frequency response and the actual frequency response is minimized. Filters designed this way exhibit an equiripple behavior in their frequency responses. Reference: [7]






cfirpm: Complex and nonlinear-phase equiripple FIR filter design.

b = cfirpm(n,f,@fresp) returns a length n+1 FIR filter with the best approximation to the desired frequency response as returned by function fresp, f is a vector of frequency band edge pairs.

Algorithms: An extended version of the Remez exchange method is implemented for the complex case[8].


Next  |  Prev  |  Up  |  Top  |  JOS Index  |  JOS Pubs  |  JOS Home  |  Search

[Comment on this page via email]

``The Window Method for FIR Digital Filter Design}'', by Julius O. Smith III, (From Lecture Overheads, Music 421).
Copyright © 2020-06-27 by Julius O. Smith III
Center for Computer Research in Music and Acoustics (CCRMA),   Stanford University
CCRMA  [Automatic-links disclaimer]