干涉衍射仿真实验(python仿真)

本文介绍了一个使用Python进行双缝干涉仿真的实验,通过numpy和matplotlib库绘制仿真图,展示了光的波动性和干涉现象。代码中详细说明了双缝实验的参数设置及仿真过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

干涉衍射仿真实验

简介

  软件环境,python 3.6,配合第三方库numpy和matplotlib绘制双缝干涉仿真图

衍射实验

  获取代码请转至此处
  单缝衍射
在这里插入图片描述
  光栅衍射
在这里插入图片描述

双缝干涉

##############
#利用python仿真双缝实验
#时间:2018/12/31
#作者:cclplus
#仅供学习交流使用
#如有疑问或者需求,可以联系作者707101557@qq.com

import numpy as np
import matplotlib.pyplot as plt
import math

#表示长度的物理量单位m
#波长
wavelength=float(5.0*10**-9)
#双缝间距
d_slit=float(0.002)
#缝到屏幕的距离
d_screen=float(1.0)

ym=5.0*wavelength*d_screen/d_slit
xs=ym
distance=ym/50.0
ys=np.arange(-ym,ym,distance)
len_dis=len(ys)
B = [([0.0] * len_dis) for i in range(len_dis)]
Br = [([0.0] * len_dis) for i in range(len_dis)]
N=255.0
for i in range(0,len_dis):
    r1=math.sqrt((ys[i]-d_slit/2)**2+d_screen**2)
    r2=math.sqrt((ys[i]+d_slit/2)**2+d_screen**2)
    phi=2.0*math.pi*(r2-r1)/wavelength
    temp=4.0*math.cos(phi/2)**2
    for j in range(0,len_dis):
        B[i][j]=temp
        Br[i][j]=B[i][j]/4.0*N

plt.title("double_slit_experiment")
plt.imshow(Br, cmap='gray')
plt.show()

仿真结果图
在这里插入图片描述

参考文献

[1]:光学教程第五版(姚启钧编著)高等教育出版社 ISBN 978-7-04-040082-3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

程序员AlbertTu

感谢支持

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

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

打赏作者

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

抵扣说明:

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

余额充值