Main Content

La traducción de esta página está obsoleta. Haga clic aquí para ver la última versión en inglés.

corrmtx

Matriz de datos para la estimación de la matriz de autocorrelación

Descripción

H = corrmtx(x,m) devuelve una matriz Toeplitz rectangular (n+m)-by-(m+1) H = H tal que HH es una estimación sesgada de la matriz de autocorrelación para el vector de entrada x. n es la longitud de x, m es el orden del modelo de predicción y H es la traspuesta conjugada de H.

ejemplo

H = corrmtx(x,m,method) calcula la matriz H según el método especificado por method.

[H,r] = corrmtx(___) también devuelve la estimación de la matriz de autocorrelación r (m + 1) por (m + 1), calculada como HH, para cualquiera de las sintaxis anteriores.

Ejemplos

contraer todo

Genere una señal compuesta por tres exponenciales complejas incrustadas en ruido blanco gaussiano. Calcule los datos y las matrices de autocorrelación mediante el método 'modified'.

n = 0:99;
s = exp(i*pi/2*n)+2*exp(i*pi/4*n)+exp(i*pi/3*n)+randn(1,100);
m = 12;
[X,R] = corrmtx(s,m,'modified');

Represente las partes real e imaginaria de la matriz de autocorrelación.

[A,B] = ndgrid(1:m+1);
subplot(2,1,1)
plot3(A,B,real(R))
title('Re(R)')
subplot(2,1,2)
plot3(A,B,imag(R))
title('Im(R)')

Figure contains 2 axes. Axes 1 with title Re(R) contains 13 objects of type line. Axes 2 with title Im(R) contains 13 objects of type line.

Argumentos de entrada

contraer todo

Datos de entrada, especificados como un vector.

Orden del modelo de predicción, especificado como un número entero real positivo.

Método de cálculo de la matriz, especificado como 'autocorrelation', 'prewindowed', 'postwindowed', 'covariance' o 'modified'.

  • 'autocorrelation': (valor predeterminado) H es la matriz rectangular de Toeplitz (n + m)-by-(m + 1) que genera una estimación de la autocorrelación para el vector de datos x de longitud-n, derivada utilizando datos previos a la ventana y posteriores a la ventana, basada en un modelo de predicción de orden m. La matriz puede utilizarse para realizar la estimación de parámetros autorregresivos mediante el método de Yule-Walker. Para obtener más detalles, consulte aryule.

  • 'prewindowed': H es la matriz rectangular de Toeplitz n-by-(m + 1) que genera una estimación de la autocorrelación para el vector de datos x de longitud n, derivada utilizando datos previstos, basada en un modelo de predicción m de cuarto orden.

  • 'postwindowed': H es la matriz rectangular de Toeplitz n-by-(m + 1) que genera una estimación de autocorrelación para el vector de datos x de longitud n, derivada usando datos posteriores a la ventana, basada en un modelo de predicción m de cuarto orden.

  • 'covariance': H es la matriz rectangular de Toeplitz (nm)-by-(m + 1) que genera una estimación de autocorrelación para el vector de datos x de longitud n, derivada utilizando datos sin ventana, basándose en un modelo de predicción de orden m. La matriz puede utilizarse para realizar la estimación de los parámetros autorregresivos mediante el método de la covarianza. Para obtener más detalles, consulte arcov.

  • 'modified': H es la matriz de Toeplitz rectangular modificada 2(nm)-by-(m + 1) que genera una estimación de autocorrelación para el vector de datos x de longitud n, derivada mediante estimaciones de error de predicción hacia delante y hacia atrás, basadas en un modelo de predicción de orden m. La matriz puede utilizarse para realizar la estimación de parámetros autorregresivos mediante el método de covarianza modificado. Para obtener más detalles, consulte armcov.

Argumentos de salida

contraer todo

Matriz de datos, devuelta para la estimación de la matriz de autocorrelación. El tamaño de H depende del método de cálculo de la matriz especificado en method.

Matriz de autocorrelación sesgada, devuelta como una matriz de Toeplitz rectangular (m + 1) por (m + 1).

Algoritmos

La matriz de datos Toeplitz calculada por corrmtx depende del método que se seleccione. La matriz determinada por el método de autocorrelación (predeterminado) es:

H=1n[x(1)000x(2)x(1)00x(3)x(2)00x(m)x(m1)x(1)0x(m+1)x(m)x(2)x(1)x(m+2)x(m+1)x(3)x(2)x(n1)x(n2)x(nm)x(nm1)x(n)x(n1)x(nm+1)x(nm)0x(n)x(nm+2)x(nm+1)00x(n1)x(n2)00x(n)x(n1)000x(n)].

En la matriz, m es el mismo que el argumento de entrada m a corrmtx y n es length(x). Las variaciones de esta matriz se utilizan para devolver la salida H de corrmtx para cada método:

  • 'autocorrelation': (predeterminado) H = H.

  • 'prewindowed': H es la submatriz n por (m + 1) de H cuya primera fila es [x(1) … 0] y cuya última fila es [x(n) … x(nm)].

  • 'postwindowed': H es la submatriz n por (m + 1) de H cuya primera fila es [x(m + 1) … x(1)] y cuya última fila es [0 … x(n)].

  • 'covariance': H es la submatriz (nm) por (m + 1) de H cuya primera fila es [x(m + 1) … x(1)] y cuya última fila es [x(n) … x(nm)].

  • 'modified': H es la matriz 2(nm)-by-(m + 1) Hmod definida por

    Hmod=12(nm)[x(m+1)x(1)x(n)x(nm)x(1)x(m+1)x(nm)x(n)].

Referencias

[1] Marple, S. Lawrence. Digital Spectral Analysis: With Applications. Prentice-Hall Signal Processing Series. Englewood Cliffs, N.J: Prentice-Hall, 1987.

Capacidades ampliadas

Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.

Consulte también

| | | |

Introducido antes de R2006a