MATLAB仿真光的衍射(五)

 直边的菲涅尔衍射。

之前考虑的衍射均为光屏离物体(如小孔)较远的情况,也就是夫琅禾费衍射情况,

对于距离较近的菲涅尔衍射,我们很难得到确定的解析解。

不过,特殊的菲涅尔衍射情况比如:圆孔、圆盘、直边是可以解出的。

这里以直边的菲涅尔衍射为例,计算结果。

光强的表达式如下:

I=\frac{1}{2}I_0\left\{\left[\frac{1}{2}-C(v_0)\right]^2+\left[\frac{1}{2}-S(v_0)\right]^2\right\}

其中:

C\left (v_0 \right) =\int_ {0} ^{v_0} {cos(\frac{\pi t^2}{2}) dt}

S\left (v_0 \right) =\int_ {0} ^{v_0} {sin(\frac{\pi t^2}{2}) dt}

v_0=\sqrt{\frac{2}{\lambda d}}x

菲涅尔正弦和余弦积分可以直接调用matlab中的函数进行计算。

clear
close all
ScreenX = 1048;
ScreenY = 350;
lambda = 632.8e-9;
d = 10;
x = 0.02;

upsilon0 = linspace(-sqrt(2/(lambda*d))*x,sqrt(2/(lambda*d))*x,ScreenX);
I = 1/2*((1/2-fresnelc(-upsilon0)).^2+(1/2-fresnels(-upsilon0)).^2);
II = repmat(I,[ScreenY 1]);

subplot(2,1,1)
imshow(II);
subplot(2,1,2)
plot(linspace(-x/2,x/2,ScreenX),I)
grid on
ylabel('相对光强');
xlabel('x/m');

结果:


可以看出:

1、对于无限长的直边衍射,在被遮盖的区域(图中左边部分)几乎没有光透过,也不会出现明暗条纹现象。

2、从被遮盖区域向无遮盖区域方向看,首先出现一个最高的亮度(光强峰值),之后呈现阻尼震荡的形式。

3、无遮盖区域的条纹间隔逐渐减小,条纹宽度逐渐减小。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

matlab练习生

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

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

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

打赏作者

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

抵扣说明:

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

余额充值