线性调频信号干扰仿真
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
function
[y]=pc_matched_filiter_53(b,taup,Rmax,scat_range,RCS,val,f0,delay,val1,N_A,val2,val3,val4,val5,R1,R max2,val6,val7)
if nargin==0
Rmax=40;taup=10;b=30;scat_range=[15];RCS=[1];delay=300;f0=[0];val=0;val1=0;N_A=1;val2=1;val3= 0;val4=0;val5=0;R1=10;Rmax2=20;val6=0;val7=0;
end
unit=1e3;
unit2=1e6;
unit3=1e-6;
Rmax=Rmax*unit;
R1=R1*unit;
Rmax2=Rmax2*unit;
b=b*unit2;
taup=taup*unit3;
delay=delay*unit3;
scat_range=scat_range*unit;
f=1e6.*f0;
c = 3.e8;
Rwid=Rmax2-R1; %receive window in meter
Twid=2*Rwid/c; %receive window in second
Fs=5*b;Ts=1/Fs; %sampling frequency and sampling spacing Nwid=ceil(Twid/Ts); %receive window in number
% number of samples
n = fix(5 * taup * b);%n=2500
s = taup * c /2;%s=750.0000
Npoints = ceil(Rmax * n /s);%终端Npoints =1334
% calculate sampling interval
%线性调频信号::::::::::::::::::
t0=linspace(-taup/2,taup/2,n);
replica = exp(j * pi * (b/taup) .* t0.^2);
%固定目标回波::::::::::::::::::::::::::::::
t = linspace(0,2*Rmax/c,Npoints);
t2=linspace(2*R1/c,2*Rmax2/c,Nwid);
M=length(scat_range);
td=ones(M,1)*t-2*scat_range'/c*ones(1,Npoints);
td2=ones(M,1)*t2-2*scat_range'/c*ones(1,Nwid);
%能量衰减参数L::::::::::::::::::::::::::::::
L1=scat_range*1e-6;
L=L1.^2.5;
y=RCS./L*(exp(j*pi*(b/taup)*(td).^2).*(abs(td) y2=RCS./L*(exp(j*pi*(b/taup)*(td2).^2).*(abs(td2) %移频干扰val7:::::::::::::::::::::::::::::::: if ~val7 %延时干扰val6:::::::::::::::::::::::::::::::::: if~val6 replica11=y; replica21=y2; else replica11=RCS./L*(exp(j*pi*(b/taup)*(td-delay).^2).*(abs(td) replica21=RCS./L*(exp(j*pi*(b/taup)*(td2-delay).^2).*(abs(td2) end else if~val6 replica11=y; replica21=y2; else replica11=RCS./L*(exp(j*pi*(b/taup)*(td-delay).^2).*(abs(td) replica21=RCS./L*(exp(j*pi*(b/taup)*(td2-delay).^2).*(abs(td2) end replica1=exp(-j*2*pi*f.*td); replica11=replica11.*replica1; replica2=exp(-j*2*pi*f.*td2); replica21=replica21.*replica2; end if val4 noise=sqrt(N_A)*randn(size(replica)); plot(t,noise);ylabel(' noise');xlabel('time in seconds');grid; else if val3 if val2 plot(t0,real(replica));ylabel('Real (part) of replica');xlabel('time in seconds');grid; else sampling_interval = taup / n; freqlimit = 0.5/ sampling_interval; freq = linspace(-freqlimit,freqlimit,n); plot(freq,fftshift(abs(fft(replica))));ylabel('Spectrum of replica');xlabel('Frequency in Hz');grid; end else if val if val1 noise=sqrt(N_A)*randn(1,length(y)); y=y+noise; end %A型和A/R型显示器选择val5:::::::::::::::::: if ~val5 subplot(20,20,[1 10 21 30 61 70 81 90 121 130 161 170 221 230 261 270 321 330 361 370]); plot(t*1e6,real(y),'B');xlabel('Time in u sec');ylabel('Amplitude');ylabel ('Uncompressed echo');grid; else subplot(20,20,[1 10 21 30 61 70 81 90 121 130 141 150 161 170]);