首页 -> 登录 -> 注册 -> 回复主题 -> 发表主题
光行天下 -> FRED,VirtualLab -> VirtualLab Fusion中运用optiSLang进行光栅优化 [点此返回论坛查看本帖完整版本] [打印本页]

infotek 2021-04-28 10:27

VirtualLab Fusion中运用optiSLang进行光栅优化

摘要 3LAIl913  
rM`X?>iT+  
9>l*lCA  
-}nxJH)  
现代光学系统的优化一般会涉及到大量的参数,例如:优化光栅时不仅需要考虑光栅的几何参数,还有所需的入射方向。随着参数数量的大量增加,优化越来越具有挑战性。对于这种情况,VirtualLab Fusion提供了与Dynardo的optiSLang软件的接口,可以使用不同的高级优化算法。 .<jr0,i  
OVm\  
VirtualLab Fusion和optiSLang的界面 $;1#To  
'qZW,],5  
VirtualLab Fusion是一种灵活且可定制的建模工具平台,可以仿真复杂的光学装置,例如:将一组平面波耦合入光波导。 &~8oQC-eF  
9!6f-K  
^N7e76VwR  
[b 6R%  
optiSLang是一种包含各种高级工具的软件平台,包括敏感度分析、多元和多学科优化、鲁棒性评估、可靠性分析和鲁棒设计优化。   &M46&^Jho  
两种软件平台的结合使得例如智能光波导耦合等高级光栅结构变为可能。 M9!HQ   
m_.>C  
VirtualLab Fusion – 光学装置初始化 G9Y#kBr  
`b Fff %_  
初始装置 K~c=M",mW  
─ 一般来说,在VirtualLab中定义的光学系统都可以使用optiSLang进行优化。 !k 6K?xt  
─ 该例中的光学系统包含了平面波光源和用于周期性介质的波导耦合探测器。 1;C+$  
#bUXgn>  
~D<IB#C  
   A0o-:n Fu  
