当前位置: 首页 > news >正文

基于全介质超表面模型的宽带任意阶完美涡旋光束生成及fdtd仿真研究

宽带任意阶 完美涡旋光束 超表面模型 fdtd仿真 复现论文:2021年LPR:Generation of Perfect Vortex Beams by Dielectric Geometric Metasurface 论文介绍:全介质超表面实现宽带任意阶次完美涡旋光束的产生,完美涡旋光束是涡旋光束的一种,其涡旋图像不随着拓扑荷l的变化而变化,同时可以通过调节参数实现拓扑图像从圆变向椭圆的过程,应用于光学加密和全息等领域。 案例内容:主要包括文章的两种完美涡旋光束生成的超表面模型,一种是不同阶次的完美涡旋光产生,其涡旋图案基本不变,另一种是改变参数a和b,其涡旋图案变成椭圆。 所有结构采用二氧化钛介质单元执行几何相位来构建; 案例包括fdtd模型、fdtd设计脚本、Matlab计算代码和复现结果,以及一份word教程,附带计算多种理论结构光场相位分布的脚本,可以得到任意涡旋光、贝塞尔光和完美涡旋光束。

清晨调试代码的时候突然发现,在FDTD里生成的完美涡旋光斑居然自己会"变形术"。就像哈利波特里的变形课教授说的:"改变形态不改变本质,这才是高阶魔法"。今天要聊的这个超表面设计,正是用二氧化钛纳米柱玩出了类似的相位魔术。

咱们先拆解核心套路——几何相位超表面。每个二氧化钛纳米柱就像个微型方向盘,当圆偏振光打上去时,它们的旋转角度直接决定了出射光的相位延迟。这里有个绝妙的关系式:φ=2θ,其中θ是纳米柱的旋转角度。通过排列这些"方向盘"的角度分布,就能在平面上编织出想要的相位图案。

来看第一个Matlab相位生成代码片段:

function phase = PV_phase(l, a, b, x, y) rho = sqrt((x/a).^2 + (y/b).^2); phase = mod(l*atan2(y, x) + 2*pi*rho, 2*pi); end

这个函数藏着三个玄机:拓扑荷数l控制相位旋绕次数,a和b这对孪生参数负责拉伸空间坐标。当a≠b时,原本规整的同心圆环相位就会像橡皮泥一样被拉成椭圆。参数rho的计算方式很有意思,它把笛卡尔坐标系下的坐标用椭圆方程归一化了,相当于在数学上做了空间变形。

FDTD建模时有个坑要注意:纳米柱的占空比。我试过用脚本批量生成不同尺寸的纳米柱:

for i=1:Nx for j=1:Ny create_rect(x_pos[i], y_pos[j], width[i][j], height[i][j]); set_material('TiO2'); set_rotation(angle[i][j]); end end

这里width和height不是固定值,而是根据目标相位梯度动态调整的。太密集会导致相邻纳米柱耦合,太稀疏又会降低效率。经过多次试错,发现当纳米柱间距保持在400nm左右时,在可见光波段表现最佳。

仿真结果验证阶段有个惊艳现象:当保持a/b=1时,即便拓扑荷从l=3变到l=5,光斑直径几乎不变。这完美印证了论文说的"尺寸稳定性"。但一旦调整a/b比例,比如设为1.5,原本圆润的亮环就像被压扁的自行车轮胎,变成了标准椭圆。

最后分享一个调试小技巧:用近场监视器捕捉相位分布时,记得设置

monitor.set("frequency points", 3) monitor.set("wavelengths", [532e-9, 635e-9, 780e-9])

这样可以同时观察多个波长的表现,验证宽带特性。有次忘记设置多频点,结果误以为只在532nm工作,闹了个大乌龙。

这种超表面设计就像光学版的乐高积木,通过精心编排纳米柱的旋转舞蹈,让光波在传播过程中自动编织出想要的漩涡图案。下次如果再碰到光学加密的需求,或许可以试试用这种相位魔术师来生成密钥光束。

http://www.cnnetsun.cn/news/9000.html

相关文章:

  • Wan2.2-T2V-A14B生成丝绸之路历史变迁动态地图
  • [Windows] 自动剪辑音频气口空隙工具
  • ANTLR4 C++目标终极实战指南:从零构建高性能语法解析器
  • 小兔鲜儿UniApp微信小程序开发实战:从零到上线的完整指南
  • HackRF PortaPack H1固件配置完整指南
  • GPT-5.2的发布:将如何影响未来的创作与文化传播?
  • 2025年内容优化工具选型指南:5款热门产品实测,精准匹配全场景需求
  • ArkOS开源游戏系统完整指南:从入门到精通
  • 从开发转到安全渗透工程师,是我做的最对的决定
  • 60亿消息表如何分库分表?
  • 干货分享,大厂内部压测方案设计
  • Python_work3
  • AFLplusplus模糊测试实战:10个高效调试技巧解决常见问题
  • 探索三电平T型LCL并网逆变器的双闭环PI + SVPWM控制仿真之旅
  • VSCode如何实时连接IBM Quantum?一文掌握核心配置参数(含实操代码)
  • python如何获取字符串最后一个字符
  • 赋能个体,智创全球——CCF 程序员大会“个人出海论坛”圆满落幕
  • 零基础学CMD:从关机命令开始的Windows命令行入门
  • Wan2.2-T2V-A14B与Runway Gen-3的技术差异全面对比
  • 为什么90%的工程师写不好Agentic Apps配置?Docker Compose权威解析
  • 【Azure量子开发权威解析】:掌握这8个考点,轻松拿下MCP认证
  • 第三方接口调用不用愁!JNPF 数据接口神技,鉴权 + 变量提取一键搞定
  • LED显示屏话筒生产厂家
  • 企业级Java开发:Eclipse定制化安装全攻略
  • 字节面试:如何测试RocketMQ、RocketMQ?测试点有哪些?
  • 访答:数字化时代的知识管理新范式
  • 基于Hadoop的游戏在线时长大数据分析系统毕业设计项目源码
  • 《智能座舱时代:车载HMI渲染引擎的选型、架构与实践》第 1 章 车载座舱对渲染的特殊要求
  • WiFi 定位的基本原理与技术
  • 测试自动化框架设计与最佳实践:构建高效测试体系的路径