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

infotek 2020-08-19 09:48

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

摘要 Po~u-5  
ggy 7p44  
v>4kF _N  
7%%FYHMO:  
现代光学系统的优化一般会涉及到大量的参数,例如:优化光栅时不仅需要考虑光栅的几何参数,还有所需的入射方向。随着参数数量的大量增加,优化越来越具有挑战性。对于这种情况,VirtualLab Fusion提供了与Dynardo的optiSLang软件的接口,可以使用不同的高级优化算法。 $bGe1\  
% T2C0P  
VirtualLab Fusion和optiSLang的界面 O%$XgEJ8p  
zv Dg1p  
VirtualLab Fusion是一种灵活且可定制的建模工具平台,可以仿真复杂的光学装置,例如:将一组平面波耦合入光波导。 SWrt4G  
:~% zX*   
hj8S".A_  
"!fvEE  
optiSLang是一种包含各种高级工具的软件平台,包括敏感度分析、多元和多学科优化、鲁棒性评估、可靠性分析和鲁棒设计优化。   ^2|G0d@.:  
两种软件平台的结合使得例如智能光波导耦合等高级光栅结构变为可能。 pejG%pJ  
jRCf!RO  
VirtualLab Fusion – 光学装置初始化 |x Nd^  
ThvVLK  
初始装置 o:.6{+|N  
─ 一般来说,在VirtualLab中定义的光学系统都可以使用optiSLang进行优化。 "I7 Sed7  
─ 该例中的光学系统包含了平面波光源和用于周期性介质的波导耦合探测器。 ftw@nQNU  
RfZZqe U  
cP]5Qz   
   jOE~?{8m  
VirtualLab Fusion – 波导耦合探测器 #nzVgV]  
uia[>&2  
波导耦合探测 pYtvenBy  
─ 波导耦合探测器是一种特殊工具,用以探测某个周期性结构以特定角度范围入射的效率。 DaK2P;WP  
─ 可以从探测器的编辑对话框中的目录定义或加载周期性结构。 r N.<S[  
d{gj8  
nVK`H@5fw  
   UImd* ;2TE  
VirtualLab Fusion – 波导耦合探测器 NY& |:F  
波导耦合探测 Gp PlO]  
─ 该例中使用了倾斜光栅。 knPo"GQW  
uPp9 UW  
~I_v {  
(I) e-1  
VirtualLab Fusion – 波导耦合探测器 s-z*Lq*  
波导耦合探测 S>'S4MJE`  
─ 该例中使用了倾斜光栅。 gLH#UwfJ  
1l~(J:DT  
(ohza<X;6  
pFUW7jE  
VirtualLab Fusion – 波导耦合探测器 $;ssW"7~Qn  
VgoN=S  
波导耦合探测 :Hn*|+'  
─ 输入光源的入射角度范围在探测器编辑对话框中指定。 5z$>M3  
─ 通过最小和最大笛卡尔坐标系角度alpha和beta与它们的采样点数定义。 W$l%= /  
<gdKuoY  
!aVwmd'9  
HLP nbI-+  
VirtualLab Fusion – 波导耦合 `2j \(N,  
#4iiY6  
波导耦合探测 UT^-!L LB]  
─ 可以从探测得到的效率计算平均值和均匀对比度,并在探测器结果标签页中给出。 w'Cn3b)`  
─ 作为结果,探测器可以用于评估在特定角度范围内的周期性结构。 XHN`f#(w  
:=<0Z1S  
/j{`hi  
`D#3  
VirtualLab Fusion – 输出LPD至OPtiSLang bhI yq4N  
wl*"Vagb  
输出LPD至OPtiSLang o`!7 ~n  
─ File→Export→Export to optiSlang Project <MPoDf?h  
T.=du$  
kH)JBx.  
VirtualLab Fusion – 输出LPD至OPtiSLang X1P_IB  
!A6l\_  
输出LPD至OPtiSLang \[-z4Fxg|'  
─ File→Export→Export to optiSlang Project VHyP@JB  
─ 输出LPD文件,并产生输入至optiSLang的必要光学装置文件。 Rilr)$  
]/_GHG9  
CkJU5D  
.q>4?+  
VirtualLab Fusion – 输出LPD至OPtiSLang ddR_+B*H  
bwo{ Lw~  
输出LPD至OPtiSLang dwQ*OxFl  
─ 在输出对话框窗口。 d^&F%)AT  
 可定义参数空间,并包含了参数的变化范围。 iz2I4 _N  
 可以选择保存到的输出文件夹。 B Bub'  
 可以指定模拟引擎,用于分析。 I& `>6=)  
"/EE$eU  
$rZ:$d.C  
@;-6qZ  
optiSLang – 初始化优化 eBK s-2r  
9}4EW4  
设置求解器系统 xELnik_L2  
─ File→New project… h-XMr_F  
~N i#xa  
.>(?c92  
O\5*p=v  
optiSLang – 初始化优化 No\H QQ  
[":[\D'  
设置求解器系统 a?+Ni|+  
─ 继续,拖动求解器(Solver)向导到场景(Scenery)窗口。 X9:(}=E V  
─ 打开了一个对话框,列出了几种求解器(Solver)范例。 M!=WBw8Y]a  
─ 求解器(Solver)范例中必须选择VirtualLab。 ,|: a7b]  
A%VBBvk  
bw@Dc T&,  
optiSLang – 初始化优化
m_%1I J  
mErXdb|L  
设置求解器系统 nP9@yI*7  
─ 然后会弹出文件对话框,必须打开VirtualLab输出的system.lpd文件。 cx]O#b6B.  
hIj[#M&6  
G-U%  
 c|N!ZYJI  
optiSLang – 初始化优化 /!o(Y8e>x  
z.H*"r  
参数化的求解器系统 6 ~b~[gA  
─ 参数化的求解器系统包含相应的VirtualLab文件和两个含有参数和结果的XML文件,用于定义优化函数。 5XNIX)H  
─ 请务必保存计划。 LhZWK^!{S  
&`a$n2ycy  
\WM*2&  
:!a9|Fh~  
optiSLang – 初始化优化 (D'Z4Y  
L3Leb%,!  
参数化的求解器系统 (K$K;f$"r  
─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 @jW_ r j:<  
_tfZg /+)  
^n@.  
>4:W:;R  
optiSLang – 初始化优化 w;.'>ORC  
&bx;GG\<4  
参数化的求解器系统 >G2o  
─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 oZ O 6J-ea  
─ 通过双击结果(Result)设计标签页中的参数化(Parametric)求解器系统窗口,可以检查参数和结果。 8Ek<J+& |I  
,jBd3GdlZ  
a;Ic!:L  
/Yk2 |L  
optiSLang –设置优化 ;lST@>  
4z-sR/d  
参数化的求解器系统 NF1e>O:a<  
─ optiSLang可以进行多目标函数的光学系统优化。 ?~rF3M.=|  
─ 这可以在参数化(Parametric)求解器系统配置的判据(Criteria)标签页中定义。 9i)E<.6  
TB] %?L:  
Xj^6ZJc  
L<>;E  
optiSLang –设置优化 #&.& Uu$  
N2_j[Pe  
参数化的求解器系统 W[o~AbU  
─ 可以通过拖动均匀化对比度(Uniformity Contrast)到目标最小化(Objective Minimize)判据中定义第一目标函数。 ?JTy+V2t  
─ 因此优化算法会尽可能地使均匀度对比最小化。 lKs*KwG  
T0WB  
)5lo^Qb  
B&0^3iKFi  
optiSLang –设置优化 ?H7*?HV  
Q>nq~#3?  
参数化的求解器系统 %3'4QmpR  
─ 可以通过拖动平均值(Mean)到目标最小化(Objective Maximize)判据中定义第二目标函数。 L0SeG:  
─ 因此优化算法会尽可能地使平均效率最大化。 ]RmQ*F-  
─ 这步操作被称为多目标优化。 88}c+V+N!  
OpY2Z7_  
i^(_Gk  
(veGztt  
optiSLang –设置优化 P}o:WI4.cB  
euM7> $`  
优化向导 Q7$ILW-S  
─ 下一步可以通过拖放来使用优化向导。 buGW+TrWY  
FG7}MUu  
|XxA Fje  
h&J6  
optiSLang –设置优化 Q44Pg$jp  
:W,6zv(..u  
优化向导 Pze$QBNoRd  
─ 第一步,提供了各种系统参数,包括其指定的值范围。 IC+Z C   
─ 此外,optiSLang提供了一个可视化的值范围,其中标出了初始值。 %'j)~  
─ 然后点击下一步。 o)'T#uK  
K1Nhz'^=D  
<CJua1l\  
\`o+Le+%  
optiSLang –设置优化 ,FX;-nP%  
!o 2" th  
优化向导 AJSe +1  
─ 第二步,如果在参数化的求解器系统中没有指定优化条件,则此时可以指定。 sTdD=>  
─ 也可以从其他文档中输入条件。 ys:1%D,,_  
─ 然后点击下一步。 0F sz  
A!s\;C  
=)m2u2c M  
QJp _>K  
optiSLang –设置优化 r_T\%  
QRXsLdf$$  
优化向导 elb|=J`M0  
─ 第三步,选择优化方法。 @HJ&"72$<  
─ optiSLang提供了类似于红绿灯的建议形式来选择合适的方法: ?hvPPEJf  
 红:不适用 KDgJ~T  
 黄:适用 r]?ZXe$;  
 绿:推荐 #gi0FXL  
─ 该例中推荐使用进化算法。 ?ltTJ(Po  
─ 然后点击下一步。 = ^:TW%O  
p*F&G=ZE  
{bL6%._C  
j]}A"8=1  
optiSLang –设置优化 _)Q) tOW  
cBM A.'uIL  
优化向导 -0PT(gx  
─ 然后,需要指定一些附加选项。 U .hV1  
─ 建议在算法运行期间显示后期处理选项,以便在优化运行期间访问结果数据。 ]K0<DO9  
─ 然后点击结束。 jNB|98NN  
`C`CU?D  
(;P)oB"`C  
E~_2Jf\U  
optiSLang –进化算法的高级设置 {<iIL3\mC  
ln)_Jf1r  
高级设置 r]Bwp i%  
─ 双击创建优化,可以调整优化算法的详细参数。 _ 0%sYkUc  
z$oA6qB)  
r9 'lFj  
optiSLang –进化算法的高级设置 %)8`(9J*  
5#s?rA%u  
高级设置 7kO5hlKeo  
─ 双击创建优化,可以调整优化算法的详细参数。 +I#4+0f  
─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 MBRRzq%F  
}UZ$<81=  
mm\Jf  
2]C`S,)  
optiSLang –进化算法的高级设置 aM5zYj`pW  
ChF:N0w? p  
高级设置 1@RctI_}  
─ 双击创建优化,可以调整优化算法的详细参数。 xi8RE@gm  
─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。  d_gm'  
─ 在标签页“其他”中,提供了一些预定义的参数,适用于大部分优化。(例如“EA 10000”) o0&jel1a  
9d^o2Y o  
23@e?A=C  
2<)63[YO  
optiSLang –进化算法的高级设置 L)&?$V  
 =\`g<0  
高级设置 ]h~=lItTRZ  
─ 此外,作为附加选项,可以调整optiSLang是否自动保存。 ]78I  
─ 默认情况下,在计算每个设计迭代后,项目会自动保存。 YOwo\'|=  
─ 特别是对于计算时间短的设计,这会产生大量开销并减慢优化速度。 %h 6?/  
─ 因此,建议将自动保存选项设置为每50或100个完成的设计后保存。 UOSa`TZbZ  
kc^ Q ?-?  
lidzs<W-fW  
d$8rzd  
optiSLang –设计计算的并行化 &^FCp'J-  
!/ TeTmo  
并行化设置 j!GJ$yd=-6  
─ 一些优化算法允许并行计算设计。 RzQ1Wq  
─ 例如,在进化算法的情况下,一代的所有成员设计的参数是已知的,因此可以同时计算以减少计算时间。 Y>geP+ -  
─ 为了允许并行计算,必须启用多个求解器。 _ $PZID  
─ 通过双击VirtualLab求解器,可以找到此附加选项。 =_I2ek  
─ 建议数量为CPU的一半到全部真实核心之间,具体取决于每个设计的计算并行化。 wQWokpP;T7  
&F9BaJ  
'x{g P?.  
H`C DfTy  
optiSLang –开始优化 G$ XvxJ  
SLpB$puS  
运行优化 ;X-~C.7k  
─ 单击场景(Scenery)中的进化算法(Evolutionary Algorithm)窗口。 N[d*_KN.!  
─ 点击运行按钮开始优化。 p;`jmF   
lHv;C*(_=  
N~ _GJw@  
Pe8W Br;`  
optiSLang –优化结果 uS<7X7|!0  
4\4onCzuT  
优化结果 \k/ N/&;  
─ 优化结束后,可以在新窗口中得到结果。 lrB@n?hk  
K,bv\j;f  
wv<D%nF2|  
evNo(U\C  
optiSLang –优化结果 s$css{(ek  
r-v ;A  
优化结果 I-oI,c%+  
─ Pareto2D图以点云的形式同时给出了目标值、均匀度对比和平均效率。 _7#Ng@#\  
─ 用户能够为他的应用选择最合适的设计。 ^5j|   
─ 在这个例子中,选择了设计no.8842,具有~16%的均匀度对比和~20%的平均效率。 T`7;Rl'Q  
JO\Tf."a\  
_}R?&yO  
#y%bx<A  
optiSLang –优化结果 ~[d U%I>L^  
>Lp^QP1gU  
优化结果 zQM3n =y  
─ 每个设计都存储在子文件夹〜Optimization.opdEvolutionary_Algorithm中的optiSLang项目目录中。 ,S E5W2a]  
─ 此目录中的每个文件夹(由设计编号命名)包含将设计再次导入VirtualLab所需的所有文件。 =fG c?PQ  
E</Um M+ R  
} NW^?37  
\.y|=Ql_u  
optiSLang –导入优化结果 T#xCu|5  
-jnx0{/  
导入优化结果 xZW6Hk _  
─ 要导入感兴趣的设计,使用Import optiSLang Results功能,选择相应的设计文件夹。 P1)f-:;  
─ 最后,可以在VirtualLab中进一步分析导入的LPD。 l_GvdD  
< gB>j\:  
,L%\{bp5  
Yh)yp?  
总结 Xd/gvg{??0  
uSCF;y=1g,  
作为总结,下表给出了初始和优化后的设计之间的光栅参数和性能标准的比较。 eWzD'3h^  
&54fFyJF  
gQ4Q h;  
U<{8nMB  
文档信息 QLrFAV  
|#8u:rguy  
xO)vn\uJ  
/Y@^B,6 \  
QQ:2987619807 3-#|6khqt  
查看本帖完整版本: [-- VirtualLab Fusion中运用optiSLang进行光栅优化 --] [-- top --]

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