麻烦各位MATLAB大侠,看下这个程序怎么修改,,拜托了,,谢谢!
clear;
Lambda=input('输入光的波长(单位为nm):取500');
Lambda=Lambda*1e-9;
d=input('输入两个缝的间距(单位为nm):(取2)');
d=d*0.001;
z=input('输入缝到屏的距离(单位为m):(取1)');
ymax=5*Lambda/d;xs=ymax;
Ny=101;ys=linspace(-ymax,ymax,Ny);
for i=1:Ny
L1=sqrt((ys(i)-d/2).ˆ2+Zˆ2);
L2=sqrt((ys(i)+d/2).ˆ2+Zˆ2);
%Phi=2*pi*(L2-L1)/Lambda;
%B(i,:)=4*cos(phi/2).ˆ2;
N1=11,dL=linspace(-0.1,0.1,N1);
Lambda1=Lambda*(1+dL');
Phi1=2*pi*(L2-L1)./Lambda1;
B(i,:)=sum(4*cos(phi1/2).?2)/N1;
end
NCLevels=255;
Br=(B/4.0)*NCLevels;
subplot(1,4,3),image(xs,ys,Br);
set(gct,'color','w')
colormap(gray(NCLevels));
subplot(1,4,4),plot(B(:),ys)
pause,subplot(1,1,1)
输出结果是:“??? z=input('输入缝到屏的距离(单位为m):(取1)');
|
Error: Missing variable or function. ”
我该怎么修改呢,,麻烦大侠看下,,拜托了,,谢谢,感激不尽! 展开
clear;
Lambda=input('输入光的波长(单位为nm):取500');
Lambda=Lambda*1e-9;
d=input('输入两个缝的间距(单位为nm):(取2)');
d=d*0.001;
z=input('输入缝到屏的距离(单位为m):(取1)');
ymax=5*Lambda/d;xs=ymax;
Ny=101;ys=linspace(-ymax,ymax,Ny);
for i=1:Ny
L1=sqrt((ys(i)-d/2).^2+z.^2);
L2=sqrt((ys(i)+d/2).^2+z.^2);
phi=2*pi*(L2-L1)/Lambda;
B(i,:)=4*cos(phi/2).^2;
N1=11,dL=linspace(-0.1,0.1,N1);
Lambda1=Lambda*(1+dL');
phi1=2*pi*(L2-L1)./Lambda1;
B(i,:)=sum(4*cos(phi1/2).^2)/N1;
end
NCLevels=255;
Br=(B/4.0)*NCLevels;
subplot(1,4,3),image(xs,ys,Br);
set(gca,'color','w')
colormap(gray(NCLevels));
subplot(1,4,4),plot(B(:),ys)
pause,subplot(1,1,1)
你看看这个效果怎么样,因为我不知道这个的物理背景,我只是做了一些语法的检查
2024-09-19 广告