lms.m
来自「the program is based on LMS filter algor」· M 代码 · 共 53 行
M
53 行
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% LMS Algorithm %% %% Written By: Sundar Sankaran and A. A. (Louis) Beex %% DSP Research Laboratory %% Dept. of Electrical and Comp. Engg %% Virginia Tech %% Blacksburg VA 24061-0111 %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%randn('seed', 0) ;rand('seed', 0) ;NoOfData = 8000 ; % Set no of data points used for trainingOrder = 32 ; % Set the adaptive filter orderMu = 0.01 ; % Set the step-size constantx = randn(NoOfData, 1) ;% Input assumed to be whiteh = rand(Order, 1) ; % System picked randomlyd = filter(h, 1, x) ; % Generate output (desired signal)% Initialize LMSw = zeros(Order,1) ;% LMS Adaptationfor n = Order : NoOfData D = x(n:-1:n-Order+1) ; d_hat(n) = w'*D ; e(n) = d(n) - d_hat(n) ; w = w + Mu*e(n)*D ; w_err(n) = norm(h - w) ;end ;% Plot resultsfigure ;plot(20*log10(abs(e))) ;title('Learning Curve') ;xlabel('Iteration Number') ;ylabel('Output Estimation Error in dB') ;figure ;semilogy(w_err) ;title('Weight Estimation Error') ;xlabel('Iteration Number') ;ylabel('Weight Error in dB') ;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?