切换到宽版
  • 广告投放
  • 稿件投递
  • 繁體中文
    • 1237阅读
    • 0回复

    [技术]VirtualLab Fusion中运用optiSLang进行光栅优化 [复制链接]

    上一主题 下一主题
    离线infotek
     
    发帖
    7377
    光币
    31026
    光券
    0
    只看楼主 倒序阅读 楼主  发表于: 2022-12-29
    vH :LQ!2  
    摘要 ?#}N1k\S  
    *%%g{ 3$  
    I|^;B 8[  
    6\g cFfo  
    现代光学系统的优化一般会涉及到大量的参数,例如:优化光栅时不仅需要考虑光栅的几何参数,还有所需的入射方向。随着参数数量的大量增加,优化越来越具有挑战性。对于这种情况,VirtualLab Fusion提供了与Dynardo的optiSLang软件的接口,可以使用不同的高级优化算法。 hoK>~:;  
    5kCUaPu  
    VirtualLab Fusion和optiSLang的界面 E87Ww,z8  
    e4? >-  
    VirtualLab Fusion是一种灵活且可定制的建模工具平台,可以仿真复杂的光学装置,例如:将一组平面波耦合入光波导。 H9YW  
    l1BtI_7p  
    t/VD31  
         ~?d Nd  
    optiSLang是一种包含各种高级工具的软件平台,包括敏感度分析、多元和多学科优化、鲁棒性评估、可靠性分析和鲁棒设计优化。   ,(EO'T[  
    两种软件平台的结合使得例如智能光波导耦合等高级光栅结构变为可能。 1_PoqD!q  
    >0ow7Uw;  
    VirtualLab Fusion – 光学装置初始化 |}=acc/  
    `d5%.N  
    初始装置 A%KDiIA  
    ─ 一般来说,在VirtualLab中定义的光学系统都可以使用optiSLang进行优化。 H[,i{dD  
    ─ 该例中的光学系统包含了平面波光源和用于周期性介质的波导耦合探测器。 $4h5rC g0  
    ~A'!2  
    F\KjEl0  
       4T|b Cs?e  
    VirtualLab Fusion – 波导耦合探测器 v0z5j6)-1  
    J;.wXS_U8  
    波导耦合探测 ,,%i;  
    ─ 波导耦合探测器是一种特殊工具,用以探测某个周期性结构以特定角度范围入射的效率。 /Z'L^ L%R  
    ─ 可以从探测器的编辑对话框中的目录定义或加载周期性结构。 zzTfYf)  
    u0|8Tgf  
    X' H[7 ^W  
       mF*2#]%dx  
    VirtualLab Fusion – 波导耦合探测器 }X)&zenz  
        波导耦合探测 Q=;U@k@>  
    ─ 该例中使用了倾斜光栅。 E ~Sb  
    >s>1[W@*  
    Ugu[|,  
         y{ibO}s  
    VirtualLab Fusion – 波导耦合探测器 ! h"Kq>9 T  
        波导耦合探测 Rdvk ml@@  
    ─ 该例中使用了倾斜光栅。 e6@=wnoX u  
    DS+}UO  
    Uc7mOa}4  
    WIC/AL'  
    VirtualLab Fusion – 波导耦合探测器 ub^h&= \S  
    JjPKR?[>  
    波导耦合探测 ehzM) uK  
    ─ 输入光源的入射角度范围在探测器编辑对话框中指定。 @$S+Ne[<  
    ─ 通过最小和最大笛卡尔坐标系角度alpha和beta与它们的采样点数定义。 K28+]qy[  
    (G zb  
    27 ]':A4_  
    [ey:e6,T9  
    VirtualLab Fusion – 波导耦合 SQBa;hvgM  
    +giyX7BPJ  
    波导耦合探测 q)LMm7  
    ─ 可以从探测得到的效率计算平均值和均匀对比度,并在探测器结果标签页中给出。 ~ELNyI11  
    ─ 作为结果,探测器可以用于评估在特定角度范围内的周期性结构。 _ky,;9G]  
    LJd5;so-  
    E7t+E)=8  
         Aydm2!l1  
    VirtualLab Fusion – 输出LPD至OPtiSLang h1B? 8pD  
         wQqb`l7+  
    输出LPD至OPtiSLang Yw4n-0g  
        ─ File→Export→Export to optiSlang Project aoMqSwF=  
    rID#`:Hl-|  
         HJLu'KY }  
    VirtualLab Fusion – 输出LPD至OPtiSLang Lm*e5JnV  
         m? eiIrMW  
    输出LPD至OPtiSLang G,?hp>lj  
        ─ File→Export→Export to optiSlang Project {G U&a  
        ─ 输出LPD文件,并产生输入至optiSLang的必要光学装置文件。 wW7eT~w  
    |SoCRjuCPM  
    I8wXuIN_  
         iq8Grd L"  
    VirtualLab Fusion – 输出LPD至OPtiSLang L^E[J`  
         w`4=_J=GO  
    输出LPD至OPtiSLang Huy5-[)15  
        ─ 在输出对话框窗口。 S=5<^o^h3  
     可定义参数空间,并包含了参数的变化范围。 o)Iff)m$  
     可以选择保存到的输出文件夹。 QKyo`g7  
     可以指定模拟引擎,用于分析。 1n=lqn/  
    gp5_Z-me  
    Sh/T,  
    8J:}%DaxL  
    optiSLang – 初始化优化 QqFR\6  
     z_F-T=_  
    设置求解器系统 cJ{ Nh;"  
    ─ File→New project… m_.>C  
    .:@Ykdm4I  
    n"c)m%yZ  
          3L< wQ(  
    optiSLang – 初始化优化 HBy[FYa4  
    G/b^|;41  
    设置求解器系统 lpQSup  
    ─ 继续,拖动求解器(Solver)向导到场景(Scenery)窗口。 i*|\KM?P  
    ─ 打开了一个对话框,列出了几种求解器(Solver)范例。 SG6kud\b  
    ─ 求解器(Solver)范例中必须选择VirtualLab。 5]NqRI^0  
    wb]%m1H`:  
    \#f <!R4  
    optiSLang – 初始化优化 D ~stM  
    ".W8)  
    设置求解器系统 }T; P~aG  
    ─ 然后会弹出文件对话框,必须打开VirtualLab输出的system.lpd文件。 kW *f.!  
    qs1 ?IYD  
    24E}<N,g  
    % 5m/  
    optiSLang – 初始化优化 % W=b? :  
    ZjgsR|i  
    参数化的求解器系统 xAK6pDp  
    ─ 参数化的求解器系统包含相应的VirtualLab文件和两个含有参数和结果的XML文件,用于定义优化函数。 qlb- jL  
    ─ 请务必保存计划。 9{(.Il J>  
    ySx>L uY#3  
    =8t]\Y?  
    :# .<[  
    optiSLang – 初始化优化 ,VCyG:dw  
    Rtb7|  
    参数化的求解器系统 le1}0 L  
    ─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 'm4W}F  
    B P2=2)Q  
    Hc>m;[M)l  
    S& S Q  
    optiSLang – 初始化优化 87BHq)  
    Z1 Bp+a3  
    参数化的求解器系统 mp=z  
    ─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 A;*d}Xe&J  
    ─ 通过双击结果(Result)设计标签页中的参数化(Parametric)求解器系统窗口,可以检查参数和结果。 b:Wm8pp?  
    spdvZU=}  
    ]!I7Y.w6  
    pnjXf.g"O  
    optiSLang –设置优化 T?x[C4wf+  
    +_; l|uhT;  
    参数化的求解器系统 bL'aB{s  
    ─ optiSLang可以进行多目标函数的光学系统优化。 S'4(0j  
    ─ 这可以在参数化(Parametric)求解器系统配置的判据(Criteria)标签页中定义。 Jz7!4mu  
    $ {O#  
    ~Lm$i6E <  
    ht2\y&si  
    optiSLang –设置优化 PK{acen  
    ?)kGA$m#  
    参数化的求解器系统 xD5:RE~g  
    ─ 可以通过拖动均匀化对比度(Uniformity Contrast)到目标最小化(Objective Minimize)判据中定义第一目标函数。 \9cG36  
    ─ 因此优化算法会尽可能地使均匀度对比最小化。 <~6h|F8  
    LS7, a|  
    pm_`>3  
    ToJ$A`_!`  
    optiSLang –设置优化 N>XS=2tzN  
    g+pml*LJ  
    参数化的求解器系统 (Dw,DY9  
    ─ 可以通过拖动平均值(Mean)到目标最小化(Objective Maximize)判据中定义第二目标函数。 q=%RDG+  
    ─ 因此优化算法会尽可能地使平均效率最大化。 4x  
    ─ 这步操作被称为多目标优化。 {[+mpKq  
    KVT-P};jy*  
    {@+Ty]e  
    ~io szX  
    optiSLang –设置优化 |G?htZF  
    d/BM&r  
    优化向导 SZ,YS 4M  
    ─ 下一步可以通过拖放来使用优化向导。 ;$smH=I  
    VFRi1\G  
    l038%U~U!  
    ujlY! -GM  
    optiSLang –设置优化 8,C*4y~  
    RloK,bg  
    优化向导 $wo?!gt  
    ─ 第一步,提供了各种系统参数,包括其指定的值范围。 GT0Of~?f  
    ─ 此外,optiSLang提供了一个可视化的值范围,其中标出了初始值。 3BtaH#ZY  
    ─ 然后点击下一步。 {ys=Ndo8  
    lfqiyYFm  
    d-k%{eBV  
         555XCWyrC  
    optiSLang –设置优化 ]ooIr Y8  
    qU#1i:(F*  
    优化向导 1JztFix  
    ─ 第二步,如果在参数化的求解器系统中没有指定优化条件,则此时可以指定。 7UdM  
    ─ 也可以从其他文档中输入条件。 U56G.  
    ─ 然后点击下一步。 - `p4-J!Fy  
    H@%GSE  
    (NF~Ck$#q  
    G/7cK\^u  
    optiSLang –设置优化 ioYGZ%RG#  
    3Nq N \5B:  
    优化向导 3HcQ(+Z  
    ─ 第三步,选择优化方法。 VXR>]HUF  
    ─ optiSLang提供了类似于红绿灯的建议形式来选择合适的方法: z^#;~I @M  
     红:不适用 ~N<4L>y<  
     黄:适用 b[o"7^H  
     绿:推荐 ;<j0f~G`  
    ─ 该例中推荐使用进化算法。 `HZ;NRr  
    ─ 然后点击下一步。 uBNn6j  
    ]x(e&fyHB  
    m^ tFi7c  
    PIdikA  
    optiSLang –设置优化 TFkZpe;  
    '}B+r@YCN  
    优化向导 1*9U1\z  
    ─ 然后,需要指定一些附加选项。 YoBPLS`K  
    ─ 建议在算法运行期间显示后期处理选项,以便在优化运行期间访问结果数据。 e\!0<d  
    ─ 然后点击结束。 Z -W(l<  
    inh=WUEW  
    eHn7iuS8  
    SqEgn}m$  
    optiSLang –进化算法的高级设置 +@p% p  
    + HK8jCa  
    高级设置 { g/0x,-Z  
    ─ 双击创建优化,可以调整优化算法的详细参数。 -* WXMzr  
    &jslyQ#  
    @?yX!_YC  
    optiSLang –进化算法的高级设置 ?o81E2TJO  
    nxWY7hU  
    高级设置 BD_Iz A<wK  
    ─ 双击创建优化,可以调整优化算法的详细参数。 gMWjk7  
    ─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 ^c^#dpn  
    BJM.iXU)[  
    =g9*UzA"O  
         g# Sl %Y  
    optiSLang –进化算法的高级设置 i rU 6D  
    zO).T M_  
    高级设置 8<8:+M}  
    ─ 双击创建优化,可以调整优化算法的详细参数。 BK)$'AqO  
    ─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 y9q8i(E0  
    ─ 在标签页“其他”中,提供了一些预定义的参数,适用于大部分优化。(例如“EA 10000”) oSy yd  
    `6lr4Kk @R  
    8ZM&(Lz7u  
         pEBM3r!X  
    optiSLang –进化算法的高级设置 K{|p~B  
    eJxw) zd7  
    高级设置 OB Otuu.  
    ─ 此外,作为附加选项,可以调整optiSLang是否自动保存。 9N@W\DT  
    ─ 默认情况下,在计算每个设计迭代后,项目会自动保存。 Q=AavKn#  
    ─ 特别是对于计算时间短的设计,这会产生大量开销并减慢优化速度。 Cs9.&Y  
    ─ 因此,建议将自动保存选项设置为每50或100个完成的设计后保存。 W+UfGk}A  
    i BF|&h(\  
    D8Ykg >B;&  
         #gz M|  
    optiSLang –设计计算的并行化 n>ULRgiT:o  
    o]yl ;I  
    并行化设置 $c 0h. t  
    ─ 一些优化算法允许并行计算设计。 l_o@miG/  
    ─ 例如,在进化算法的情况下,一代的所有成员设计的参数是已知的,因此可以同时计算以减少计算时间。 B8f8w)m  
    ─ 为了允许并行计算,必须启用多个求解器。 \fG#7_wt  
    ─ 通过双击VirtualLab求解器,可以找到此附加选项。 #$18*?tLv|  
    ─ 建议数量为CPU的一半到全部真实核心之间,具体取决于每个设计的计算并行化。 7 n8"/0kc:  
    F5P[dp-`1  
    wSa)*]%  
         }=<  
    optiSLang –开始优化 TW)c#P43K  
    w_.F' E  
    运行优化 &,zq%;-f  
    ─ 单击场景(Scenery)中的进化算法(Evolutionary Algorithm)窗口。 8K:y\1  
    ─ 点击运行按钮开始优化。 2oVSn"  
    B"h#C!E  
    ED=V8';D  
    /]K^ rw[  
    optiSLang –优化结果 K^1oDP  
     gbF+WE  
    优化结果 \.MR""@y`{  
    ─ 优化结束后,可以在新窗口中得到结果。 0 ?s|i :  
    $"+djI?E9  
    [@VP?74  
    OI|[roMK  
    optiSLang –优化结果 B<5R   
    A P)L:7w'e  
    优化结果 Y<N5# );f  
    ─ Pareto2D图以点云的形式同时给出了目标值、均匀度对比和平均效率。 wPQH(~k:  
    ─ 用户能够为他的应用选择最合适的设计。 ur)9x^y  
    ─ 在这个例子中,选择了设计no.8842,具有~16%的均匀度对比和~20%的平均效率。 idLWe9gC  
    4 {y)TZ  
    tr<Nm6!  
    SIBtmm1W  
    optiSLang –优化结果 )eUh=eW  
    ((H^2KJn  
    优化结果 zZL6z4g  
    ─ 每个设计都存储在子文件夹〜Optimization.opdEvolutionary_Algorithm中的optiSLang项目目录中。 3@kf@ Vf  
    ─ 此目录中的每个文件夹(由设计编号命名)包含将设计再次导入VirtualLab所需的所有文件。 I(i}c~ R  
    3O,+=?VK  
    \H1( PA  
    @i 2E\}  
    optiSLang –导入优化结果 |]jb& M  
    $Q&lSVQ  
    导入优化结果 \hTm)-FP  
    ─ 要导入感兴趣的设计,使用Import optiSLang Results功能,选择相应的设计文件夹。 VJeu 8ZJ.  
    ─ 最后,可以在VirtualLab中进一步分析导入的LPD。 a!a-b~#cx  
    z>LUH  
    kjIAep0rT  
    6.sx?YYM  
    总结 ~-ia+A6GIV  
    <CS(c|7  
    作为总结,下表给出了初始和优化后的设计之间的光栅参数和性能标准的比较。 YN/|$sMD|  
     
    分享到