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

📄 run_dctlmseq.m

📁 matlab里面的一些经典的例子程序
💻 M
字号:
function   run_dctlmseq(rp)

% Computer Experiment
% Section 10.5, Adaptive Filter Theory, 3rd edition
% Adaptive equalization

disp('dctlmseq')
seed = 0:(rp.Niter-1);
h = [1/2*(1+cos(2*pi/rp.T*((1:3) - 2)))];
M = rp.M;
alpha = 1 / 2 / M;

Lambdax = [];

Npred = rp.Ndata + length(h) - 1;
Wx    = zeros(M, Npred-M+1);
E     = [];

for iter = 1:rp.Niter,
  disp([rp.T iter]);
  rand( 'seed', seed(iter));
  randn('seed', seed(iter));
  a  = 2*(rand(rp.Ndata, 1) > 0.5) -1;
  Xi = conv(a, h);
  Xi = Xi + sqrt(rp.var_v)*randn(length(Xi), 1);
  Y  = [zeros(rp.tau, 1) ; a(1:rp.Ndata)];
  
  if rp.type == 'A',
     disp('type A')
     [Wo, e, Lambda] = dct_lms(Xi, Y, M, alpha, rp.beta, rp.gamma, rp.verbose);
  end
  if rp.type == 'C',
     disp('type C')
     [Wo, e, Lambda] = dct_lms_C(Xi, Y, M, alpha, rp.beta, rp.gamma, rp.verbose);
  end

  Wx = Wx + Wo(:, M:Npred); % ignore 1st M-1 incomplete weight vectors
  E = [E; e(M+1:Npred).'];
  Lambdax = [Lambdax; Lambda(M, :)];
end; % for iter

Wx = Wx / rp.Niter;
eval(['save  ' rp.name])

⌨️ 快捷键说明

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