VirtualLab Fusion – 波导耦合探测器 [<2<Y  
s %qF/70'  
波导耦合探测 tz5e"+Tz  
─ 波导耦合探测器是一种特殊工具,用以探测某个周期性结构以特定角度范围入射的效率。 fmQ_P.c  
─ 可以从探测器的编辑对话框中的目录定义或加载周期性结构。 Yk)."r&?  
ZIf  
KV]X@7`@  
   MLoYnR^  
VirtualLab Fusion – 波导耦合探测器 )k\H@Dy%$  
波导耦合探测 3Ndq>  
─ 该例中使用了倾斜光栅。 RP~|PtLw_  
4A8;tU$&  
rm5bkJcg~  
qAAX;N  
VirtualLab Fusion – 波导耦合探测器 `);AW(Q  
波导耦合探测 I%r{]-Obr-  
─ 该例中使用了倾斜光栅。 !j:9`XD|  
"Om=N@?  
@aAW*D~-J  
c#|raXGT  
VirtualLab Fusion – 波导耦合探测器 eFaO7mz5V%  
[Yo,*,y31  
波导耦合探测 9Xj7~,  
─ 输入光源的入射角度范围在探测器编辑对话框中指定。 le1}0 L  
─ 通过最小和最大笛卡尔坐标系角度alpha和beta与它们的采样点数定义。 HW=C),*]cR  
^Y@\1fX 4e  
eIz<)-7:  
+@94;me  
VirtualLab Fusion – 波导耦合 E8pB;\Z(  
MXw hxk#E  
波导耦合探测 v{(^1cX  
─ 可以从探测得到的效率计算平均值和均匀对比度,并在探测器结果标签页中给出。 ] Bcp;D  
─ 作为结果,探测器可以用于评估在特定角度范围内的周期性结构。 xCg52zkH#  
qT%FmX  
$* AYcy7  
H7d/X  
VirtualLab Fusion – 输出LPD至OPtiSLang 23c 8  
gLE:g5v6  
输出LPD至OPtiSLang P+s !|7'  
─ File→Export→Export to optiSlang Project uW30ep'  
,{BaePMp  
|2RC#]/-Y  
VirtualLab Fusion – 输出LPD至OPtiSLang 1`(tf6op  
()5[x.xK@  
输出LPD至OPtiSLang !9[>L@#G  
─ File→Export→Export to optiSlang Project -*$HddD  
─ 输出LPD文件,并产生输入至optiSLang的必要光学装置文件。 f|B=_p80  
Jth[DUH8H  
W8ouO+wK  
W+PJZn  
VirtualLab Fusion – 输出LPD至OPtiSLang s$cK(S#  
$}) g?Q  
输出LPD至OPtiSLang K? y[V1,  
─ 在输出对话框窗口。 qv]}$WU  
 可定义参数空间,并包含了参数的变化范围。 9;r)#3Q[^  
 可以选择保存到的输出文件夹。 D)j(,vt  
 可以指定模拟引擎,用于分析。 qAn!RkA  
#~7ip\Uf[  
np8gKV D  
@)|C/oA  
optiSLang – 初始化优化 MRb-H1+Xf  
(-ufBYO6  
设置求解器系统 X $ s:>[H  
─ File→New project… }s(N6a&(  
do*EKo  
CDP U\ZG  
3QG7C{  
optiSLang – 初始化优化 ~yH?=:>U  
\6R,Nq  
设置求解器系统 N+Y]st+  
─ 继续,拖动求解器(Solver)向导到场景(Scenery)窗口。 &3bx `C  
─ 打开了一个对话框,列出了几种求解器(Solver)范例。 2w["aVr =  
─ 求解器(Solver)范例中必须选择VirtualLab。 0`X]o'RxS  
&Xf^Iu  
v6>_ j L  
optiSLang – 初始化优化
L3@82yPo!  
FFu9&8Y  
设置求解器系统 d@5[B0eH  
─ 然后会弹出文件对话框,必须打开VirtualLab输出的system.lpd文件。 W3MU1gl6k{  
M luVx'  
Tk5W'p|6f  
a-=8xs'  
optiSLang – 初始化优化 .(^ ,z&  
Cj{1H([-  
参数化的求解器系统 gBC@38|6)  
─ 参数化的求解器系统包含相应的VirtualLab文件和两个含有参数和结果的XML文件,用于定义优化函数。 L*&p !  
─ 请务必保存计划。 (C@mLu)  
)N7Y^CN~  
uI1 q>[  
,N!o  
optiSLang – 初始化优化 b:tob0TB  
BT}!W`  
参数化的求解器系统 ]sE?ezu  
─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 FB{KH .  
mF,Y?ax  
&6ZD136  
23Nw!6S  
optiSLang – 初始化优化 TU:7Df  
nV-mPyfL8  
参数化的求解器系统 de p=&  
─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 #~C]ZrK  
─ 通过双击结果(Result)设计标签页中的参数化(Parametric)求解器系统窗口,可以检查参数和结果。 B{'( L |  
Cjc6d4~  
}]lr>"~y}  
VQ7*Z5[1  
optiSLang –设置优化 t!r A%*  
=;2%a(  
参数化的求解器系统 apg=-^L'  
─ optiSLang可以进行多目标函数的光学系统优化。 d@XV:ae  
─ 这可以在参数化(Parametric)求解器系统配置的判据(Criteria)标签页中定义。 O(D ~_O.  
?0v-qj+  
-f%'  
_kU:Z  
optiSLang –设置优化 0K`#>}W#X  
3?V_BUoON  
参数化的求解器系统 BG6B :  
─ 可以通过拖动均匀化对比度(Uniformity Contrast)到目标最小化(Objective Minimize)判据中定义第一目标函数。 95A1:A^t  
─ 因此优化算法会尽可能地使均匀度对比最小化。 .Le?T&_  
G Uon/G8  
+a^nlW9g  
`*_mP<Ag  
optiSLang –设置优化 |wiqGzAr{  
%s|}Fz->  
参数化的求解器系统 [RLN;(0n  
─ 可以通过拖动平均值(Mean)到目标最小化(Objective Maximize)判据中定义第二目标函数。 p i %< Sy  
─ 因此优化算法会尽可能地使平均效率最大化。 kEOS{C%6R  
─ 这步操作被称为多目标优化。 lI*o@wQg  
5,_u/5Y4  
`$,GzS(  
Xejo_SV&?  
optiSLang –设置优化 oSy yd  
1FlX'[vh  
优化向导 bwD,YC  
─ 下一步可以通过拖放来使用优化向导。 ="Ho%*@6  
1 *'HL#  
X*/ho  
gtk7)Uh  
optiSLang –设置优化 #_6I w`0  
=t9\^RIx)?  
优化向导 H`1{_  
─ 第一步,提供了各种系统参数,包括其指定的值范围。 /?@3.3sl_  
─ 此外,optiSLang提供了一个可视化的值范围,其中标出了初始值。 O_wEcJPE  
─ 然后点击下一步。 Nl^;A> <u  
9$cWU_q{  
WY?[,_4U  
optiSLang –设置优化 NdMb)l)m  
e+~\+:[?  
优化向导 *5%d XixN  
─ 第二步,如果在参数化的求解器系统中没有指定优化条件,则此时可以指定。 :~2vJzp@?  
─ 也可以从其他文档中输入条件。 `o=q%$f#k~  
─ 然后点击下一步。 7 n8"/0kc:  
b\yXbyjZ3.  
W-mQjJ`,B  
9^oKtkoDZ  
optiSLang –设置优化 @;*Ksy@1O  
lR )67a  
优化向导 )bS yB29S  
─ 第三步,选择优化方法。 sDPs G5q<  
─ optiSLang提供了类似于红绿灯的建议形式来选择合适的方法: K#6P}tf  
 红:不适用 /N=b\-]  
 黄:适用 hQYL`Dni  
 绿:推荐 w65K[l;2  
─ 该例中推荐使用进化算法。 tSr8 zAV  
─ 然后点击下一步。 vdAr|4^qB  
''yB5#^w(  
"I3@m%qv  
?9e_gV{&;  
optiSLang –设置优化 't:; irLW.  
\k.{-nh  
优化向导 U#lCj0iUt,  
─ 然后,需要指定一些附加选项。 A)bWcB}U  
─ 建议在算法运行期间显示后期处理选项,以便在优化运行期间访问结果数据。 ZP@ $Q%up  
─ 然后点击结束。 &dqLP9 5  
uatm/o^~,  
~IYUuWF(  
%|auAq&w  
optiSLang –进化算法的高级设置 g;pcZ9o  
bo2H]PL*  
高级设置 BmbyH{4  
─ 双击创建优化,可以调整优化算法的详细参数。 ]~9t Y n  
3@kf@ Vf  
kVkU)hqR  
optiSLang –进化算法的高级设置 [%q@]\U$s  
@5N]ZQ9  
高级设置 o} J&E{Tk  
─ 双击创建优化,可以调整优化算法的详细参数。 , ]bhyp  
─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 '~5LY!H(pT  
r+A{JHnN  
4w*Skl=F}  
a!a-b~#cx  
optiSLang –进化算法的高级设置 gwLf'  
7I&&bWB  
高级设置 J?V?R  
─ 双击创建优化,可以调整优化算法的详细参数。 9]k @Q_  
─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 v[ . cd*b  
─ 在标签页“其他”中,提供了一些预定义的参数,适用于大部分优化。(例如“EA 10000”) i+A3~w5c  
=$u! 59_dE  
9+j0q%  
zwhe  
optiSLang –进化算法的高级设置 1Ir21un  
U>YAdrx2a  
高级设置 N4v~;;@(  
─ 此外,作为附加选项,可以调整optiSLang是否自动保存。 ( l\1n;s*B  
─ 默认情况下,在计算每个设计迭代后,项目会自动保存。 yMG1XEhuG  
─ 特别是对于计算时间短的设计,这会产生大量开销并减慢优化速度。 ND'E8Ke pq  
─ 因此,建议将自动保存选项设置为每50或100个完成的设计后保存。 C6VLy x  
WA5&# kg\  
Y1OCLnK~  
z6U\axO6  
optiSLang –设计计算的并行化 \K5DOM "#  
51#_Vg  
并行化设置 "i nd$Z`c  
─ 一些优化算法允许并行计算设计。 5&QJ7B,!  
─ 例如,在进化算法的情况下,一代的所有成员设计的参数是已知的,因此可以同时计算以减少计算时间。 J1,9kCO  
─ 为了允许并行计算,必须启用多个求解器。 y^;#&k!  
─ 通过双击VirtualLab求解器,可以找到此附加选项。  DGRXd#  
─ 建议数量为CPU的一半到全部真实核心之间,具体取决于每个设计的计算并行化。 *QpMF/<?  
b,5~b&<h  
/z4$gb7Y  
Jb0`42  
optiSLang –开始优化 r)lEofX,g+  
? E1<!~  
运行优化 -z-C*%~  
─ 单击场景(Scenery)中的进化算法(Evolutionary Algorithm)窗口。 J*r*X.  
─ 点击运行按钮开始优化。 ?iw!OoZ`  
2a-w% (K  
\9cbI3rGz  
:G [|CPm-  
optiSLang –优化结果 UxbjA- U[  
t#V!8EpBg  
优化结果 i5en*)O8  
─ 优化结束后,可以在新窗口中得到结果。 A0/"&Ag]  
S ^"y4- 2  
>W%EmnLK  
Q! o'}nA  
optiSLang –优化结果 35A|BD) q  
 .t{MIC  
优化结果 :{PJI,  
─ Pareto2D图以点云的形式同时给出了目标值、均匀度对比和平均效率。 R] vV*  
─ 用户能够为他的应用选择最合适的设计。 KT_!d*  
─ 在这个例子中,选择了设计no.8842,具有~16%的均匀度对比和~20%的平均效率。 QCD .YFM  
iNWw;_|1  
c' ^?/$H|  
fX(3H1$"  
optiSLang –优化结果 ({ 8-*  
xmNB29#  
优化结果 }QN1|mP2  
─ 每个设计都存储在子文件夹〜Optimization.opdEvolutionary_Algorithm中的optiSLang项目目录中。 Ye\rB\-  
─ 此目录中的每个文件夹(由设计编号命名)包含将设计再次导入VirtualLab所需的所有文件。 ~,d,#)VE2q  
5 f@)z"j  
HD@$t)mn  
TcyNIx  
optiSLang –导入优化结果 XtXEB<4Z  
yd^ {tQi  
导入优化结果 m.JBOq=  
─ 要导入感兴趣的设计,使用Import optiSLang Results功能,选择相应的设计文件夹。 =qoWCmg"&  
─ 最后,可以在VirtualLab中进一步分析导入的LPD。 T%x}Y#U'`  
zE336  
%r<rcY  
ySk R>y  
总结 i#&z2h-b  
\(3y7D  
作为总结,下表给出了初始和优化后的设计之间的光栅参数和性能标准的比较。 %G3h?3  
Htay-PB }  
e2L0VXbb  
'@cANGg7[  
文档信息 wc0jhHZO ?  
u9:`4b   
teOe#*  
<m!h&_eg  
QQ:2987619807 2`AY~i9  
查看本帖完整版本: [-- VirtualLab Fusion中运用optiSLang进行光栅优化 --] [-- top --]

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