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

📄 nlms1.m

📁 这是在国外某网站上下的一些自适应信号处理的源程序
💻 M
字号:
	
%NLMS1 Problem 3.3
%
%   'ifile.mat' - input file containing:
%      I - members of ensemble
%      K - iterations
%      s - deterministic part of signal to predict
%      sigman - standard deviation of noise in signal to predict
%      ND - delayer order
%      N - filter order
%      gamma - small constant to avoid division by 0
%      mun - convergence factor
% 
%   'ofile.mat' - output file containing:
%      ind - sample indexes 
%      MSE - mean-square error

clear all	% clear memory
load ifile;	% read input variables
LD=ND+1;	% delayer length
L=N+1;		% filter length
MSE=zeros(K,1);		% prepare to accumulate MSE*I

for i=1:I,		% ensemble
   D=zeros(LD,1);	% initial delayer memory
   X=zeros(L,1);    	% initial memory
   Wpr=zeros(L,1);	% initial coefficient vector
   n=randn(K,1)*sigman;	% noise in signal to predict 
   for k=1:K,		% iterations
      d=s(k)+n(k);	% sample of signal to predict
      D=[d
         D(1:ND)];	% new delay vector
      X=[D(LD)		
         X(1:N)];	% new input vector
      y=Wpr'*X;	% output sample
      e(k)=d-y;		% error sample
      Wpr=Wpr+mun/(gamma+X'*X)*e(k)*X;	
			% new coefficient vector
      MSE(k)=MSE(k)+(e(k))^2;	% accumulate MSE*I
   end
end

ind=0:(K-1);	% sample indexes
MSE=MSE/I;	% calculate MSE
save ofile ind MSE;	% write output variables

⌨️ 快捷键说明

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