📄 se2.m
字号:
%SE2 Problem 4.2
%
% 'ifile.mat' - input file containing:
% I - members of ensemble
% K - iterations
% s - deterministic part of reference signal
% sigman - standard deviation of noise in reference signal
% ND - delayer order
% Ha, Hb - numerator, denominator of H(z)
% N - filter order
% mu - convergence factor
%
% 'ofile.mat' - output file containing:
% ind - sample indexes
% MSE - mean-square error
% e - last experiment 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
W=zeros(L,1); % initial coefficient-vector
n=randn(K,1)*sigman; % noise in reference signal
x=filter(Ha,Hb,n); % input
for k=1:K, % iterations
D=[s(k)+n(k)
D(1:ND)]; % new delay vector
d=D(LD); % desired signal sample
X=[x(k)
X(1:N)]; % new input vector
y=W'*X; % output sample
e(k)=d-y; % error sample
W=W+2*mu*sign(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 e; % write output variables
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -