lms.m

来自「数字信号处理Matlab演示文件,其中各个文件加放置了不同的matlab子文件」· M 代码 · 共 24 行

M
24
字号
function [err_norm, err_sq] = lms(input, output, N, hopt)
%	LMS adaptive filter for fig8_12.m
%	input	: input signal
%	output	: output signal
%	N	: no. of taps
%	hopt	: optimum set of weights
%	err_norm: normalised error of weights
%	err_sq	: squared estimation error
%
%	July 97

NN = max ( size (input));
mu = 1/6/N;
h = zeros(size(hopt));
for ii = 1:NN-N+1,
	yhat = input(ii:ii+N-1)*h';
	e = output(ii+N-1)-yhat;
		err_sq(ii+N-1) = e^2;
	h = h + 2*mu*input(ii:ii+N-1)*e;
	herr = hopt-fliplr(h);
	err_norm(ii+N-1) = (herr*herr');
end
	
	

⌨️ 快捷键说明

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