Why does the LPC function return complex values in the Signal Processing Toolbox 5.x (R12.x)?

For example, running the following code results in a real answer a in MATLAB 5.3 (R11.1) but in a complex answer in MATLAB 6.x (R12.x).
randn('state',0);
noise = randn(50000,1); % Normalized white Gaussian noise
x = filter(1,[1 1/2 1/3 1/4],noise);
x = x(45904:50000);
a = lpc(x,3);

 Accepted Answer

This enhancement has been made for Release 14 (R14). For previous product releases, please read below for any possible workarounds:
This is due to the FFT and the IFFT functions used within LPC for computing the biased autocorrelation estimate. This can safely be ignored. You can use the REAL function to turn your vector into a real signal.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!