MATLAB仿真实现杨氏实验,画出双缝干涉条纹及光强分布,波长450nm,两小孔距离1.5mm,小孔距光屏1m
时间: 2024-06-13 07:08:49 浏览: 224
模拟杨氏双缝干涉实验的M程序_用MATLAB进行仿真_杨氏干涉_matlab
5星 · 资源好评率100%
以下是MATLAB仿真实现杨氏实验的代码,可以画出双缝干涉条纹及光强分布:
```matlab
% 定义常量
wavelength = 450e-9; % 波长450nm
d = 1.5e-3; % 两小孔距离1.5mm
D = 1; % 小孔距光屏1m
k = 2 * pi / wavelength; % 波数
% 定义坐标系
x = linspace(-0.02, 0.02, 1000); % 光屏上的x坐标
y = linspace(-0.02, 0.02, 1000); % 光屏上的y坐标
[X, Y] = meshgrid(x, y);
% 计算双缝干涉光强分布
r1 = sqrt((X - d/2).^2 + Y.^2);
r2 = sqrt((X + d/2).^2 + Y.^2);
I = (cos(k*r1) + cos(k*r2)).^2;
% 绘制双缝干涉条纹及光强分布
figure;
subplot(1,2,1);
imagesc(x, y, I);
colormap(gray);
axis image;
title('双缝干涉条纹');
xlabel('x (m)');
ylabel('y (m)');
subplot(1,2,2);
plot(x, I(500,:));
title('光强分布');
xlabel('x (m)');
ylabel('I');
```
运行以上代码,可以得到双缝干涉条纹及光强分布的图像。
阅读全文