首页 -> 登录 -> 注册 -> 回复主题 -> 发表主题
光行天下 -> FRED,VirtualLab -> 如何在VirtualLab Fusion中使用可编程光源及示例(高斯光束) [点此返回论坛查看本帖完整版本] [打印本页]

infotek 2021-05-20 10:46

如何在VirtualLab Fusion中使用可编程光源及示例(高斯光束)

摘要 gQ h0-Dnw  
%^"Tz,f  
为光学仿真提供最大的功能多样化是我们的最基本目标之一。在本文档中,我们将展示如何在VirtualLab Fusion中使用可编程光源:一种对自定义基本光源模型空间相关性的定义方法,其可用于如完全相干光源,单色光源的建模;或者是一个更复杂的单模形式(可能是一个部分空间相干或者复色的)。尽管高斯光是一种已经包含在VirtualLab Fusion中的光源模型,但我们在此处仍然使用其用为一个简单的编程示例。 UD*#!H  
(0W%Y Z!&  
^h^2='p  
o lNL|WJ`w  
1. 如何查找可编程光源:目录 ja~b5Tf9  
+D4Nu+~BSN  
kTex>1W;  
<uL?7P  
2. 如何查找可编程光源:光学系统 UL[4sv6\9  
VzpPopD,QW  
P58U8MEG  
3. 编写代码 aQN`C {nY  
B>o\;)l3O  
nl5K1!1  
   )1j~(C)E8  
 右边的面板显示了可用的独立参数列表。 iTD}gC  
 Wavelength 读取光源配置对话框中Spectral Parameters标签内的单一波长或频谱。 ~>D;2 S(a  
 RefractiveIndex 读取嵌入材料对于指定波长的的复数折射率。嵌入材料可在Basic Parameters标签下定义 c0<Y017sG  
 Distance 可由配置对话框中读取另一个参数,此次是从Basic Parameters标签:到输入平面的距离。这是一个重要的参数,例如,在点源的情况下,光源场不能在出射点精确定义。 $t 1]w]}d  
 Jx和Jy 是琼斯偏振矢量的复值分量。如果我们将代码中定义的函数表示为U(x, y),那么最终从光源平面发出的场分量是Ex = Jx U(x, y)和Ey = Jy U(x, y) ]Vl5v5_  
 x和y 表征二维光源平面。分别是平面上扫描的坐标。 *^c4q|G.-  
 主函数中代码的返回值必须是一个关于每个x和y点的复合值。所有这些值组成了函数U(x, y)。 qB]z"Hfq,  
 使用代码片段主体将部分代码分组到子函数中。 HcHfwLin0  
]qXHalHY  
4. 输出 .2 UUU\/5  
j Xi<ZJ  
A>>@&c:(  
^Sy\<  
 输出是一个复值函数表征最终电场分量U(x, y)的空间分量。 8+gx?pb  
 麦克斯韦方程的一个结论是,在均匀介质中,六个电磁分量中的定义两个就足够了,其余四个可以从方程中得到。不失一般性地,VirtualLab选择Ex和E y两个独立分量。在可编程光源中,它们定义为Ex = J x U(x, y)和Ey = Jy U(x, y)。 AXPUJ?V  
 因此,自定义光源的输出是一个电磁场,其空间部分由代码定义,并按照光谱参数选项卡的光谱叠加组成。 )\^o<x2S  
 被定义的场可以用作光学系统中的独立光源,也可以保存在目录中,也可以在更复杂光源中作为基本模式。  e^&YQl  
RO wbzA)]r  
5. 采样 6{azzk8  
UUb!2sO  
<mY`<(bc  
J~gfMp.  
r.i.w0B(  
 代码对光源场函数是解析地定义,使编程函数的精度仅受双精度的限制。 w,3`Xq@  
 用户必须确保足够好的采样以保证其编写的函数能被分辨。 AV d  
 编辑采样标签以达成该采样目的。 m1F<L  
 请注意:采样可依据所定义的全局参数的实际值定义。 dN |w;|M  
$o]zNW;X  
编程一个高斯光束 f[.hN  
:1Fm~'  
1. 高斯光束 nQ$N(2<Fe  
当电场分量正交与给定的主传输方向,该电磁场可描述为一个基本的高斯光束。其束腰可由形式的数学表达式为: &1Cq+YpI  
Bf'jXM{-  
c_ygwO3.Q  
Mh+'f 93  
2. 如何查找可编程光源:目录 #Z$6> Xt  
@z/]!n\~  
{tR=D_5  
^Y'J0v2  
3. 如何查找可编程光源:光学系统 _"0n.JQg  
xo@N~  
<*(~x esPS  
4. 可编程光源:全局参数 /mD KQ<  
-'}iK6  
iU%Gvf^?'5  
m]"YR_  
 一旦打开编辑对话框,可转到全局参数选项卡。 wkJB5i^<w  
 在此处,添加和编辑两个全局参数: hLm9"N'Pf  
- double WaistRadiusX = 1 mm (0mm, 1 m):高斯光束的半径,在x方向束腰。 &-b=gnT   
- double WaistRadiusY = 1 mm (0 mm, 1 m):高斯光束的半径,在y方向的束腰。 3gabk/  
e/Q[%y.X  
5. 可编程光源:代码段帮助 Q.y KbO<[  
2{V|  
c(Ha"tBJ  
 可选:您可以使用Snippet Help编写指令、说明以及与代码片段关联的一些元数据。 *|E@ 81s#  
 此选项非常有助于跟踪您可编程元件的进展。 s}z,{Y$-t  
 这对于其他用户后期处理可编程元件尤其有用。
B:mlBSH  
~ml\|  
wj'iU&aca  
e0$mu?wd-  
6. 可编程光源:编写代码 <M&]*|q>g%  
FBY~Z$o0.  
GzB%vsv9 5  
= oh6;Ojt  
$`=?Nb@@#  
7. 可编程光源:调整采样和窗口 -+PPz?0  
 +;!w;t  
wcL0#[)  
{VNeh  
8. 可编程光源:使用你的代码段 F 5JgR-P  
kW:!$MX!  
A&M/W'$s  
BuvBSLC~  
9. 测试代码! nb|MHtPX  
EV(/@kN2  
-[`W m7en  
CTP%  
10. 文件和技术信息 [`b{eLCFX]  
 mPD'"  
)Z_i[1V  
b gD Dys  
C`#N Q*O  
QQ:2987619807 "Jwz.,Y\  
查看本帖完整版本: [-- 如何在VirtualLab Fusion中使用可编程光源及示例(高斯光束) --] [-- top --]

Copyright © 2005-2026 光行天下 蜀ICP备06003254号-1 网站统计