Why is my while loop not working?

1 visualización (últimos 30 días)
Leo Tu
Leo Tu el 7 de Jul. de 2021
Comentada: KSSV el 14 de Jul. de 2021
From this code, I am looking to get the nll values for all s = 0:999 where s is a parameter. When I run it, it runs very slow and only gives out one value of nll. Can anyone help me with getting the nll values for all values of the parameter s from 0 to 999.
% Initial parameter values
s = 0;
mu = 0.1;
om = 0.01;
% AT is a row vector
while s<=999
for t = s+1:length(AT)
k = abs(s:-1:(s-t+1));
id = [(t-1):-1:0]+1;
lambda(t) = mu+sum(om.^k.*AT(id))/sum(om.^k);
j = 1:length(lambda);
nll = -sum(j.*log(lambda(j)))+sum(lambda(j));
end
s = s+1;
end
  5 comentarios
David Hill
David Hill el 13 de Jul. de 2021
Better describe the equation of lambda with respect to s and your constants.
KSSV
KSSV el 14 de Jul. de 2021
One reason for slow is you have not initiated lambda.

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

Productos


Versión

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by