资源简介
FXLMS算法的matlab仿真
代码片段和文件信息
% filter parameters
tic;
M=16; % number of taps
step=0.0001; % step-size parameteR
e_max=5024; % maximum #of epochs
K=120;
G=170;
Y=500;
D=1000;
% constants
pi=3.14;
% initialize
pp=zeros(124);
qq=zeros(17);
pr=zeros(124);
x=zeros(121);
w1=zeros(1M);
w2=zeros(1M);
r11=zeros(1M);
r12=zeros(1M);
r21=zeros(1M);
r22=zeros(1M);
ss1=zeros(1e_max);
ss2=zeros(1e_max);
ee1=zeros(1e_max);
ee2=zeros(1e_max);
dd=zeros(1e_max);
hp=[1 0.05 0.1 0.09 0.05 0.5 0.002];
hr=[1 0.5 0.02 0.05];
h11=[1 0.5 0.01 0.9 0.005 0.02];
h22=[1 0.5 0.01 0.9 0.005 0.02];
h12=[1 0.6 0.02 0.8 0.05 0.004];
h21=[1 0.6 0.02 0.8 0.05 0.004];
%计算部分
for t=1:24
pp(t)=sin((K/D)*2*pi*(25-t)+pi/5 )+sin((G/D)*2*pi*(25-t))+sin((Y/D)*2*pi*(25-t));
pr(t)=sin((K/D)*2*pi*(25-t)+pi/5 )+sin((G/D)*2*pi*(25-t))+sin((Y/D)*2*pi*(25-t));
end
t=25;
epoch=0;
while epoch input=sin((K/D)*2*pi*t+pi/5 )+sin((G/D)*2*pi*t)+sin((Y/D)*2*pi*t);
for i=2:7
pp(7-i+2)=pp(7-i+1);
end
pp(1)=input;
for i=1:7
qq(i)=pp(i);
end
d=dot(qqhp);
dd(epoch+1)=d; %期望信号
for i=2:24
pr(24-i+2)=pr(24-i+1);
end
pr(1)=input;
for i=1:21
for j=1:4
x(i)=x(i)+pr(i+j-1)*hr(j);
end
end
for i=1:16
for j=1:6
r11(i)= r11(i)+x(i+j-1)*h11(j);
- 上一篇:水果识别matlab程序,有界面
- 下一篇:手写体识别matlab代码
评论
共有 条评论