⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nmls.m

📁 这里的7个源代码都是关于自适应噪声滤除技术的
💻 M
字号:
%lms
clear all
close all
hold off
sysorder=5;
N=1000;
inp=randn(N,1);
n=randn(N,1);
[b,a]=butter(2,0.25);
Gz=tf(b,a,-1);
h=[0.0976;0.2873;0.3360;0.2210;0.0964;];
y=lsim(Gz,inp);
n=n*std(y)/(10*std(n));
d=y+n;
totallength=size(d,1);
N=60;
w=zeros(sysorder,1);
for n=sysorder:N
    u=inp(n:-1:n-sysorder+1);
    y(n)=w'*u;
    r(n)=u'*u;
    e(n)=d(n)-y(n);
    fai=0.0001;
    if n<20
        mu=0.32;
    else
        mu=0.15;
    end
    w=w+mu*u*e(n)/(r(n)+fai);
end
    for n=N+1:totallength
        u=inp(n:-1:n-sysorder+1);
        y(n)=w'*u;
        e(n)=d(n)-y(n);
    end
    hold on
    plot(d)
    plot(y,'r');
    title('系统输出');
    xlabel('样本')
    ylabel('实际输出')
    figure
    semilogy((abs(e)));
    title('误差曲线');
xlabel('样本')
ylabel('误差矢量')
figure
plot(h,'k+')
hold
plot(w,'r*')
legend('实际权矢量','估计权矢量')
title('比较实际和估计权矢量');
axis([0 6 0.05 0.35])

⌨️ 快捷键说明

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