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

infotek 2021-04-28 10:27

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

摘要 S|K}k:v8  
>"("*3AO  
?`AGF%zp  
G{RTH_p  
现代光学系统的优化一般会涉及到大量的参数,例如:优化光栅时不仅需要考虑光栅的几何参数,还有所需的入射方向。随着参数数量的大量增加,优化越来越具有挑战性。对于这种情况,VirtualLab Fusion提供了与Dynardo的optiSLang软件的接口,可以使用不同的高级优化算法。 V1utUGJV  
Qhy#r  
VirtualLab Fusion和optiSLang的界面 #?&0D>E?k  
3KcaT5(&  
VirtualLab Fusion是一种灵活且可定制的建模工具平台,可以仿真复杂的光学装置,例如:将一组平面波耦合入光波导。 3t(c_:[%  
^o d<JD4  
AhxGj+  
3nFt1E   
optiSLang是一种包含各种高级工具的软件平台,包括敏感度分析、多元和多学科优化、鲁棒性评估、可靠性分析和鲁棒设计优化。   KcXpH]>!9  
两种软件平台的结合使得例如智能光波导耦合等高级光栅结构变为可能。 CWlW/>yF B  
|LmSWy*7  
VirtualLab Fusion – 光学装置初始化 G7-!`-Nk  
?)i1b\4Go  
初始装置 -BhTkoN)  
─ 一般来说,在VirtualLab中定义的光学系统都可以使用optiSLang进行优化。 qLjT.7 .x  
─ 该例中的光学系统包含了平面波光源和用于周期性介质的波导耦合探测器。 P5?<_x0v4b  
Qn=$8!Qqa  
4tJa-7  
   ddDS=OfH  
