📄 mprit.m
字号:
%修改PRI变换法分选程序
%作用:对已有脉冲序列进行修改PRI分选,绘制PRI谱图,以及门限
%需要先生成雷达信号
%作者:巫书航
%时间:2007年11月13日
tmin=0.5;tmax=10; %PRI取值范围设定
K=200; %PRI箱个数,K越大,PRI变换图越精确
doum=0.05; %脉冲抖动上限
b=(tmax-tmin)/K; %每个PRi箱宽度,此处也代表求得PRI的精度
k=[1:K];
tk=(k-0.5)*b+tmin; %每个PRI箱的中心坐标
for tk1=1:length(tk)
bk(tk1)=max([b,2*doum*tk(tk1)]); %每个PRI箱宽度
end
NN=length(C);
Zi0=0.03;
Dk=zeros(size(tk)); %PRI变换函数Dk
Ck=zeros(size(tk)); %标记脉冲数函数
Ok=zeros(size(tk)); %时间起点函数
JI=zeros(size(tk)); %标记函数
for nn=2:NN
for mm=1:nn-1
tao=C(nn)-C(mm); %对脉冲到达时间进行重复相减计算差值
if tao>(1-doum)*tmin&tao<(1+doum)*tmax, %防止超限制的处理
for l=1:K
if tao>tk(l)-bk(l)/2&tao<tk(l)+bk(l)/2,
Ck(l)=Ck(l)+1;
if JI(l)==0,Ok(l)=C(nn);JI(l)=1;
end %若PRI箱第一次使用,则选时间起点为C(nn),并标记PRI箱已使用
Yi=(C(nn)-Ok(l))/tk(l);
vv=floor(Yi+0.4999);
if vv>0;
if (vv==1&C(mm)==Ok(l))||(vv>=2&abs(Yi/vv-1)<=Zi0),
Ok(l)=C(nn); %转换时间起点
end
end
Yii=(C(nn)-Ok(l))/tk(l); %计算相位
Dk(l)=Dk(l)+exp(2*pi*i*Yii); %更新PRI变换值
end
end
end
end
end
for ll=1:K
Dk(ll)=abs(Dk(ll)); %对Dk取模
end
plot(tk,Dk,'k'); %做出PRI变换图
Dk1=zeros(size(tk));
%设定门限
aa=0.3;
bb=0.15;
cc=3;
for v=1:length(tk)
Men1(v)=aa*TT/tk(v); %代表以tt为PRI的脉冲个数 150是观察时间
Men2(v)=bb*Ck(v); %为了消除子谐波
Men3=cc*(TT*(length(C)/TT)^2*bk(v))^0.5; %为消除噪声
Dk1(v)=max([Men1(v),Men2(v),Men3]);
end
plot(tk,Dk,'k',tk,Dk1,'k'); %做出PRI变换图
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -