matlab仿真算法,matlab仿真ALE算法

本文通过实证模块N=2000的数据,展示了如何利用ALE技术鉴别窄带信号x1和宽带信号x2,并通过自相关分析(Xcorr)处理数据,最终输出融合信号Yest。过程包括噪声信号生成、滤波、延迟估计和误差信号分析。
摘要由CSDN通过智能技术生成

%% this program verifies the ALE technology

% x1 is a narrow band signal while x2 is a wide band signal

%%generate data module

N=2000;

delta=0.01;

sum=0;

for i=1:100

en=sqrt(1)*randn(1,N);

for i=3:N

x1(i)=sin(0.05*pi*i+2*pi*rand(1));

x2(i)=en(i)+en(i-1)+en(i-2);

end

x=x1+x2;%从x(3)开始

X=x(:,3:N);%X的原始数据

RXX=xcorr(X);

Y=X(:,10:N-2);%取得X的后2,时延取10

%%data process module

H1=zeros(2,N);

H1(:,1)=[3 -4]';

for i=1:N-20

e(i+1)=Y(i+1)-H1(:,i)'*[X(i+1); X(i)];

H1(:,i+1)=H1(:,i)+delta*e(i+1)*[X(i+1); X(i)];

Yest(i)=H1(:,i)'*[X(i+1); X(i)];

end

sum=sum+Yest;

end

Yest=sum/100;

%%display module as follows

figure(1); plot(x1) axis([0  2000 -2 2]); xlabel('n'); ylabel('x1'); title('x1=sin(0.05pi*n+phrase)');  figure(2); plot(x2/2); axis([0  2000 -8 8]); xlabel('n'); ylabel('x2'); title('噪声信号x2');  figure(3); plot(Yest*10); axis([0  2000 -2 2]); xlabel('n'); ylabel('Yest'); title('输出信号y~');  figure(4); plot(e); axis([0  1900 -20 20]); xlabel('n'); ylabel('e(n)'); title('误差信号e(n)');

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值