• 大小: 1KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-18
  • 语言: Matlab
  • 标签: MATLAB  

资源简介

设计一个信号,包含三个分量,然后用RLS估算功率谱。

资源截图

代码片段和文件信息

N=800;
M=16;
noise=0.005*(randn(1N)+j*randn(1N)/sqrt(2));
sig1=exp(j*0.15*2*pi*(0:N-1)+j*2*pi*rand);%第一个信号
sig2=exp(-j*0.3*2*pi*(0:N-1)+j*2*pi*rand);%第二个信号
sig3=exp(j*0.16*2*pi*(0:N-1)+j*2*pi*rand);%第三个信号
Un=sig1+sig2+sig3+noise;%带噪声的信号
un=[zeros(1M-1)Un].‘;%扩展数据
A=zeros(MN);%构建样本矩阵
for n=1:N
    A(:n)=un(M+n-1:-1:n);
end
delta=0.004;%调整参数
lambda=0.98;%遗忘因子
dn=Un(2:end);%进一步预测信号
w=zeros(MN);
epsilon=zeros(N-11);%先验估计误差
PI=eye(M)/delta;
for k=1:N-1%rls算法迭代
    PIn=PI*A(:k);
    deno=lambda+A(:k)‘*PIn;
    kn=PIn/deno;
    epsilon(k)=dn(k)-w(:

评论

共有 条评论