📄 lms_eml_samplebase.m
字号:
function y=lms_eml_samplebase(x,d) %#eml
%% filter state
persistent fifo;
persistent h;
%% define fi object
ISFI=isfi(x);
if ISFI
T=numerictype(x);
y=fi(0,T);
e=fi(0,T);
else
y=0;
e=0;
end
%% filter parameter
L=32;
if ISFI
mu=fi(0.01,1,16);
else
mu=0.01;
end
%% initialize
if isempty(h)
if ISFI
h=fi(zeros(L,1),1,16,14);
else
h=zeros(L,1);
end
end
if isempty(fifo)
if ISFI
fifo=fi(zeros(L,1),T);
else
fifo=zeros(L,1);
end
end
%% buffer fifo update
for k=2:L
fifo(k)=fifo(k-1);
end
fifo(1)=x;
%% filtering
for k=1:L
y=y+fifo(k)*h(k);
end
e=d-y;
%% filer coefficient update
for k=1:L
h(k)=h(k)+mu*e*fifo(k);
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -