Help me to find a bug:)
Show older comments
I have e code for Matlab. Could anybody help me to find a bug in it? Code should change reaction for different parameters with variable Alfa and it does not work. The code is below
I = eye(W);
flag = 0;
for i = W+1:(size(data))
%generate X
for window = 1:W
X(i-W,window) = data(i-(W+1-window));
end
%set theta and P or use previous value
if (flag == 0)
theta = t ;
P = alpha*I;
flag = 1;
else
P = P;
end
%calculate prediction
x_tmp = X(i-W,:)';
y_hat = theta' * x_tmp;
%gather the weights and the Y's
weights(i-W,:) = theta;
estimated(i-W,:) = y_hat;
%calc error
e = data(i) - y_hat;
err(i-W,:) = e;
%calc Kalman gain
K = (P*x_tmp)/(2500 + x_tmp'*P*x_tmp);
%update theta and P
theta = theta + K*e;
P = (I - K*x_tmp')*P;
end
end
4 Comments
Stephen23
on 11 May 2015
Sure the code is there, but sorry we can't just imagine where the error occurs. Please help us by giving the complete error message, which includes useful information such as the line of code where the error happens.
Jacek Freyer
on 11 May 2015
Walter Roberson
on 11 May 2015
So there is no error message, it just doesn't output what you think it should, but you are not going to provide us with some sample data or what you think the output should be?
Jacek Freyer
on 12 May 2015
Answers (0)
Categories
Find more on Digital Filter Analysis in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!