鱼鹰
2008-09-03, 14:09
求助:Matlab循环绘图,为何我只能得到最后一条曲线,请高手指点一下,程序如下:
clf;
b=exp(-5*2*10^2*i);
c=exp(-5*17*4*pi^2*i/40^2);
t0=0:1:600;
z0=zeros(size(t0));
G=zeros(1,20);
A0=abs(ifft(c*fft(b*exp(-1*(t0-300).^2/(2*40^2)))));
z1=5*ones(size(t0));
A1=abs(ifft(c*fft(b.*A0)));
plot3(z1,t0,A1)
Ak=A1;
p=2;
for k=2:1:20
if p<20
zp=k*z1;
Ap=abs(ifft(c*fft(b.*Ak)));
plot3(zp,t0,Ap);
Ak=Ap
p=p+1;
end
end
xlabel('z(km)');ylabel('t(ps)');axis([0 100 0 600 0 1]);
本想把中间值存入数组的但不知该如何实现,请高手帮忙看看
clf;
b=exp(-5*2*10^2*i);
c=exp(-5*17*4*pi^2*i/40^2);
t0=0:1:600;
z0=zeros(size(t0));
G=zeros(1,20);
A0=abs(ifft(c*fft(b*exp(-1*(t0-300).^2/(2*40^2)))));
z1=5*ones(size(t0));
A1=abs(ifft(c*fft(b.*A0)));
plot3(z1,t0,A1)
Ak=A1;
p=2;
for k=2:1:20
if p<20
zp=k*z1;
Ap=abs(ifft(c*fft(b.*Ak)));
plot3(zp,t0,Ap);
Ak=Ap
p=p+1;
end
end
xlabel('z(km)');ylabel('t(ps)');axis([0 100 0 600 0 1]);
本想把中间值存入数组的但不知该如何实现,请高手帮忙看看