i have N observations z(1),z(2),...z(N) how can do the following formula , where N=50
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Respuesta aceptada
Andrei Bobrov
el 25 de Mayo de 2017
Editada: Andrei Bobrov
el 25 de Mayo de 2017
[EDIT]
MATLAB >= R2016b
N = numel(Z);
a = triu(toeplitz(Z));
a = [a,a(:,end-1:-1:1)]./exp((1-N:N-1)*20);
K = Z(end)*sum(a(:))/(2*N);
MATLAB <= R2016a
N = numel(Z);
a = triu(toeplitz(Z));
a = bsxfun(@rdivide,[a,a(:,end-1:-1:1)],exp((1-N:N-1)*20));
K0 = Z(end)*sum(a(:))/(2*N);
with loop for..end
N = numel(Z);
K = 0;
for ii = 1-N:N-1
for jj = 1:N-abs(ii)
K = K + Z(jj)*Z(jj+abs(ii))*exp(-20*ii);
end
end
K = K/2/N;
3 comentarios
Andrei Bobrov
el 25 de Mayo de 2017
You use old version of MATLAB. I'm added variant for MATLAB <= R2016a
Más respuestas (0)
Ver también
Categorías
Más información sobre Get Started with MATLAB 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!