7-7.m

来自「matlab数字信号与应用源代码7」· M 代码 · 共 36 行

M
36
字号
%例程7-7  自适应信号分离器
%自适应信号分离器

t=0:1/10:400;
s=sin(2*pi*t/10);                 %周期信号
x=awgn(s,15);                      
D=50;%延迟
r=[zeros(1,D),x];                 %信号延迟D
x=[x zeros(1,D)];

N=5;                          %r经LMS自适应滤波
u=0.02;
M=length(r);
y=zeros(1,M);
w=zeros(1,N);
for  n=N:M
    x1=r(n:-1:n-N+1);
    y(n)=w*x1';
    e(n)=x(n)-y(n);
    w=w+u.*e(n).*x1;
end

subplot(3,1,1);
plot(t,x(1:(length(x)-D)));
title('输入信号');
axis([1 200 -1.2 1.2]);
subplot(3,1,2); 
plot(t,y(1:(length(x)-D)));
title('周期信号');
axis([1 200 -1.2 1.2]);
subplot(3,1,3);
plot(t,e(1:(length(x)-D)));
title('宽带信号');
axis([0 200 -1.2 1.2]);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?