?? comp_lr.m
字號:
% Figure 8.13
% reuqire additional functions in files
% chan_1.m ;white noise & noise shaping filter
% sys_1.m ;unknown system & additive white noise
% lms_1.m ;LMS adaptive filter
% rls_1.m ;RLS adaptive filter
% c.f Figure 8.12 for configuration
%%%----- adaptive filter convergence comparison
clf
colordef(1,'black')
M = 1000; % no. of data sample(iterations)
nensem = 1; % no. of runs for ensemble average
% FIR noise shaping filter-comment out as appropriate
h = [1 0 0] %(a) EVR = 1
% h = [0.2602 0.9298 0.2602] ; %(b) EVR = 11
% h = [0.3842 0.8704 0.3482] ; %(c) EVR = 68
nchan = max(size(h));
% FIR system to be identified
nsys = 16; % no. of taps
t = 0:nsys-1;
hopt = exp(-t); % impulse response
hopt = hopt/sqrt(hopt*hopt'); %normalise o/p variance to unity
npower = -60; % relative noise power in dB
sigman = 10^(npower/20); % noise rms
N = M + nsys;
tt = 0:M;
range = 1 + nsys-2:M + nsys - 1;
% ensemble average over nensem convergence plots
lsum_norm = zeros(1,N);
rsum_norm = zeros(1,N);
for jj = 1:nensem
x = chan_1(h,N);
y = sys_1(hopt,x,sigman);
[lerr_norm,lerr_sq] = lms_1(x,y,nsys,hopt);
[rerr_norm,rerr_sq] = rls_1(x,y,nsys,hopt);
lsum_norm = lsum_norm + lerr_norm;
rsum_norm = rsum_norm + rerr_norm;
end
lsum_norm(range(1)) = 1;
rsum_norm(range(1)) = 1;
set(gca,'FontSize',18);
plot(tt,10*log10(lsum_norm(range)/nensem),tt,10*log10(rsum_norm(range)/nensem));
grid
set(gca,'FontSize',18);
xlabel('iterations');
ylabel('norm(db)');
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -