• try123456
    了解作者
  • matlab
    开发工具
  • 32KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • 10 积分
    下载积分
  • 5
    下载次数
  • 2020-07-01 21:36
    上传日期
设计一个LCMV自适应滤波器,使输出信噪比最大,计算改善因子
自适应滤波器.zip
  • clutter.mat
    30.4KB
  • Clutter_Generate.m
    2.4KB
  • AdapFilter.m
    2KB
内容介绍
clc;clear all;close all; azi_num=2000; %取2000个点 fr=1000; %雷达重复频率 lamda0=0.05; %杂波波长 sigmav=1.0; %杂波方差 sigmaf=2*sigmav/lamda0; rand('state',sum(100*clock)); %产生服从U(0,1)分布的随机序列 d1=rand(1,azi_num); rand('state',7*sum(100*clock)+3); d2=rand(1,azi_num); xi=2*sqrt(-2*log(d1)).*cos(2*pi*d2); %正交且独立的高斯序列N(0,1) xq=2*sqrt(-2*log(d1)).*sin(2*pi*d2); %形成滤波器频率响应 coe_num=12; %求滤波器系数,用傅里叶级数展开法 for n=0:coe_num coeff(n+1)=2*sigmaf*sqrt(pi)*exp(-4*sigmaf^2*pi^2*n^2/fr^2)/fr; % coeff(n+1)=1/(sigmaf*sqrt(2*pi))*exp(-(n-fr)^2/(2*sigmaf^2)); end for n=1:2*coe_num+1 if n<=coe_num+1 b(n)=1/2*coeff(coe_num+2-n); else b(n)=1/2*coeff(n-coe_num); end end %生成高斯谱杂波 xxi=conv(b,xi); xxq=conv(b,xq); xxi=xxi(coe_num*2+1:azi_num+coe_num*2);%目的是去掉暂态响应 xxq=xxq(coe_num*2+1:azi_num+coe_num*2); xisigmac=std(xxi); ximuc=mean(xxi); yyi=(xxi-ximuc)/xisigmac; xqsigmac=std(xxq); xqmuc=mean(xxq); yyq=(xxq-xqmuc)/xqsigmac; %归一化 sigmac=1.2 ; %杂波的标准差 yyi=sigmac*yyi; %使瑞利分布杂波具有指定的标准差 yyq=sigmac*yyq; %使瑞利分布虚部杂波 ydata=yyi+j*yyq; %瑞利分布杂波形成 figure; subplot(211);plot(real(ydata)); %瑞利分布杂波实部 title('高斯谱杂波时域波形,实部'); subplot(212);plot(imag(ydata)); %瑞利分布杂波虚部 title('高斯谱杂波时域波形,虚部') num=100; %求概率密度函数的参数 maxdat=max(abs(ydata)); mindat=min(abs(ydata)); NN=hist(abs(ydata),num); xpdf1=num*NN/((sum(NN))*(maxdat-mindat)); %用直方图估计的概率密度函数 xaxisl=mindat:(maxdat-mindat)/num:maxdat-(maxdat-mindat)/num; th_val=(xaxisl./sigmac.^2).*exp(-xaxisl.^2./(2*sigmac.^2)); %概率密度函数理论值 figure; plot(xaxisl,xpdf1); %做出仿真结果的概率密度函数曲线 hold on;plot(xaxisl,th_val,'r:'); %做出理论概率密度函数曲线 title('杂波幅度分布'); xlabel('幅度');ylabel('概率密度'); signal=ydata; signal=signal-mean(signal); %求功率谱密度,先去掉直流分量 figure;M=256; %用burg法估计功率谱密度 psd_dat=pburg(real(signal),32,M,fr); psd_dat=psd_dat/(max(psd_dat)); %归一化处理 freqx=0:0.5*M; freqx=freqx*fr/M; plot(freqx,psd_dat);title('杂波功率谱'); xlabel('频率/HZ'); %做出理想高斯谱曲线 powerf=exp(-freqx.^2/(2*sigmaf.^2)); hold on;plot(freqx,powerf,'r:'); % save clutter ydata
评论
    相关推荐
    • blind.zip
      一种改进的智能天线盲波束形成算法。将空分多址技术引入无线通信系统中,针对无线电信号普遍具有的循环平稳特性,提出了非线性条件下的改进盲波束形成算法
    • USB-COM(HL340).rar
      usb转串口,找了很久才找到,现在别的地方很难下到,要不用不了,我这个可以用 HL340D 的
    • NAND FLASH的读写程序.rar
      Nand flash 读写程序 C语言代码,可以给U盘开发者参考 可以读写三星各种型号的Nand flash芯片
    • USB_2.0.rar
      USB2.0开发例程,基于51单片机,包括pc端程序
    • 串口温度数据采集并实时显示.rar
      串口温度数据采集并实时显示 读串口数据的原理是,只要当有数据向串口发数据来时,计算机就会自动将其数据写到一个特定的缓冲区,我们只要写程序去读那个特定的缓冲区就可以了. 有数据向串口发过来时,程序可以将数据接收到,接收的数据是字符型的,那么将数据转化为数字型的,再将这个数据的大小作为画图的某一个点的纵坐标,横坐标为数据的序号.将这些点用线连起来就是一个曲线图了,这个就是图形显示基本原理. 查看原来的数据的原理也是这样的,不同的地方就是,数据是从文件中来,同样的也是将多个数据分成一个一个的,然后这一个数据的大小就是画图的某一个点的纵坐标,横坐标同样为数据的序号,再将这些点用线连起来就是曲线图. 图形能移动的原理,是我们首先改变的只是数据,图形并没有变,但图形的形式是由这些数据来确定的,当数据发生变化后,我们通过刷新显示区来变化的.
    • gps.rar
      GPS应用程序设计,内含GPS卫星原理、方法及详细源代码
    • MSCOMM32.OCX.rar
      串口编程控件MSCOMM32.OCX mscomm32.ocx是微软提供的串口通讯开发控件。支持串口通讯的软件大部分都是使用这个控件来实现串口通讯功能的。 安装方法:请您把它复制到系统目录下,对于windows9x系列(win95、win98、winme)是x:\windows\system\,对于 windowsNT、windows2000、windowsXP系列是x:\winnt\system32\。然后打开一个命令行提示符窗口(MSDOS方式窗口), 用"cd x:\windows\system\"命令或者"cd x:\winnt\system32\"切换到系统目录下,再执行"regsvr32 mscomm32.ocx"这个命令。
    • VSer.rar
      虚拟串口的完整源代码,包括注释和开发日志。据说市值5万人民币!
    • USB-shujucaiji.rar
      USB数据采集系统论文-自己的毕业设计论文,花了很长时间做的,内容十分详细,包括核心代码和开发环境的设置。
    • wmserial.zip
      基于消息的Windows串口通讯例子