求完善程序matlablam=500e-9;N=2;a=2e-4;z=5;d=3*a;xm=5*lam*z/a;y0=xm;n=1001;x0=linspace(-xm,xm,n);for i=1:nsinphi=x0(i)/z;alpha=pi*a*sinphi/lam;beta=pi*d*sinphi/lam;B(i,:)=(sin(alpha)./alpha).^2.*(sin(N*beta)./sin(beta)).^2;B1=B/max(B);end取B1的

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/19 04:35:43
求完善程序matlablam=500e-9;N=2;a=2e-4;z=5;d=3*a;xm=5*lam*z/a;y0=xm;n=1001;x0=linspace(-xm,xm,n);fori=1:ns

求完善程序matlablam=500e-9;N=2;a=2e-4;z=5;d=3*a;xm=5*lam*z/a;y0=xm;n=1001;x0=linspace(-xm,xm,n);for i=1:nsinphi=x0(i)/z;alpha=pi*a*sinphi/lam;beta=pi*d*sinphi/lam;B(i,:)=(sin(alpha)./alpha).^2.*(sin(N*beta)./sin(beta)).^2;B1=B/max(B);end取B1的
求完善程序matlab
lam=500e-9;N=2;
a=2e-4;z=5;d=3*a;
xm=5*lam*z/a;y0=xm;
n=1001;
x0=linspace(-xm,xm,n);
for i=1:n
sinphi=x0(i)/z;
alpha=pi*a*sinphi/lam;
beta=pi*d*sinphi/lam;
B(i,:)=(sin(alpha)./alpha).^2.*(sin(N*beta)./sin(beta)).^2;
B1=B/max(B);
end
取B1的第451到484个数画曲线,其余数等于0.

求完善程序matlablam=500e-9;N=2;a=2e-4;z=5;d=3*a;xm=5*lam*z/a;y0=xm;n=1001;x0=linspace(-xm,xm,n);for i=1:nsinphi=x0(i)/z;alpha=pi*a*sinphi/lam;beta=pi*d*sinphi/lam;B(i,:)=(sin(alpha)./alpha).^2.*(sin(N*beta)./sin(beta)).^2;B1=B/max(B);end取B1的
画图的话 直接plot(B1(451:484))就行 这样的横坐标是0到35
或者 m=451:484;plot(m,B1(451:484)),这样的横坐标是451到485
其他的不用画就好了啊
要不然就得把B1的其余数强制归0
B1(1:450)=0;B1(485:1001)=0;
plot(B1)
这样的话横坐标是从0到1001