How to calculate autocorrelation matrix eigenvalues without actually creating the matrix

5 visualizaciones (últimos 30 días)
Hi, I am working with a large autocorrelation vector (size 1.023e6 ). It is well known that the autocorrelation matrix can be formed easily from the autocorrelation vector i.e for
[Rx(0) Rx(1) Rx(2)]
would form the following matrix
Rxx=[Rx(0) Rx(1) Rx(2);Rx(1) Rx(0) Rx(1);Rx(2) Rx(1) Rx(0)];
In the first row we have all the values contained in the matrix. My goal is to calculate the eigenvalues using eig, but it is impossible to create the matrix due to memory limitations.I would like to know if there is a way to calcute the eigenvalues using the autocorrelation vector as an argument (without actually creating the autocorrelation matrix).
Thanks in advance.

Respuesta aceptada

Matt J
Matt J el 30 de En. de 2014
Editada: Matt J el 30 de En. de 2014
Rxx is Toeplitz. If it is also circulant, then the eigenvalues are just fft(Rx). Circulancy would occur if your signal had some sort of periodicity to it, or if you were using some kind of toroidal edge conditions, x(N+1)=x(1).
  3 comentarios

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Linear Algebra en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by