• 大小: 1007B
    文件类型: .m
    金币: 2
    下载: 1 次
    发布日期: 2021-01-02
  • 语言: Matlab
  • 标签: SVD  Matlab仿真  

资源简介

用Matlab仿真实现最小二乘法和总体最小二乘法估计 假设仿真的观测数据 产生,其中 为0均值, 单位方差的高斯白噪声,取n=1,2,....128。 试用TLS,取AR阶数为4,估计AR参数 和正弦波频率;再用SVD-TLS ,估计AR参数 和正弦波频率。 (1)、在仿真中,AR阶数取为4和6。 (2)、执行SVD-TCS时,AR未知。仿真运行至少二十次。

资源截图

代码片段和文件信息


%Pisarenko算法估计

function [AW]=pisar(xnsin_num)
load testdat;
sin_num=3;
[N t]=size(xn)
rxx=xcorr(xn‘biased‘);
rxx=rxx(N:(2*sin_num)+N);
 
%频率估计
Rxx=toeplitz(rxx);
ev=eig(Rxx);
[S i]=min(ev);
[V D]=eig(Rxx);
a=V(:i);
rts=roots(a);
w_est=[];
for i=1:2*sin_num
   w_est(i)= abs(angle(rts(i)));
end
W=(w_est/(2*pi));
 
 
%幅度估计
mcos=[];
for n=1:sin_num
   vcos=[];
   for i=1:sin_num
      vcos=[vcos cos(n*w_est(i))];
   end
   mcos=[mcos;vcos];
end
rxx=rxx

评论

共有 条评论