Matlab 复现:分数阶&整数阶OAM 变换

2020年,中山大学团队在Physical Review Letters提出螺旋坐标变换理论,首次实现OAM 拓扑荷任意有理数乘除;上海交通大学团队在此基础上,于Advanced Photonics Nexus发表重要成果,将分数阶OAM通过变换精准转为整数OAM并完成低串扰分选。本文结合两篇期刊核心理论,使用 Matlab 完整复现 分数阶OAM和整数阶OAM的双向变换

一、理论部分

1 光学坐标变换基础

在近轴近似下,平行光在间距为 d 的输入平面 (x,y) 与输出平面 (u,v) 之间传播时,遵循由广义斯涅尔定律描述的坐标变换关系,输入平面所需加载的变换相位满足:

Qₓ = k·(u - x)/d, Qᵧ = k·(v - y)/d (1)

其中 k 为自由空间波矢,Q(x,y) 为坐标变换相位。通过设计不同的变换相位,可实现多种光束空间坐标映射操作。

2 螺旋坐标变换法则

论文采用螺旋极坐标体系,输入平面坐标为 (r,θ),输出平面坐标为 (ρ,φ),螺旋坐标变换的具体形式为:

ρ = c·r^(-1/n), φ = θ/n (2)

式中 c 为任意常数,n 为变换因子。该变换可将输入光场沿角向进行 n 倍压缩或拉伸。

基于式(1)与式(2),可推导得到输入平面所需的螺旋变换相位 Q₁(r,θ):

Q₁(r,θ) = k/d c·r\^(1-1/n)/(1-1/n) · cos(θ - θ/n) - r²/2 (3)

为补偿螺旋变换相位与自由空间传播带来的相位偏差,输出平面需加载校正相位 Q₂(ρ,φ):

Q₂(ρ,φ) = -Q₁ - k·√(r² + ρ² - 2rρ·cos(φ - θ) + d²) (4)

分数阶轨道角动量(FOAM)模式具有角向相位不连续特性,经螺旋变换后仍存在相位跳变,因此需叠加额外补偿相位 P(ρ,φ):

P(ρ,φ) = 2πt·nφ/(2π), t = mod(ℓ_in, 1) (5)

其中 t 为输入拓扑荷 ℓ_in 的小数部分,用于消除角向相位突变。

3 涡旋光场的变换与传输

入射高斯涡旋光束的束腰半径为 w₀,拓扑荷为 ℓ_in,其输入光场振幅分布为:

E₁(r,θ) = 1/w₀ · (r√2/w₀)^|ℓ_in| · exp(-r²/w₀²) · exp(iℓ_inθ) (6)

经螺旋坐标变换与相位校正后,输出平面 (ρ,φ) 处的光场为:

E₂(ρ,φ) = -i·exp(ikd)·|n|·(r/ρ)·E₁(r,θ)

结合螺旋变换的角向关系 θ = nφ,输出光场的相位因子可写为 exp(inℓ_inφ),即输出拓扑荷满足:

ℓ_out = n·ℓ_in

通过该过程,分数阶FOAM模式被转换为整数阶IOAM本征模式,为后续模式处理提供基础。

二、Matlab 仿真结果

仿真参数:λ=532 nm,w₀=300 μm,d=5 cm,实现分数与整数阶OAM 变换,展示输入和变换后的OAM光场分布以及变换相位和补偿相位。

1. 分数 OAM↔整数 OAM变换

输入:ℓ_in=1.5(3/2),n=2 → ℓ_out=3

2. 整数 OAM↔整数 OAM变换

输入:ℓ_in=6,n=1/3 → ℓ_out=2

输入:ℓ_in=2,n=2 → ℓ_out=4

相关推荐
随意起个昵称5 小时前
线性dp-计数类题目10(ZBRKA)
算法·动态规划
Navigator_Z11 小时前
LeetCode //C - 1089. Duplicate Zeros
c语言·算法·leetcode
云泽80813 小时前
C++ 可调用对象通关指南:深度解析 Lambda 表达式、function 包装器与 bind 绑定器
开发语言·c++·算法
wlsh1514 小时前
Go 迭代器
算法
语戚14 小时前
力扣 3161. 块放置查询:线段树解法(Java 实现)
java·算法·leetcode·面试·线段树·力扣·
CS创新实验室15 小时前
从顺序表到动态数组:数据结构的永恒基石与现代语言的优雅封装
数据结构·算法
Black蜡笔小新15 小时前
自动化AI算法训练服务器DLTM训推一体化平台助力农业生产管理实现安全智能化
人工智能·算法·自动化
8Qi816 小时前
LeetCode 23. 合并 K 个升序链表 —— 小顶堆(PriorityQueue)
数据结构·算法·leetcode·链表·
QiLinkOS17 小时前
《打破“用爱发电”:一种基于 Gitee 与时间戳的开源权益分配机制探索》
c语言·数据结构·c++·科技·算法·gitee·开源
松间听晚17 小时前
Agentic RL 环境和代码学习:以HGPO为例
算法