matlab傅里叶光学仿真,计算傅里叶光学实现衍射图样的计算

作者分享了一款自行开发的程序,能够计算任意孔的衍射图样,支持多种孔形状输入,包括图片形式,实现了从二维到三维图样的转换。

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

前一阵,个人兴趣搞了搞计算傅里叶光学,变了一个计算任意孔的衍射图样的程序,挺好玩的!本来还想整理一下,写篇论文,结果老板看做的不错,想让我转光学,我了个去,这岂不是要撞墙了,算了,不写论文了,把程序共享一下吧!

程序比较长,就不贴代码了(部分函数的头注释没写,不过稍微看看,就能看懂),只展示一下效果吧,运行Diffraction_System.m文件,显示如下图

a4c26d1e5885305701be709a3d33442f.png

空白区域点右键,可以弹出快捷菜单如下

a4c26d1e5885305701be709a3d33442f.png

在衍射屏中可以设置屏上孔的形状

a4c26d1e5885305701be709a3d33442f.png

矩形孔需要两个参数,圆孔需要一个参数,图片可以弹出选择图片对话框选择图片,正弦形光栅有3个参数,矩形光栅有4个,不过参数个数可以不用管,需要3个参数的,只设置一个参数,程序会自动生成另两个。当选择a,即选择图片时,弹出如下对话框选择图片

a4c26d1e5885305701be709a3d33442f.png

选择图片,即可计算任意图片的衍射图样。那个BlackScreen.jpg是一个模板,可以用绘图工具打开修改,然后另存为,然后显示它的衍射图样。

其他还有参数选择对话框,及gamma校正对话框

a4c26d1e5885305701be709a3d33442f.pnga4c26d1e5885305701be709a3d33442f.png

如得到如下结果

a4c26d1e5885305701be709a3d33442f.png

单击结果可以形成三维图,如

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

结果是不是很炫,很好玩!

程序本来想放到DBank网络硬盘,但貌似最近上传不上去啊,有需要程序联系我吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值