This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.


Recursive digital filter design


[b,a] = yulewalk(n,f,m)


yulewalk designs recursive IIR digital filters using a least-squares fit to a specified frequency response.

[b,a] = yulewalk(n,f,m) returns row vectors, b and a, containing the n+1 coefficients of the order n IIR filter whose frequency-magnitude characteristics approximately match those given in vectors f and m:

  • f is a vector of frequency points, specified in the range between 0 and 1, where 1 corresponds to half the sample frequency (the Nyquist frequency). The first point of f must be 0 and the last point 1. All intermediate points must be in increasing order. Duplicate frequency points are allowed, corresponding to steps in the frequency response.

  • m is a vector containing the desired magnitude response at the points specified in f.

  • f and m must be the same length.

  • plot(f,m) displays the filter shape.

The output filter coefficients are ordered in descending powers of z.


When specifying the frequency response, avoid excessively sharp transitions from passband to stopband. You may need to experiment with the slope of the transition region to get the best filter design.


collapse all

Design an 8th-order lowpass filter with normalized cutoff frequency 0.6. Plot its frequency response and overlay the response of the corresponding ideal filter.

f = [0 0.6 0.6 1];
m = [1 1 0 0];
[b,a] = yulewalk(8,f,m);
[h,w] = freqz(b,a,128);

xlabel 'Radian frequency (\omega/\pi)', ylabel Magnitude
legend('Yule-Walker','Ideal'), legend boxoff


yulewalk performs a least-squares fit in the time domain. It computes the denominator coefficients using modified Yule-Walker equations, with correlation coefficients computed by inverse Fourier transformation of the specified frequency response. To compute the numerator, yulewalk takes the following steps:

  1. Computes a numerator polynomial corresponding to an additive decomposition of the power frequency response.

  2. Evaluates the complete frequency response corresponding to the numerator and denominator polynomials.

  3. Uses a spectral factorization technique to obtain the impulse response of the filter.

  4. Obtains the numerator polynomial by a least-squares fit to this impulse response.


[1] Friedlander, B., and Boaz Porat. "The Modified Yule-Walker Method of ARMA Spectral Estimation." IEEE® Transactions on Aerospace Electronic Systems. Vol. AES-20, Number 2, 1984, pp. 158–173.

Extended Capabilities

Introduced before R2006a

Was this topic helpful?