Files
matlab/common/lms_eval.m
T
jens 1ab94a4bea added
git-svn-id: http://moon:8086/svn/matlab/trunk@99 801c6759-fa7c-4059-a304-17956f83a07c
2018-08-30 18:06:49 +00:00

33 lines
487 B
Matlab
Executable File

function lms_eval(N, mu)
% lms_eval(N, mu)
% Example: lms_eval(1000, 0.01)
h = [0 0 0 1 0 0 0 0];
w = randn(1, length(h));
z_h = zeros(length(h)-1, 1);
z_w = zeros(length(h)-1, 1);
x = zeros(1, length(h));
e_last = 0;
p = 1.0;
for n=1:N,
xs = 0.1*randn();
p = 0.99*p + 0.01*xs*xs;
x = [xs x(1:length(x)-1)];
d = x*h';
y = x*w';
e = d - y;
w = w + mu*e*x*(1/(0.001+p));
e_last = 0.5*e_last + 0.5*e*e;
_e(n) = e_last;
_p(n) = p;
end
plot(1:N, _e, 1:N, _p); grid;
w=w'