MATLAB仿真光的衍射(一)

衍射又称绕射,我们在生活中也可以观察到。

停电时,蜡烛的光使得物品在墙壁上形成投影。这个投影的轮廓,通常是模糊的,这就是光的衍射。

第一篇文章,我们从最简单的光的单缝衍射入手。

从理解的角度,光的干涉和衍射都是由于不同相位的光在同一点发生叠加形成的。

在单缝衍射中,当缝的宽度较小,是光的波长量级,衍射现象就会很明显(不确定原理导致)。

我们假设这条缝分为上下两部分(当然也可以是分成4、6、8......段)

上下两部分的光分别出射,在观察屏上分别形成自己的光分布。

对于观察屏上的同一点,上下两部分光到该点的光程不同、相位不同,产生相位差。

我们知道,分成两部分其实是我们自己假设的,这本质上是一束光,自然满足干涉光的三个条件。

此时,可以得出结论,一条缝中透射的光在光屏上产生了光程差,形成干涉。

由于光屏上不同位置的点,上下两部分光的光程差也不同,所以光屏上出现了明暗条纹。

具体的推导网上有很多,这里只关注matlab仿真的相关部分,程序代码如下:

clear;
lambda = 632.8e-9;
d = 0.05e-3;
L = 1;
H = 0.1;
ScreenX = 1048;%观察屏横向元素
ScreenY = 350;%观察屏纵向元素
x = linspace(-H/2,H/2,1048);
theta = atan(x/L);
I = (sin(d*pi*sin(theta)/lambda)./(d*pi*sin(theta)/lambda)).^2;
II = repmat(I,[ScreenY 1]);%用I的结果填充ScreenY*1的矩阵

subplot(2,1,1)
imshow(nthroot(II,5))%开n次方根\热图
colormap('gray')
subplot(2,1,2)
plot(x,I)
xlabel('x /m');
ylabel('相对光强')

结果如下:

可以看出,图中单缝衍射的条纹非常清晰。

中央区域为亮条纹,这个很好理解。上下两部分的光到达中心位置的距离是相同的。

同时,从中央向两侧的亮条纹绝对亮度逐渐降低,这和光的干涉形成的明暗条纹不同。

参考《高等光学仿真——光波导、激光》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

matlab练习生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值