VirtualLab Fusion – 波导耦合探测器 ({[,$dEa;  
js <Ww$zFW  
波导耦合探测 SUE ~rb  
─ 波导耦合探测器是一种特殊工具,用以探测某个周期性结构以特定角度范围入射的效率。 Q~Ea8UT. #  
─ 可以从探测器的编辑对话框中的目录定义或加载周期性结构。 /1fwl5\  
X9XI;c;b-  
#jS[  
   ebM{OI  
VirtualLab Fusion – 波导耦合探测器 dGkg aC+  
波导耦合探测 P} r)wAt  
─ 该例中使用了倾斜光栅。 ,]$A\+m'  
NP_?f%(  
u \g ,.C0  
va,~w(G  
VirtualLab Fusion – 波导耦合探测器 ~&g a1r2v?  
波导耦合探测 C1fyV]  
─ 该例中使用了倾斜光栅。 O#_x)13  
yV]xRaRr2  
5 Op_*N{V  
MCYl{uH!  
VirtualLab Fusion – 波导耦合探测器 %Fft R1"  
pFO^/P'  
波导耦合探测 ( ?Q|s,  
─ 输入光源的入射角度范围在探测器编辑对话框中指定。 oH-8r:{  
─ 通过最小和最大笛卡尔坐标系角度alpha和beta与它们的采样点数定义。 ~F[L4y!sL  
Ijedo/  
U[||~FW'  
OhwF )p=  
VirtualLab Fusion – 波导耦合 U^_D|$6  
REA;x-u*  
波导耦合探测 5D' bJ6PO  
─ 可以从探测得到的效率计算平均值和均匀对比度,并在探测器结果标签页中给出。 D}{b;Un  
─ 作为结果,探测器可以用于评估在特定角度范围内的周期性结构。 wda';@y5(  
]QrR1Rg  
HL8eD^  
>.DC!QV  
VirtualLab Fusion – 输出LPD至OPtiSLang ijW 7c+yd  
O<N#M{kc.  
输出LPD至OPtiSLang x';u CKWV  
─ File→Export→Export to optiSlang Project a5?8QAO~r  
EzT`,#b  
;l!`C':'  
VirtualLab Fusion – 输出LPD至OPtiSLang vsMmCd)7U  
n=!uNu7  
输出LPD至OPtiSLang GyC)EFd  
─ File→Export→Export to optiSlang Project S`= WF^  
─ 输出LPD文件,并产生输入至optiSLang的必要光学装置文件。 s3 B'>RG}  
oF|N O^H  
X0uJNHO  
{j SmoA  
VirtualLab Fusion – 输出LPD至OPtiSLang {eHAg<+  
@;)PSp*j  
输出LPD至OPtiSLang ~`cwG` 'N  
─ 在输出对话框窗口。 .<&s%{EW  
 可定义参数空间,并包含了参数的变化范围。 O)#U ^  
 可以选择保存到的输出文件夹。 -5Utl os  
 可以指定模拟引擎,用于分析。 pIO4,VL;W  
%oof}=MxCL  
tP(h9|[N  
q``wt  
optiSLang – 初始化优化 X6@wkrf-  
iHBB,x  
设置求解器系统 rAukHeH  
─ File→New project… gv.6h{Ut  
s~L</Xvo  
,YLF+^w-  
!1Y&Y@ze  
optiSLang – 初始化优化 SF<Vds}A2  
&m'kI  
设置求解器系统 #h'@5 l  
─ 继续,拖动求解器(Solver)向导到场景(Scenery)窗口。 N4{nG,Mo]  
─ 打开了一个对话框,列出了几种求解器(Solver)范例。 *l+Cl%e  
─ 求解器(Solver)范例中必须选择VirtualLab。 -Zc![cAlO  
hYg'2OG  
*@S@x{{s  
optiSLang – 初始化优化
E4oz|2!m  
4na8  
设置求解器系统 pGGmA;TC1  
─ 然后会弹出文件对话框,必须打开VirtualLab输出的system.lpd文件。 k*Nr!Z!}  
{{{#?~3$7  
#1/}3+=5B  
SoQR#(73HK  
optiSLang – 初始化优化 z@U} ~TvP  
c:hK$C)T  
参数化的求解器系统 ]k%PG-9  
─ 参数化的求解器系统包含相应的VirtualLab文件和两个含有参数和结果的XML文件,用于定义优化函数。 4< S'  
─ 请务必保存计划。 mY-hN|  
`!4,jd  
Akk 3 Qx  
M0'v&g  
optiSLang – 初始化优化 SaDA`JmO  
-,# +`>w  
参数化的求解器系统 QwWW! 8  
─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 ~(X(&  
mOBACTY^  
wS XVyg{  
xBM>u,0.F  
optiSLang – 初始化优化 ~^US/"  
v}(6 <wnnS  
参数化的求解器系统 ?vtX"Fdz  
─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 NC"yDWnO'  
─ 通过双击结果(Result)设计标签页中的参数化(Parametric)求解器系统窗口,可以检查参数和结果。 6d|q+]x_n  
)b4$A:  
4,P bg|  
+}kgQ^  
optiSLang –设置优化 x4kWLy7Sz  
X9=N%GY[  
参数化的求解器系统 X@wm1{!  
─ optiSLang可以进行多目标函数的光学系统优化。 b{Zpux+  
─ 这可以在参数化(Parametric)求解器系统配置的判据(Criteria)标签页中定义。 Ao.\  
`N8 7 h"  
bud&R4+  
't (O$  
optiSLang –设置优化 l]Lx L  
v zo4g,Bj  
参数化的求解器系统 0D&>Gyc*0  
─ 可以通过拖动均匀化对比度(Uniformity Contrast)到目标最小化(Objective Minimize)判据中定义第一目标函数。 X` r* ob  
─ 因此优化算法会尽可能地使均匀度对比最小化。 zc+@lJy  
Mt>oI SN&d  
Zj9c9  
uGH?N  
optiSLang –设置优化 ~}9PuYaD@  
@cvP0A  
参数化的求解器系统 t%VDRZo7  
─ 可以通过拖动平均值(Mean)到目标最小化(Objective Maximize)判据中定义第二目标函数。 1T|$BK@)  
─ 因此优化算法会尽可能地使平均效率最大化。 S;\R!%t_  
─ 这步操作被称为多目标优化。 {3\R|tZh,`  
hlbvt-C?}"  
)0 Z!n  
|`O5Xs1{B  
optiSLang –设置优化 Qs 2.ef?  
|L3X_Me  
优化向导 3z =^(Y  
─ 下一步可以通过拖放来使用优化向导。 F iAY\4  
m.Lij!0  
udk.zk  
9.OA, 6  
optiSLang –设置优化 HTjkR*E  
v syWm.E  
优化向导 c/3$AUsuO  
─ 第一步,提供了各种系统参数,包括其指定的值范围。 "jg@w%~  
─ 此外,optiSLang提供了一个可视化的值范围,其中标出了初始值。 `FF8ie8L  
─ 然后点击下一步。 Q(7ob}+jQ  
;@mRo`D`  
Zk-~a r  
optiSLang –设置优化 R`'1t3p0i  
%Q"(/jm?  
优化向导 (nSml,gU  
─ 第二步,如果在参数化的求解器系统中没有指定优化条件,则此时可以指定。 ,ZE?{G{tuj  
─ 也可以从其他文档中输入条件。 }M>r E  
─ 然后点击下一步。 ~W0(1# i  
aE VsU|  
vv0Q$ O->  
u_O# @eOc  
optiSLang –设置优化 ,?cH"@ RJ  
}%!tT\8  
优化向导 J1ON,&[J  
─ 第三步,选择优化方法。 `{K_/Cit  
─ optiSLang提供了类似于红绿灯的建议形式来选择合适的方法: _ Y2 U7W  
 红:不适用 @I3eK^#|P  
 黄:适用 ?V(^YFzZ  
 绿:推荐 |pZUlQbb  
─ 该例中推荐使用进化算法。 PA;6$vqX  
─ 然后点击下一步。 CON0E~"  
8AFczeg[[  
-1|iz2^N  
A#h/B+  
optiSLang –设置优化 9]'&RyH=#  
R*pC.QiB~  
优化向导 ]B\H ~Kn  
─ 然后,需要指定一些附加选项。 = duks\)O  
─ 建议在算法运行期间显示后期处理选项,以便在优化运行期间访问结果数据。 62'1X"  
─ 然后点击结束。 {r85l\u)Q\  
bJ /5|E?  
AvJ,SQt  
? zDa=7 J  
optiSLang –进化算法的高级设置 "B7`'jz  
V7Yaks  
高级设置 &} 6KPA;  
─ 双击创建优化,可以调整优化算法的详细参数。 z;\dL  
W;6vpPhg#!  
(7FW9X;  
optiSLang –进化算法的高级设置 RI n9(r  
G[Lpe  
高级设置 oFsM6+\/S  
─ 双击创建优化,可以调整优化算法的详细参数。  |J5 =J  
─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 E6B!+s!]  
F/c$v  
| tQiFC  
=3 ~/:8o  
optiSLang –进化算法的高级设置 E.bi05l  
Fm_y&7._  
高级设置 ^D^JzEy'?C  
─ 双击创建优化,可以调整优化算法的详细参数。 WG71k8af  
─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 5~sx:0;  
─ 在标签页“其他”中,提供了一些预定义的参数,适用于大部分优化。(例如“EA 10000”) |R/.r_x,V?  
I`(l*U  
`Mj}md;O"  
P,DC7\  
optiSLang –进化算法的高级设置 `/&SxQB<  
mog[pu:!,  
高级设置 SlLw{Yb7\.  
─ 此外,作为附加选项,可以调整optiSLang是否自动保存。 s) O[t  
─ 默认情况下,在计算每个设计迭代后,项目会自动保存。 lK'Rn~  
─ 特别是对于计算时间短的设计,这会产生大量开销并减慢优化速度。 7xo4-fIuT  
─ 因此,建议将自动保存选项设置为每50或100个完成的设计后保存。 "L&'Fd@ZU  
L)QE`24  
|!SO G  
Uh1NO&i.W  
optiSLang –设计计算的并行化 3oZ=k]\  
qZEoiNH(Tj  
并行化设置 S"mcUU}}  
─ 一些优化算法允许并行计算设计。 -D^A:}$  
─ 例如,在进化算法的情况下,一代的所有成员设计的参数是已知的,因此可以同时计算以减少计算时间。 3-Dt[0%{  
─ 为了允许并行计算,必须启用多个求解器。 h&3YGCl  
─ 通过双击VirtualLab求解器,可以找到此附加选项。 A=zPL q{Sb  
─ 建议数量为CPU的一半到全部真实核心之间,具体取决于每个设计的计算并行化。 W=B"Q qL  
x"P);su  
#%@*p,xh  
DHC+C4  
optiSLang –开始优化 C`jM0Q  
X6+qpp  
运行优化 _M[,! {C  
─ 单击场景(Scenery)中的进化算法(Evolutionary Algorithm)窗口。 vR6Bn  
─ 点击运行按钮开始优化。 yqXH:757~  
cV{%^0? D  
_/*U2.xS  
p}b/XnV$~  
optiSLang –优化结果 q_W0/Ki8  
SHb(O<6  
优化结果 bOp54WI-g  
─ 优化结束后,可以在新窗口中得到结果。 8x{B~_~  
 }}<Z,/O  
nnb8Gcr  
mnk"Vr` L  
optiSLang –优化结果 @XD+'{]  
+z9@:L  
优化结果 ; |/leu8  
─ Pareto2D图以点云的形式同时给出了目标值、均匀度对比和平均效率。 V(MFna)  
─ 用户能够为他的应用选择最合适的设计。 oY~ Dg  
─ 在这个例子中,选择了设计no.8842,具有~16%的均匀度对比和~20%的平均效率。 Z4$cyL'$P  
7`IpBm<  
/"H`.LD.?  
)Rat0$6  
optiSLang –优化结果 %n%xR%|  
P #F=c34u  
优化结果 p,pR!qC>  
─ 每个设计都存储在子文件夹〜Optimization.opdEvolutionary_Algorithm中的optiSLang项目目录中。 *=ZsqOHwG  
─ 此目录中的每个文件夹(由设计编号命名)包含将设计再次导入VirtualLab所需的所有文件。 K ]OK:hY4  
(KZHX5T=  
,h\sF#|  
@;xMs8@  
optiSLang –导入优化结果 ;R=.iOn  
LWsP ya  
导入优化结果 j6~nE'sQ  
─ 要导入感兴趣的设计,使用Import optiSLang Results功能,选择相应的设计文件夹。 ^ 5VK>  
─ 最后,可以在VirtualLab中进一步分析导入的LPD。 o~FRF0f*VP  
}u+a<:pkK  
u JR%0E7!  
.O*bILU  
总结 iz(u=/*\  
9jp:k><\(c  
作为总结,下表给出了初始和优化后的设计之间的光栅参数和性能标准的比较。 MF6 0-VE  
z|7zj/+g  
(\"k&O{  
be5,U\&z  
文档信息 fW`&'!  
JxLf?ad.  
2>-S-;i  
D47R  
QQ:2987619807 fl Jp4-nx  
查看本帖完整版本: [-- VirtualLab Fusion中运用optiSLang进行光栅优化 --] [-- top --]

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