matlab 关于双缝干涉的 谁能帮我注释啊 详细点的 包括每个步骤和代码是干什么的 我基本什么都不懂 谢谢了
两相干光源到接收屏上P点距离r1=(D2+(y-a/2)2)1/2, r2=(D2+(y+a/2)2)1/2,相位差
Φ=2π(r2-r1)/λ,光强I=4I0cos2(Φ/2)
clear
lam=500e-9
a=2e-3;D=1;
ym=5*lam*D/a;xs=ym;
n=101;ys=linspace(-ym,ym,n);
for i=1:n
r1=sqrt((ys(i)-a/2).^2+D^2);
r2=sqrt((ys(i)+a/2).^2+D^2);
phi=2*pi*(r2-r1)./lam;
B(i,:)=sum(4*cos(phi/2).^2);
end
N=0;
Br=(B/4.0)*N
subplot(1,2,1)
image(xs,ys,Br);
colormap(gray(N));
subplot(1,2,2)
plot(B,ys)
答案:clear
lam=500e-9;%λ=lam
a=2e-3;D=1;%变量a,D
ym=5*lam*D/a;xs=ym;
n=101;ys=linspace(-ym,ym,n);%在范围【-ym ym】之间产生n个数据
for i=1:n
r1=sqrt((ys(i)-a/2).^2+D^2);%r1表达式的matlab书写形式
r2=sqrt((ys(i)+a/2).^2+D^2);%r2表达式的matlab书写形式
phi=2*pi*(r2-r1)./lam;%);%);%Φ表达式的matlab书写形式
B(i,:)=sum(4*cos(phi/2).^2);%光强的matlab书写形式
end
N=0;
Br=(B/4.0)*N;
subplot(1,2,1)%把图形画在1行2列图像中的第一幅图中,
image(xs,ys,Br);%画图函数
colormap(gray(N));%控制颜色
subplot(1,2,2)%把图形画在1行2列图像中的第二幅图中,
plot(B,ys) ;%画图函数
上一个:用MATLAB实现1+1=2 的程序代码
下一个:怎么用matlab画y=9*x*e^(-2*x^2),急求代码