フィルターのクリア

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 ビュー (過去 30 日間)
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');

回答 (1 件)

hadi zavi
hadi zavi 2015 年 6 月 29 日
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