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

infotek 2021-04-28 10:27

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

摘要 u?[dy n  
%/17K2g  
{FO>^~>l  
|tC`rzo  
现代光学系统的优化一般会涉及到大量的参数,例如:优化光栅时不仅需要考虑光栅的几何参数,还有所需的入射方向。随着参数数量的大量增加,优化越来越具有挑战性。对于这种情况,VirtualLab Fusion提供了与Dynardo的optiSLang软件的接口,可以使用不同的高级优化算法。 u|l]8T9L  
!BD+H/A.{  
VirtualLab Fusion和optiSLang的界面 mAkR<\?iTF  
[ay~l%x  
VirtualLab Fusion是一种灵活且可定制的建模工具平台,可以仿真复杂的光学装置,例如:将一组平面波耦合入光波导。 .,t"i C:E  
DN)Ehd.  
N>?R,XM V  
;W6P$@'zs  
optiSLang是一种包含各种高级工具的软件平台,包括敏感度分析、多元和多学科优化、鲁棒性评估、可靠性分析和鲁棒设计优化。   f(Q-W6  
两种软件平台的结合使得例如智能光波导耦合等高级光栅结构变为可能。 7(<6+q2~  
V_JM@VN}Kk  
VirtualLab Fusion – 光学装置初始化 LyM"  
qP<wf=wY  
初始装置 n5i#GvO^  
─ 一般来说,在VirtualLab中定义的光学系统都可以使用optiSLang进行优化。  PDaD:}9  
─ 该例中的光学系统包含了平面波光源和用于周期性介质的波导耦合探测器。 `RUOZ@r  
]J\tosTi  
B d$i%.r  
   ]r;-Lx{F  
VirtualLab Fusion – 波导耦合探测器 O-r,&W  
vy?Zz<c;  
波导耦合探测 B`,4M&  
─ 波导耦合探测器是一种特殊工具,用以探测某个周期性结构以特定角度范围入射的效率。 w8M,35b  
─ 可以从探测器的编辑对话框中的目录定义或加载周期性结构。 [!E pv<G  
#% PnZ /  
GaMiu! |,  
   ]9]cef=h#  
VirtualLab Fusion – 波导耦合探测器 '1]Iu@?  
波导耦合探测 fI@4 v\  
─ 该例中使用了倾斜光栅。 %;+Q0 e9  
B>, O@og  
/ $7E  
W|_^Oe<  
VirtualLab Fusion – 波导耦合探测器 ,TY&N-  
波导耦合探测 DDh$n?2fd  
─ 该例中使用了倾斜光栅。 .[Ezg(U}ze  
=H&@9=D*  
ng $`<~=)\  
iXpLcHi  
VirtualLab Fusion – 波导耦合探测器 yD6lzuk{X  
c}K>#{YeB  
波导耦合探测 l :\DC  
─ 输入光源的入射角度范围在探测器编辑对话框中指定。 NLZTIZCK  
─ 通过最小和最大笛卡尔坐标系角度alpha和beta与它们的采样点数定义。 bgs2~50  
CCp&P5[67  
h^#K4/  
|7XV! D!\g  
VirtualLab Fusion – 波导耦合 zb/w^~J_i  
^ s< p5V  
波导耦合探测 _l}"gUtiw  
─ 可以从探测得到的效率计算平均值和均匀对比度,并在探测器结果标签页中给出。 5nL,sFd  
─ 作为结果,探测器可以用于评估在特定角度范围内的周期性结构。  w.kb/  
jFYv4!\ju  
0^htwec!  
"NqB_?DT  
VirtualLab Fusion – 输出LPD至OPtiSLang z>HeM Mei  
V<f76U)  
输出LPD至OPtiSLang -x i]~svg  
─ File→Export→Export to optiSlang Project noz&4"S.{  
Y'6GY*dL  
*gHGi(U(U  
VirtualLab Fusion – 输出LPD至OPtiSLang ,1+AfI  
u'"VbW3u n  
输出LPD至OPtiSLang 595P04  
─ File→Export→Export to optiSlang Project ^b-o  
─ 输出LPD文件,并产生输入至optiSLang的必要光学装置文件。 ZsjDe{TH  
H%c:f  
iYE:o{  
{MK.jw9/  
VirtualLab Fusion – 输出LPD至OPtiSLang  h"<-^=b  
5[\mwUA  
输出LPD至OPtiSLang x O`#a=  
─ 在输出对话框窗口。 5AV5`<r.  
 可定义参数空间,并包含了参数的变化范围。 m4FT^ ^3yE  
 可以选择保存到的输出文件夹。 OmO/x  
 可以指定模拟引擎,用于分析。 vMOI&_[\z  
83io@*D  
uH'n.d"WG  
at_~b Ox6X  
optiSLang – 初始化优化 l*;Isz:  
FSnF>3kj-  
设置求解器系统 9z)p*+r UK  
─ File→New project… BfmSM9  
"/v{B?~%!  
#Fx$x#Gc@y  
Kts#e:k@  
optiSLang – 初始化优化 iXl6XwWT%8  
5(F @KeH>  
设置求解器系统 \bJ,8J1C  
─ 继续,拖动求解器(Solver)向导到场景(Scenery)窗口。 LIM cZh;  
─ 打开了一个对话框,列出了几种求解器(Solver)范例。 58FjzW  
─ 求解器(Solver)范例中必须选择VirtualLab。 v[efM8  
1an?/j,  
saMv.;s 1^  
optiSLang – 初始化优化
 [o]^\a y  
y^"[^+F3 .  
设置求解器系统 ~/0 t<^  
─ 然后会弹出文件对话框,必须打开VirtualLab输出的system.lpd文件。 vMBF7Jfx  
kaBP& 6|Z  
$GI2rzh  
+k=BD s  
optiSLang – 初始化优化 h*J=F0KM  
@I{v  
参数化的求解器系统 FGzMbi<l#(  
─ 参数化的求解器系统包含相应的VirtualLab文件和两个含有参数和结果的XML文件,用于定义优化函数。 CF|c4oY82  
─ 请务必保存计划。 QH:PClW![  
.<Y7,9;YEF  
{Vy2uow0  
Gt9(@USK  
optiSLang – 初始化优化 YKF5|;}  
5&}~W)"9  
参数化的求解器系统 >>}4b2U  
─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 UA@(D  
[kfLT::mT  
7g'jg7  
m0I/X$-Cl5  
optiSLang – 初始化优化 5#Z>}@/  
fJ \bm  
参数化的求解器系统 +:@lde]/p  
─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 y7[D9ZvZ  
─ 通过双击结果(Result)设计标签页中的参数化(Parametric)求解器系统窗口,可以检查参数和结果。 :by EXe;3  
;0j 8Xj  
S!*wK-  
Uy8r !9O  
optiSLang –设置优化 oqu; D'8  
!j"r}c`  
参数化的求解器系统 U Ke!zI  
─ optiSLang可以进行多目标函数的光学系统优化。 6y;R1z b  
─ 这可以在参数化(Parametric)求解器系统配置的判据(Criteria)标签页中定义。 E1p?v!   
+&t`"lRl&  
U Ps7{We W  
2"Oj* ;  
optiSLang –设置优化 LQy`,-&  
rnB-e?>  
参数化的求解器系统 h_O6Z2J1  
─ 可以通过拖动均匀化对比度(Uniformity Contrast)到目标最小化(Objective Minimize)判据中定义第一目标函数。 %bs6Uy5g)a  
─ 因此优化算法会尽可能地使均匀度对比最小化。 nP9zTa  
>]DnEF&  
& ,KxE(C  
9~AAdD  
optiSLang –设置优化 ,yZvT7  
u 3&9R)J1  
参数化的求解器系统 _0Mt*]L }  
─ 可以通过拖动平均值(Mean)到目标最小化(Objective Maximize)判据中定义第二目标函数。 Mp8BilH-T  
─ 因此优化算法会尽可能地使平均效率最大化。 K x7'm1  
─ 这步操作被称为多目标优化。 tvh)N{j  
i+`N0!8lY  
K0681_bp  
9?4EM^ -  
optiSLang –设置优化 B2}|b^'I  
v.wHj@  
优化向导 (<|NerwD  
─ 下一步可以通过拖放来使用优化向导。 "qb1jv#to  
4dfR}C  
*|Cmm>z"7  
-b?yzg, 8  
optiSLang –设置优化 +YS0yTWeX  
<,r(^Ntz  
优化向导 ~,199K#'  
─ 第一步,提供了各种系统参数,包括其指定的值范围。 7od6`k   
─ 此外,optiSLang提供了一个可视化的值范围,其中标出了初始值。 qXI>x6?*  
─ 然后点击下一步。 Vn4y^_H  
W{z7h[?5,  
)U>JFgpIW  
optiSLang –设置优化 HY (|31  
a!n |/9 6  
优化向导 S"*M9*8  
─ 第二步,如果在参数化的求解器系统中没有指定优化条件,则此时可以指定。 P, (#' W  
─ 也可以从其他文档中输入条件。 '?WKKYD7N  
─ 然后点击下一步。 pA ,xDs@37  
C(t >ZR  
Het5{Yb.  
_]g?3Gw7!  
optiSLang –设置优化 .{pc5eUf  
K6C@YY(  
优化向导 \NIj&euF  
─ 第三步,选择优化方法。 5*Wo/%#q  
─ optiSLang提供了类似于红绿灯的建议形式来选择合适的方法: H<hFA(M  
 红:不适用 WH@CH4WM  
 黄:适用 T B!z:n  
 绿:推荐 X>0$zE@0  
─ 该例中推荐使用进化算法。 ?3X(`:KB  
─ 然后点击下一步。 .Xq4QR .  
Bu:h_sV D  
#n9:8BKf  
:Adx7!6  
optiSLang –设置优化 /FP;Hsw%  
dIQxU  
优化向导 %xa.{`}`U  
─ 然后,需要指定一些附加选项。 XOk0_[  
─ 建议在算法运行期间显示后期处理选项,以便在优化运行期间访问结果数据。 :n@j"-HA  
─ 然后点击结束。 C`p)S`d  
-#9Hb.Q;  
8$c_M   
>EMsBX  
optiSLang –进化算法的高级设置 e@Cv')]B  
# p?7{"Ep  
高级设置 6}Iu~| 5  
─ 双击创建优化,可以调整优化算法的详细参数。 eM3-S=R?<g  
88K=jo))b  
"kYzgi  
optiSLang –进化算法的高级设置 \.@fAgv  
;q8tOvQ  
高级设置 1$Jria5n  
─ 双击创建优化,可以调整优化算法的详细参数。 X^2Txm d  
─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 sHt PO[h  
Lc0 U-!{G  
Ezvm5~<  
'aq9]D_k  
optiSLang –进化算法的高级设置 n$jOk |W  
]VYv>o`2  
高级设置 *@EItj`  
─ 双击创建优化,可以调整优化算法的详细参数。 ? iX1;c9  
─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 NXJyRAJ*%  
─ 在标签页“其他”中,提供了一些预定义的参数,适用于大部分优化。(例如“EA 10000”) "0,d)L0,"  
x_C#ALq9  
$& 0hpg  
13:yaRo  
optiSLang –进化算法的高级设置 )ZyEn%  
+IRr&J*P  
高级设置 eHjna\C  
─ 此外,作为附加选项,可以调整optiSLang是否自动保存。 * KDT0;/s  
─ 默认情况下,在计算每个设计迭代后,项目会自动保存。 yq?7!X  
─ 特别是对于计算时间短的设计,这会产生大量开销并减慢优化速度。 /SXms'C  
─ 因此,建议将自动保存选项设置为每50或100个完成的设计后保存。 :9_N Y"P  
$. ;j4%%  
fs43\m4= m  
v7V.,^6+  
optiSLang –设计计算的并行化 17itC9U  
qWQ7:*DL  
并行化设置 R5y+bMZ  
─ 一些优化算法允许并行计算设计。 X_j=u1*5  
─ 例如,在进化算法的情况下,一代的所有成员设计的参数是已知的,因此可以同时计算以减少计算时间。 ~JU :a@)  
─ 为了允许并行计算,必须启用多个求解器。 ^/)!)=?  
─ 通过双击VirtualLab求解器,可以找到此附加选项。 h`_@eax  
─ 建议数量为CPU的一半到全部真实核心之间,具体取决于每个设计的计算并行化。 !<ae~#]3 P  
A3\%t@y  
Ap{2*o  
m((A  
optiSLang –开始优化 SM<kR1bo  
ndsu}:my  
运行优化 +cDz`)N,,  
─ 单击场景(Scenery)中的进化算法(Evolutionary Algorithm)窗口。 S.!0~KR: U  
─ 点击运行按钮开始优化。 0Hs\q!5Q  
5i 6*$#OM_  
]>K02SVT:  
*\UxdL 22  
optiSLang –优化结果 C:]&V*d.v4  
:HJ@/ s!J  
优化结果 5M.KF;P  
─ 优化结束后,可以在新窗口中得到结果。 ?89ZnH2/  
6Y#V;/gK!5  
]^>#?yEA3  
G)I lkA@  
optiSLang –优化结果 N|pyp*8Z  
rCwjy&SuU^  
优化结果 xk1pZQ8c  
─ Pareto2D图以点云的形式同时给出了目标值、均匀度对比和平均效率。 12NV  
─ 用户能够为他的应用选择最合适的设计。 if S) < t  
─ 在这个例子中,选择了设计no.8842,具有~16%的均匀度对比和~20%的平均效率。 ZQd\!K8y^Q  
91Cg   
|_Y[93 1<  
a"!D @a  
optiSLang –优化结果 b&Dc DX  
rKP;T"?;  
优化结果 F-=W7 D:[c  
─ 每个设计都存储在子文件夹〜Optimization.opdEvolutionary_Algorithm中的optiSLang项目目录中。 [5v[Zqud  
─ 此目录中的每个文件夹(由设计编号命名)包含将设计再次导入VirtualLab所需的所有文件。 5UFR^\e  
%H-(-v^T*  
QU&b5!;&  
+sTZ) 5vQ  
optiSLang –导入优化结果 zH0{S.3 k  
;st$TVzkn  
导入优化结果 K1P3 FfG  
─ 要导入感兴趣的设计,使用Import optiSLang Results功能,选择相应的设计文件夹。 ]FJpe^ ua  
─ 最后,可以在VirtualLab中进一步分析导入的LPD。 zUw9  
SI:+I4i  
D@Zb|EI%<  
EW* 's(  
总结 Q%xvS,oI  
|JpLMUG  
作为总结,下表给出了初始和优化后的设计之间的光栅参数和性能标准的比较。 MTKd:.J6  
k$V.hG|6M  
hRn[ 9B  
mkfU fG&  
文档信息 EDm,Y  
F5CV<-jB  
&^HqbLz  
cuJ%;q=;  
QQ:2987619807 UMg*Yv%  
查看本帖完整版本: [-- VirtualLab Fusion中运用optiSLang进行光栅优化 --] [-- top --]

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