Effacer les filtres
Effacer les filtres

i writed a code for adaptive channel equalizer with LMS algorithm but i donot recieve a desire answer for learning curve . i want to find problem of program . input signal of channel is a 16-QAM .

2 vues (au cours des 30 derniers jours)
iterate=200;
N=1000;
M=8;
mu=0.01;
ms=zeros(N,1);
p=[0.1483;0.2595;-0.0318;-0.1536;-0.2118;0.1059;0.5295;0.7314];
for k=1:iterate
j = sqrt(-1);
x = sign(randn(N,1)).*(2+sign(randn(N,1)))+ j*sign(randn(N,1)).*(2+sign(randn(N,1)));
v=sqrt(0.001)*randn(N,1);
d=filter(p,1,x)+v;
u=d(1:N);
w=zeros(M,1);
e=zeros(N,1);
y=zeros(N,1);
uvect=zeros(M,1);
for i=1:N
uvect=[u(i);uvect(1:M-1)];
y(i)=w'*uvect;
e(i)=x(i)-y(i);
w=(w+mu*uvect*conj(e(i)));
end
ms=ms+abs(e.*e);
end
mse1=ms/iterate;
semilogy(mse1);
ylabel('MSE');
xlabel('iteration number');
title('learning curve LMS');

Réponses (1)

hadi zavi
hadi zavi le 29 Juin 2015
can anybody help me?

Community Treasure Hunt

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

Start Hunting!

Translated by