Implementación en Matlab del coeficiente de autocorrelación retardada de series temporales
sigma = 10; parámetros de la ecuación de Lorentz
r = 28
b =
y; = [-1;0;1]; punto de partida (vector de columna 3x1)
h = 0,01; paso de tiempo de integración
k1 = 10000 primera vez Número de puntos de iteración
p>k2 = 5000; Número de puntos en la segunda iteración
z = LorenzData(y, h, k1 k2, sigma, r, b
x =); z(k1 1: end, 1); serie de tiempo (vector de columna)
x = normalize_(x); serie de tiempo (vector de columna 3x1)
x = normalize_(x) ; serie de tiempo (vector de columna 3x1)
x = normalize_(x); serie de tiempo (vector de columna 3x1)1(x); normalización
data=x'; debe ser un vector de fila
-------------------------------- ------ -----------------
disp('---------- Algoritmo GP para encontrar la dimensión de correlación ------- ---');
tau = 14; retardo de tiempo
m = 3; dimensión de incrustación
logdelt = 0,2 ;
ln_r = [-7: logdelt: 0];
delt = exp(ln_r);
para k=1.length(ln_r)
r= delt(k);
C(k)=correlation_internal(m, data, r, tau) La variable de salida es la integral de correlación
k
if (C(k)lt; 0.0001)
C(k)= 0.0001
fin
ln_C(k)= log(C(k) );lnC(r)
end
C
subplot(211)
plot(ln_r, ln_C, ':') ; cuadrícula;
xlabel('ln r'); ylabel('ln C(r)');
espera
subplot(212)
Y = diff(ln_C)./logdelt;
plot(Y,':');
xlabel( 'n'); ('pendiente');
espera;
--------------------- ------ ------------ ------------------
Ajustar zona lineal
ln_Cr =ln_C;
ln_r=ln_r;
LinearZone = [10:25];
F = polifit(ln_r(LinearZone),ln_Cr(LinearZ
uno), 1);
Dimensión de correlación = F(1)