一、简介
1 CDIF算法
2 CDIF算法缺点
二、部分源代码
clear all
clc
close all
%初步分选子程序
%sig 输入信号流
%slen 输入信号流长度
%n 采样时刻
%pw_id 是否考虑脉宽哆嗦标志
%pw_ratio 脉宽哆嗦率
%输出参数
%pw 信号脉宽
%pnum 信号脉宽个数
%toa 信号抵达时刻
%tnum 信号变量泵达到时刻个数
% sdif_para.pw_id=1;%%是否考虑脉宽哆嗦标志
% sdif_para.pw_fixr=0.1;%%分选脉宽容限 固定
% sdif_para.pw_ranr=0.01;%%分选脉宽容限 改动
% sdif_para.pri_id=1;%%是否考虑脉冲重复周期哆嗦标志
% sdif_para.pri_fixr=20;%%分选重复周期容限 固定
% sdif_para.pri_ranr=0.01;%算法规划与剖析%分选重复周期容限 改动
% sdif_para.gate=0.5;%%直方变量是什么意思图门限值
% sd变量是什么意思if_para.step=1;%%分选级数
%变量初始化
PRI1=150e-006;%单位us
a=0.05;
b=a*PRI1*2*(rand-0.5);
t1=1:126;
% z1=PRI1*t1+0.000223+b;
z1=PRI1*t1+算法2.23e-006;
% z11=z1+z1.*(1-2*rand(1,126))*0.01;
PRI2变量min表明什么类型的变量=24算法导论0e-006;
t2=1:78;
z2=PRI2*t2+11变量与函数e-006;
PRI3=370e-006;
t3=1:50;
z3=PRI3*t3+0.120e-006;
sig=[z1,z2,z3];
dd=0; %dd=1e-变量名3; %设置哆嗦程度0.1%
jitter=(1-2*rand(1,254))*dd;
sig=s变量是什么意思ig+sig.*jitter; %为每个脉冲的TOA加随机哆嗦
sig=sort(sig);
%以上程序用于生成交错脉变量名的命名规矩冲序列抵达时刻,交错脉冲序列由三部雷达组成算法
dif_变量的定义pri=[];%存储计算出各种不同的pri
so算法导论rt_para.pnum=1;
sor变量之间的联系t_para.tnum=254;
sort_para.toa=sig;
sdif_para.pri_fixr=2e-005;算法是什么
sdif_para.step=3;
sdif_para.pri_id=1;
sdif_para.gate=0.4;
%[so算法剖析的意图是rt_bank]=sdif_picture(sort_para,sd变量名if_para)
time=370e-005;%采样时刻最大重复周期10倍,
fs=250e006;%采样频率
toa_cdif=sort_para.toa;
tnum_cdif=sort_p算法工程师ara.tnum;%调出要运用批改的参数
sig_num=1;
pri_num=0;
pri=0;
pri_total=0;
sig_total=0;
sort_id=0;
c=1;
tem_pri=变量min表明什么类型的变量0;
gate_num=0;
pri_oncenum=0;
pri_oncevalue=0;
pri_twicenum=0;
pri_twicevalue=0;
pri_search=0;
pri_searchnum=0;
search_num=1;
searc变量h_id变量名=0;
tem_toa=0;
s变量名的命名规矩ortok_算法剖析的意图是id=0;
sortok_id1=0;
%可能要调理的参数
coeff1=0.4;
coeff2=1.0;
series=5;算法%最多做c-1级差
L=6;
%依照不同脉宽根节点下的TOA数据进行信号分选
for i=1:sort_para.pnum
%变量初始化
pri_num=0;
pri=0;
pri_total=0;
sig_total=0;
c=1; %分选级数
while( (tnum_cdif(i)变量名>5)&&(c<series) ) %TOA个数大于5个 脉冲数大于5
tnum1=tnum_cdif(i)-c;
for j=1:tnum1
if toa_cdif(i,j+c)>toa_cdif(i,算法剖析的意图是j)
t变量与函数em_pri=toa_cdif(i,j+c)-toa_cdif(i算法是什么,j);
else
tem_pri=0;
end
if pri_num==0
pri_num=1;
pri(pri_num)=tem_pri;%pri
pri_total(pri_num)=1;%不同的pri的不同的数量
else
for k=1:pri_num
if (tem_pri>=pri(k)-2e-006)&&(tem_pri<=pri(k)+2e-006)%改正容限
pri_total(k)=pri_total(k)+1;
break;
end
if k==pri_num
pri_num=k+1;
pri(pri_num)=tem_pri;
pri_total(pri_num)=1;
end
end
en变量是什么意思d
end
%###############################
%先将pri按从小到大的顺序排列
if pri_num>1
for m=1:pri_num-1
for n=m算法与数据结构+1:pri_num
if pri(m)>pri(n)
tem_data=pri(m算法规划与剖析);
pri(m)=pri(n);
pri(n)=tem_data;
tem_data=pri_total(m);
pri_total(m)=pri_total变量泵(n);变量与函数
pri_total(n)=tem_data;
end
end
end
end
%##############################
%##############################画一阶CDIF
if(c==1)
xpri=(1e-006:1e-003:400);
y=coeff1*time*10^6./xpri;%coeff1*time*10^6
fig变量英文ure(1)
plot(xpri,y) %门限算法的时刻复杂度是指什么
title('一阶CDIF图');
xlabel('算法与数据结构PRI/us');ylabel('个数');
axis([0 400 0 40]);
h变量old on算法与数据结构
plot(pri*10^6,p算法的有穷性是指ri_t算法与数据结构otal,'*-')
axi变量泵s算法的五个特性([0 400 0 50]);
hold off
end
%###########算法########算法是什么###########画算法剖析的意图是二阶CDIF
if算法是什么(c==2)
xpri=(1e-006:1e-003:400);
y=coeff1*time*10^6./xpri;%coeff1*time*10^6
figure(2)
plot(xpri,y) %门限
title('二阶CDIF图');
xlabel('PRI/us');ylabel('个数变量英文');
axis([0 400 0 40]);算法规划与剖析
h算法是什么old on
plot(pri*10^6,pri_total,'*-')
axis([0 400 0 50]);
h算法导论old off
end
%##############################画三阶CDIF
if(c==3)
xpri=(1e-006:1e-003:4变量的定义00);
y=变量类型有哪些coeff1*time*10^6./xpri;%coeff1*time*10^6
figure(3)
plot(xpri,y) %门限
title('三阶CDIF图');
xlabel('PRI/算法导论us');ylabel('个数');
axis([0 400 0 40]);
hold on
plot(pri*10^6,pri_total,'*-')
axis([0 400 0 50]算法导论);
hold off
end
%##############变量################画四阶CDIF
if(c==4)
xpri=(1e-006:1e-003:400);
y=coeff1*time*10^6./xpri变量英文;%coef变量之间的联系f1*time*10^6
figure(4)
plot(xpri,y) %门限
title('四阶CDIF图');
xlabel('PRI/us');ylabel('个数');
axis([0 400 0 40]);
hold on
plot(pri*10^6,pri_total,'*-')
axis([0 400 0 40]);
hold off
end
%再将具有两倍联络的pri挑出来,并且将个数得到,以便与门限比较变量是什么意思
if(pr算法是什么i_num>1)
m=1;
while m<=pri_num-1
n=m+1;
while n<=pri_num
if (( pri(n)>=2*pri(m)-3e-006 ) && ( pri(n)<=2*pri(m)+3e-006 )) %改正容限
pri_oncenum=pri_total(m);
pri_oncevalue=pri(m);
pri_tw变量之间的联系icenum=pri_total(n);
pri_tw变量min表明什么类型的变量icevalue=pri(n);
n=n+1;
%if (( pri_算法的有穷性是指oncenum&g算法工程师t;((coeff1*time*fs/pri_oncevalue)) ) && ( pri_twicenum>(coeff2*time*fs/pri_twicevalue)) )%coeff1*time*fs/pri_oncevalue算法导论门限值算法导论,可调
if (( p变量类型有哪些r算法剖析的意图是i_oncenum>(变量与函数(coeff1*time/pri变量英文_oncevalue)) ) && ( pri_twicenum>(co变量英文eff1*time/pri_twicevalu变量之间的联系e)) )%coeff1*time*fs/pri_oncevalue门限值,可调
pri_search(search_num)=pri_oncevalue;
pri_searchnum(search_num)=pri_oncenum;变量英文
search_num=search_num+1;
search_i变量min表明什么类型的变量d=1;
end
else
n=n+1;
end
end
m=m算法剖析的意图是+1;
end
end
%###############################
%检测查找标志位,判断是否查找
if(search_id>0)
search_id=0;
for m变量名的命名规矩=1:search_num-1
gate_算法工程师num=0;
for n=1:t算法工程师num_cdif(i)
%接连检索6个脉冲
tem_toa=pri_search(search_num-1)+toa_cdif(i,n);
for ii=n+1:tnum_cdif(i)
if (tem_toa>=toa_cdif(i,ii)-3e-006)&&(tem_toa<=toa_cdif(i,ii)+3e-006)%改正原本3,ii从2初步
gate_num=gate_num+1;
end
end
L=6;%原8
if gate_num>5
nn=算法的五个特性n;
%向前向后查找
for p=nn+6:-1:2%向前查找
tem_toa=toa_cdif(i,p)-pri_search(search_num-1);
for ww=算法导论p-1:-1:2
if (tem_toa>=toa_cdif(i,ww)-5e-006)&&am变量名p;(tem_toa<=toa_cdif(i,ww)+5e-006)%改正原5
sig_total=sig_total+1算法剖析的意图是;
data(sig_num,sig_total)=toa_cdif(i,ww);
end
end
end
三、作业效果
四、备注
版别:2014a