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

📄 lat3q.m

📁 This is mat lab code for adaptive lattice filters.
💻 M
字号:

function eo = lat3q(input,d,lambda,eta,order,B);

% Quantized a priori-based error feedback RLS lattice filter
% returns the a-priori output error sequence



N = max(size(input));
M = order;

% Initialization of M-order vectors
 gamma = ones(M,1);
 beta = zeros(M,1);
 kappaf = zeros(M,1);
 kappab = zeros(M,1);
 kappa = zeros(M,1);
   
 xif = (1/eta*lambda*lambda)*ones(M,1);
 xib = (1/eta*lambda*lambda)*ones(M,1);
 for m=0:M-1
   xib(m+1) = xib(m+1)/lambda^m;
 end
      
xif = quantize_v(xif,B);
xib = quantize_v(xib,B);
    
 for i=1:N
   gammao = gamma;          
   betao = beta;
   xibo = xib;
   gamma = ones(M+1,1);
   beta(1) = input(i);
   alpha(1) = input(i);
   e(1) = d(i);
   for m=1:M
     xif(m) = quantize(quantize(lambda*xif(m),B) + quantize((abs(alpha(m)))^2*gammao(m),B),B);
     xib(m) = quantize(quantize(lambda*xib(m),B) + quantize((abs(beta(m)))^2*gamma(m),B),B);

     beta(m+1) = quantize(betao(m) - quantize(kappab(m)*alpha(m),B),B);
     alpha(m+1) = quantize(alpha(m) - quantize(kappaf(m)*betao(m),B),B);
     e(m+1) = quantize(e(m) - quantize(kappa(m)*beta(m),B),B);

     kappa(m) = quantize(kappa(m) + quantize((beta(m))'*gamma(m)*e(m+1)/xib(m),B),B);
     kappaf(m) = quantize(kappaf(m) + quantize((betao(m))'*gammao(m)*alpha(m+1)/xibo(m),B),B);
     kappab(m) = quantize(kappab(m) + quantize((alpha(m))'*gammao(m)*beta(m+1)/xif(m),B),B);
        
     gamma(m+1) = quantize(gamma(m) - quantize(abs(gamma(m)*beta(m))^2/xib(m),B),B);
   end
   eo(i) = e(M+1);
 end

⌨️ 快捷键说明

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