news 2026/4/16 8:59:57

基于光学仿真的物理光学研究:傅立叶变换与衍射光场计算的深入探索

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于光学仿真的物理光学研究:傅立叶变换与衍射光场计算的深入探索

光学仿真,物理光学,傅立叶光学,衍射光场计算。

光场计算这玩意儿看起来玄乎,实际玩起来跟搭乐高似的有意思。咱就拿菲涅尔衍射举个栗子,用Python搞个光场传播模拟。先整块方形孔当光源,波长532nm绿光,传播距离0.5米,代码开头先摆参数:

import numpy as np import matplotlib.pyplot as plt wavelength = 532e-9 # 纳米转米 k = 2*np.pi/wavelength distance = 0.5 # 传播距离 size = 0.01 # 计算区域尺寸10cm N = 2048 # 采样点数

采样间隔得算准了,不然会出现频谱混叠。这里dx=size/N,对应空间频率上限1/(2dx),保证采样定理满足。接着初始化光场,整个方形孔:

x = np.linspace(-size/2, size/2, N) X, Y = np.meshgrid(x, x) aperture = np.zeros_like(X) aperture[np.abs(X)<0.001] = 1 # 宽度2mm的狭缝 aperture[np.abs(Y)>0.002] = 0 # 高度限制

这时候直接傅里叶变换肯定翻车,得用角谱法。传播过程本质是空间频域乘相位因子:

def angular_spectrum(u_in, wavelength, distance, dx): fx = np.fft.fftshift(np.fft.fftfreq(N, dx)) FX, FY = np.meshgrid(fx, fx) H = np.exp(1j * 2*np.pi * distance * np.sqrt(1/wavelength**2 - FX**2 - FY**2)) U = np.fft.fft2(u_in) U_prop = U * H return np.fft.ifft2(U_prop)

这里有个坑:当空间频率超过1/λ时,sqrt会出现虚数,对应倏逝波。咱们做远场计算时可以忽略这部分,直接取实部。跑完仿真看结果:

result = angular_spectrum(aperture, wavelength, distance, x[1]-x[0]) plt.imshow(np.abs(result)**2, cmap='jet') plt.show()

这时候能看到典型的衍射条纹,但边缘可能出毛刺。别慌,八成是采样不足,把N从2048调到4096立马见效。搞物理光学仿真就像打游戏通关,参数调对了比发paper还爽。

光学仿真,物理光学,傅立叶光学,衍射光场计算。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/7 14:11:26

SGMICRO圣邦微 SGM3157YC6/TR SC70-6 模拟开关/多路复用器

特性工作电压&#xff1a;1.8V至5.5V导通电阻&#xff1a;5.0V时典型值为4.5Ω快速开关时间&#xff1a;导通时间20ns&#xff0c;关断时间15ns高带宽&#xff1a;300MHz高关断隔离度&#xff1a;10MHz时为 - 51dB轨到轨操作TTL/CMOS兼容先断后通切换扩展工业温度范围&#xff…

作者头像 李华
网站建设 2026/4/8 14:05:20

计算机毕业设计|基于springboot + vue选课管理系统(源码+数据库+文档)

选课管理 目录 基于springboot vue选课管理系统 一、前言 二、系统功能演示 三、技术选型 四、其他项目参考 五、代码参考 六、测试参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 基于springboot vue选课管理系统 一、前言 博主介绍&#xff1a;✌️大…

作者头像 李华
网站建设 2026/4/11 15:34:08

基于java + vue情绪宣泄平台系统(源码+数据库+文档)

情绪宣泄平台 目录 基于springboot vue情绪宣泄平台系统 一、前言 二、系统功能演示 三、技术选型 四、其他项目参考 五、代码参考 六、测试参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 基于springboot vue情绪宣泄平台系统 一、前言 博主介绍&…

作者头像 李华
网站建设 2026/4/15 22:48:04

Vue3+Cesium实现高度雾

本学习系列以Cesium Vue3 Typescriptelementplus作为主要技术栈&#xff0c;后续会循序渐进&#xff0c;持续探索Cesium的高级功能&#xff0c;敬请期待。欢迎关注威信公众号“webgis学习”。详情请查阅原文 Vue3Cesium实现高度雾https://mp.weixin.qq.com/s/PjHSyafOAgmPK-2…

作者头像 李华
网站建设 2026/4/15 10:51:01

酒店预订|基于java + vue酒店预订系统(源码+数据库+文档)

酒店预订系统 目录 基于springboot vue酒店预订系统 一、前言 二、系统功能演示 三、技术选型 四、其他项目参考 五、代码参考 六、测试参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 基于springboot vue酒店预订系统 一、前言 博主介绍&#xff1a;✌…

作者头像 李华