W9oAjO NE 为
光学仿真提供最大的功能多样化是我们的最基本目标之一。在本文档中,我们将展示如何在VirtualLab Fusion中使用可编程
光源:一种对自定义基本光源模型空间相关性的定义方法,其可用于如完全相干光源,单色光源的建模;或者是一个更复杂的单模形式(可能是一个部分空间相干或者复色的)。尽管高斯光是一种已经包含在VirtualLab Fusion中的光源模型,但我们在此处仍然使用其用为一个简单的编程示例。
gN {'UDg *4|Hqa
?r_l8 :D7|%KK 1. 如何查找可编程光源:目录 6bBdIqGb} Z X~
_g@
US{3pkr;I] Npn=cLC& 2. 如何查找可编程光源:光学系统 xLZd!>C gK|R =J
f f 7( 3. 编写代码 @DC)]C2 oVCmI"'
UofTll) Y\2|x*KwvF 右边的面板显示了可用的独立
参数列表。
ESb
]}c: Wavelength 读取光源配置对话框中Spectral Parameters标签内的单一
波长或频谱。
V[a[i>,Z RefractiveIndex 读取嵌入
材料对于指定波长的的复数折射率。嵌入材料可在Basic Parameters标签下定义
BGzI Distance 可由配置对话框中读取另一个参数,此次是从Basic Parameters标签:到输入平面的距离。这是一个重要的参数,例如,在点源的情况下,光源场不能在出射点精确定义。
A"Q@W<. Jx和Jy 是琼斯偏振矢量的复值分量。如果我们将代码中定义的函数表示为U(x, y),那么最终从光源平面发出的场分量是Ex = Jx U(x, y)和Ey = Jy U(x, y)
2i|B=D( x和y 表征二维光源平面。分别是平面上扫描的坐标。
Tp<k<uKD 主函数中代码的返回值必须是一个关于每个x和y点的复合值。所有这些值组成了函数U(x, y)。
hY<{t.ws 使用代码片段主体将部分代码分组到子函数中。
x|eeRf| kcB+ _ 4. 输出 SK$Vk[c] VhEM k\
Fl>]&x*~ }%{MPqg 输出是一个复值函数表征最终电场分量U(x, y)的空间分量。
1px\K8 麦克斯韦方程的一个结论是,在均匀介质中,六个电磁分量中的定义两个就足够了,其余四个可以从方程中得到。不失一般性地,VirtualLab选择Ex和E y两个独立分量。在可编程光源中,它们定义为Ex = J x U(x, y)和Ey = Jy U(x, y)。
H;WY!X$x 因此,自定义光源的输出是一个电磁场,其空间部分由代码定义,并按照
光谱参数选项卡的光谱叠加组成。
8O1K[sEjui 被定义的场可以用作光学系统中的独立光源,也可以保存在目录中,也可以在更复杂光源中作为基本模式。
3]JZu9# 3kmeD". 5. 采样 ep(g`e
/,|CrNwY*
)y7_qxwbV =7
,Kf}6 ;K:8#XuV 代码对光源场函数是解析地定义,使编程函数的精度仅受双精度的限制。
i[semo\E 用户必须确保足够好的采样以保证其编写的函数能被分辨。
L4f7s7rJ 编辑采样标签以达成该采样目的。
/&ygi H{^ 请注意:采样可依据所定义的全局参数的实际值定义。
:46h+?
|s gXh9%x< 编程一个高斯光束 &~5=K 8(X0
: 1. 高斯光束
K^%-NyV 当电场分量正交与给定的主传输方向,该电磁场可描述为一个基本的高斯光束。其束腰可由形式的数学表达式为:
!D.0 (J |kiJ}oy
rVAL|0;3 iz}sM>^ 2. 如何查找可编程光源:目录
kReG: e&X>F"z2
9-jO,l e9u@`ZC07 3. 如何查找可编程光源:光学系统
$R{8z-,Q <xS=#
%hT4qzJj 4. 可编程光源:全局参数
<R1X\s. hhRaJ
F'J [y"~_ g{pQ4jKF 一旦打开编辑对话框,可转到全局参数选项卡。
rcbP$tvz 在此处,添加和编辑两个全局参数:
Na!za'qk[o - double WaistRadiusX = 1 mm (0mm, 1 m):高斯光束的半径,在x方向束腰。
CdhSp$> - double WaistRadiusY = 1 mm (0 mm, 1 m):高斯光束的半径,在y方向的束腰。
}WP-W p4/$EPt)lY 5. 可编程光源:代码段帮助
2DMrMmLI ^>r^3C)_- +p/1x'J 可选:您可以使用Snippet Help编写指令、说明以及与代码片段关联的一些元数据。
ehO:')XF 此选项非常有助于跟踪您可编程元件的进展。
M$CVQ>op: 这对于其他用户后期处理可编程元件尤其有用。
"zV']A>4H
@sf90&f <Dw]yGK@
1
ycc5=. 6. 可编程光源:编写代码
StQ@g _C+DB A
C*wdtEGq 8l xY]UT 7. 可编程光源:调整采样和窗口
q9}2 No W!xLI
$@87?Ab l`rC0kJ] 8. 可编程光源:使用你的代码段
XNmQ?`.2' m<fA|9 F#
`facFt[\ 5t'Fv<g 9. 测试代码!
.Dv=pB,u 3YTIH2z5