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

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

    上一主题 下一主题
    离线infotek
     
    发帖
    6922
    光币
    28760
    光券
    0
    只看楼主 倒序阅读 楼主  发表于: 2020-08-19
    摘要 N~=I))i  
    u"qVT9C$=  
    g{DehBM  
    '{2]:  
    现代光学系统优化一般会涉及到大量的参数,例如:优化光栅时不仅需要考虑光栅的几何参数,还有所需的入射方向。随着参数数量的大量增加,优化越来越具有挑战性。对于这种情况,VirtualLab Fusion提供了与Dynardo的optiSLang软件的接口,可以使用不同的高级优化算法。 o`c+eMwr(  
    @[J6JT*E  
    VirtualLab Fusion和optiSLang的界面 d/9YtG%q  
    rByth,|  
    VirtualLab Fusion是一种灵活且可定制的建模工具平台,可以仿真复杂的光学装置,例如:将一组平面波耦合入光波导。 Z}$sY>E  
    ? #rXc%F  
    Eto"B"  
    a5#G48'X  
    optiSLang是一种包含各种高级工具的软件平台,包括敏感度分析、多元和多学科优化、鲁棒性评估、可靠性分析和鲁棒设计优化。   /7D5I\  
    两种软件平台的结合使得例如智能光波导耦合等高级光栅结构变为可能。 HMF2sc$N  
    aPelt`  
    VirtualLab Fusion – 光学装置初始化 1k6asz^T  
    :o8`2Z*g  
    初始装置 xJ$uoy3+  
    ─ 一般来说,在VirtualLab中定义的光学系统都可以使用optiSLang进行优化。 2%WeB/)9  
    ─ 该例中的光学系统包含了平面波光源和用于周期性介质的波导耦合探测器。 "BSY1?k{  
    Y|LL]@Lv  
    X "7CN Td  
       7_ix&oVI  
    VirtualLab Fusion – 波导耦合探测器 k3$'K}=d  
    zj r($?  
    波导耦合探测 6#U~>r/  
    ─ 波导耦合探测器是一种特殊工具,用以探测某个周期性结构以特定角度范围入射的效率。 F&6#j  
    ─ 可以从探测器的编辑对话框中的目录定义或加载周期性结构。 r[!~~yu/o  
    I4N7wnBp  
    {%3WHGr%L  
       Vx<{cHQQ  
    VirtualLab Fusion – 波导耦合探测器 $^fF}y6N  
    波导耦合探测 s8,YQ5-  
    ─ 该例中使用了倾斜光栅。 &5-1Cd E  
    73X*|g  
    ZFtR#r(~41  
    5.5kH$;>  
    VirtualLab Fusion – 波导耦合探测器 SEI0G_wk$  
    波导耦合探测 1TTS@\  
    ─ 该例中使用了倾斜光栅。 .F7?}8>Z  
    z|3v~,  
    @LI;q  
    #tKks:eL  
    VirtualLab Fusion – 波导耦合探测器 _5 SvZ;4  
    =7+%31  
    波导耦合探测 2B$dT=G  
    ─ 输入光源的入射角度范围在探测器编辑对话框中指定。 ?-c|c_|$  
    ─ 通过最小和最大笛卡尔坐标系角度alpha和beta与它们的采样点数定义。 b~&cYk'  
    %EU_OS(u.{  
    ouCh2Y/_  
    ^rfR<Q`  
    VirtualLab Fusion – 波导耦合 ~:JAWs$\V  
    !LH;K  
    波导耦合探测 <2]h$53y!  
    ─ 可以从探测得到的效率计算平均值和均匀对比度,并在探测器结果标签页中给出。 4C?{p%3c  
    ─ 作为结果,探测器可以用于评估在特定角度范围内的周期性结构。 R8[VD iM6E  
    Mi.2 >  
    oA5Qk3b:  
    T2rwK2  
    VirtualLab Fusion – 输出LPD至OPtiSLang sd\}M{U  
    d"n>Q Tn\  
    输出LPD至OPtiSLang sP^:*B0  
    ─ File→Export→Export to optiSlang Project *66EkCj  
    nq?+b >//  
    "*#f^/LS  
    VirtualLab Fusion – 输出LPD至OPtiSLang !y_L~81?  
    2j4202  
    输出LPD至OPtiSLang Ru`afjc  
    ─ File→Export→Export to optiSlang Project !PoyM[Z"f  
    ─ 输出LPD文件,并产生输入至optiSLang的必要光学装置文件。 8WDL.IO  
    Gs"lmX-{$j  
    1 0zM8<bl  
    7a9">:~  
    VirtualLab Fusion – 输出LPD至OPtiSLang 9K}DmS  
    vVtkB$]L  
    输出LPD至OPtiSLang KLM6#6`  
    ─ 在输出对话框窗口。 kq=Htbv7  
     可定义参数空间,并包含了参数的变化范围。 4'D^>z!c  
     可以选择保存到的输出文件夹。 5(#z)T  
     可以指定模拟引擎,用于分析。 Lfx a^0  
    by9UwM=gp  
    0(c,J$I]Z!  
    z}J~X%}e  
    optiSLang – 初始化优化 w +UB XW  
    0* x ?rO?  
    设置求解器系统 8Q/cJ+&  
    ─ File→New project… < k(n%  
    @8J*vY =e  
    A?HDY_u  
    ~uY5~Qs9G  
    optiSLang – 初始化优化 @}UOm- M  
    O~8jz  
    设置求解器系统 -U> )B  
    ─ 继续,拖动求解器(Solver)向导到场景(Scenery)窗口。 v89tV9O)  
    ─ 打开了一个对话框,列出了几种求解器(Solver)范例。 MA tF,  
    ─ 求解器(Solver)范例中必须选择VirtualLab。 kxe{HxM$Z  
    G :+D1J]  
    _Rj bm'kC  
    optiSLang – 初始化优化
     XU"G  
    %mlH  
    设置求解器系统 " ?aE3$/  
    ─ 然后会弹出文件对话框,必须打开VirtualLab输出的system.lpd文件。 -"yma_  
    oSYJXs  
    i|H^&$|  
    i`9}">7v~  
    optiSLang – 初始化优化 ?a+J4Zr3  
    W"/,<xHuh  
    参数化的求解器系统 X..M!3W  
    ─ 参数化的求解器系统包含相应的VirtualLab文件和两个含有参数和结果的XML文件,用于定义优化函数。 ( q*/=u  
    ─ 请务必保存计划。 Q%'4jn?H  
    : [?7,/w  
    e#6H[t  
    Tw/7P~*  
    optiSLang – 初始化优化 ?aaYka]  
    #( 4)ps.  
    参数化的求解器系统 toG- Dz&  
    ─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 l;z+E_sQ  
    J'#o6Ud  
    vG}\Amx+  
    @(/$;I,  
    optiSLang – 初始化优化 1(aib^!B  
    aQWg?,Ju6  
    参数化的求解器系统 e'|P^G>g  
    ─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 }+NlY D:qF  
    ─ 通过双击结果(Result)设计标签页中的参数化(Parametric)求解器系统窗口,可以检查参数和结果。 _B 4 N2t$  
    ?)qm=mebY  
    &xj,.;  
    L!5="s[}  
    optiSLang –设置优化 suX^"Io%!  
    4tiCxf)  
    参数化的求解器系统 *bcemH8f  
    ─ optiSLang可以进行多目标函数的光学系统优化。 7'.6/U  
    ─ 这可以在参数化(Parametric)求解器系统配置的判据(Criteria)标签页中定义。 Ov:U3P?%  
    tPJU,e)  
    ?6[u\V  
    #B$_ily)  
    optiSLang –设置优化 QSYKYgxC  
    -> 'q  
    参数化的求解器系统 /ubGa6N  
    ─ 可以通过拖动均匀化对比度(Uniformity Contrast)到目标最小化(Objective Minimize)判据中定义第一目标函数。 (:# 4{C  
    ─ 因此优化算法会尽可能地使均匀度对比最小化。 !q+ %]k?x  
    &~)1mnv.  
    L@ N\8mf  
    t(^Lh.<a  
    optiSLang –设置优化 o2y #Yk  
    }N3Ur~X\  
    参数化的求解器系统 DQ6pe)E|  
    ─ 可以通过拖动平均值(Mean)到目标最小化(Objective Maximize)判据中定义第二目标函数。 }WNgKw  
    ─ 因此优化算法会尽可能地使平均效率最大化。 /h!iLun7I  
    ─ 这步操作被称为多目标优化。 "Bn]-o|r  
    6:bvq?5a5  
    !E/%Hv1  
    iaaD1 <m  
    optiSLang –设置优化 Wf  *b"#  
    `t #I e *  
    优化向导 JR/^Go$^  
    ─ 下一步可以通过拖放来使用优化向导。 ^@q $c  
    ;cZ]^kof  
    -QydUr/(o  
    >\ym{@+*  
    optiSLang –设置优化 t7 $2/C  
    /#4BUfY f  
    优化向导 IPh_QE2g  
    ─ 第一步,提供了各种系统参数,包括其指定的值范围。 WkY>--^  
    ─ 此外,optiSLang提供了一个可视化的值范围,其中标出了初始值。 0'y3iar  
    ─ 然后点击下一步。 wW;!L =j  
    u/ 74E0$S  
    r`=!4vY2  
    !P* z=  
    optiSLang –设置优化 O7Awti-X  
    cW, 6 MAQo  
    优化向导 b"#|0d0  
    ─ 第二步,如果在参数化的求解器系统中没有指定优化条件,则此时可以指定。 \C E8S+Z%  
    ─ 也可以从其他文档中输入条件。 |FD-q.AV  
    ─ 然后点击下一步。 uw&'=G6v  
    r \]iw v  
    3Q(#2tL=  
    R<-(  
    optiSLang –设置优化 9k!#5_ M  
    `_&7-;)i*\  
    优化向导 ,`< [ej   
    ─ 第三步,选择优化方法。 &mp@;wI6@  
    ─ optiSLang提供了类似于红绿灯的建议形式来选择合适的方法: GCPSe A~cx  
     红:不适用 oBTRO0.s+  
     黄:适用 6tmn1:  
     绿:推荐 i(XqoR-x  
    ─ 该例中推荐使用进化算法。 KGb3n;]  
    ─ 然后点击下一步。 R`|GBVbv  
    i50^%,  
    H<YS2Ed  
    My!<_Hp-W  
    optiSLang –设置优化 s4c2  
    Rm!Iv&{  
    优化向导 e|ngnkf(G  
    ─ 然后,需要指定一些附加选项。 kC)ye"r  
    ─ 建议在算法运行期间显示后期处理选项,以便在优化运行期间访问结果数据。 sjV>&eb  
    ─ 然后点击结束。 J$D#)w!$j  
    LHz-/0 [  
    GoNX\^A  
     cUz7F  
    optiSLang –进化算法的高级设置 <ibEo98  
    n +z5;'my  
    高级设置 thjCfP   
    ─ 双击创建优化,可以调整优化算法的详细参数。 Yl#r9TM  
    vHPp$lql  
    @t6B\ ?4'T  
    optiSLang –进化算法的高级设置 (1(dL_?  
    k%)QrRnB  
    高级设置 BK8)'9/  
    ─ 双击创建优化,可以调整优化算法的详细参数。 P*6B+8h"5g  
    ─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 r4h4A w{  
    Zg/ra1n  
    0x\bDWZ_  
    |%R}!O<.c  
    optiSLang –进化算法的高级设置 B6iH[dTy_  
    q8{) 27f,  
    高级设置 A~6:eappH  
    ─ 双击创建优化,可以调整优化算法的详细参数。 Vn-y<*np  
    ─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 g9`z]qGWS:  
    ─ 在标签页“其他”中,提供了一些预定义的参数,适用于大部分优化。(例如“EA 10000”) ~P85Or  
    Q9 b.]W  
    /MB3w m  
    "$*&bC#dE  
    optiSLang –进化算法的高级设置 }Zue?!KQ  
    )8:Ltn%  
    高级设置 r_f?H@v  
    ─ 此外,作为附加选项,可以调整optiSLang是否自动保存。 [Az<E3H"  
    ─ 默认情况下,在计算每个设计迭代后,项目会自动保存。 XP"lqyAi  
    ─ 特别是对于计算时间短的设计,这会产生大量开销并减慢优化速度。 [wJM=` !W  
    ─ 因此,建议将自动保存选项设置为每50或100个完成的设计后保存。 e:E:"elr]  
    FDA``H~  
    -# [=1 Y  
    qJb9JL$s  
    optiSLang –设计计算的并行化 %o4ZD7@ '  
    w NlC2is  
    并行化设置 >i%{5d  
    ─ 一些优化算法允许并行计算设计。 FabzP_<b  
    ─ 例如,在进化算法的情况下,一代的所有成员设计的参数是已知的,因此可以同时计算以减少计算时间。 -rSp gk0wL  
    ─ 为了允许并行计算,必须启用多个求解器。 ?H\K];  
    ─ 通过双击VirtualLab求解器,可以找到此附加选项。 RG9YA&1ce  
    ─ 建议数量为CPU的一半到全部真实核心之间,具体取决于每个设计的计算并行化。 }]ak6'|[  
    "/e:V-W   
    6\7b E$K  
    HrH-e= j  
    optiSLang –开始优化 E({W`b~_f  
    [eebIJs  
    运行优化 Z6eM~$Y  
    ─ 单击场景(Scenery)中的进化算法(Evolutionary Algorithm)窗口。 f D<9k  
    ─ 点击运行按钮开始优化。 uz6S7I  
    7cTDbc!E-  
    roDE?7x1  
    -\OvOkr  
    optiSLang –优化结果 Em?Z  
    ~)X yrKw  
    优化结果 slC 38  
    ─ 优化结束后,可以在新窗口中得到结果。 #)&kF+  
    Cku#[?G  
    6;WfsG5  
    $9!2c/  
    optiSLang –优化结果 w\o?p.drp=  
    +{(f@,&~{  
    优化结果 F<K;tt  
    ─ Pareto2D图以点云的形式同时给出了目标值、均匀度对比和平均效率。 ^=f<WKn  
    ─ 用户能够为他的应用选择最合适的设计。 ?RyeZKf  
    ─ 在这个例子中,选择了设计no.8842,具有~16%的均匀度对比和~20%的平均效率。 5eP8nn.D  
    ,Jm2|WKH  
    \$.8iTr@  
    OPVF)@"ptM  
    optiSLang –优化结果 {t<E*5N]a  
    By& T59  
    优化结果 }^!8I7J.  
    ─ 每个设计都存储在子文件夹〜Optimization.opdEvolutionary_Algorithm中的optiSLang项目目录中。 F xek#  
    ─ 此目录中的每个文件夹(由设计编号命名)包含将设计再次导入VirtualLab所需的所有文件。 e :(7$jo  
    S{HAFrkm7  
    #|<\q*<  
    5bKBVkJ'  
    optiSLang –导入优化结果 1:!_AU?  
    @d&(*9Y  
    导入优化结果 . V5Pr}"y  
    ─ 要导入感兴趣的设计,使用Import optiSLang Results功能,选择相应的设计文件夹。 BvQMq5&  
    ─ 最后,可以在VirtualLab中进一步分析导入的LPD。 k!?sHUAj  
    #m x4pf{  
    U"nk AW  
    Rcg q7W  
    总结 "Y%fk/v8  
    =E6ND8l@2  
    作为总结,下表给出了初始和优化后的设计之间的光栅参数和性能标准的比较。 <v&L90+s\;  
    Yatd$`,hW  
    in-|",O`Z  
    &B1j,$NRc  
    文档信息 6T"4<w[  
    }W2FF  
    O52B  
    WC& V9Yk  
    QQ:2987619807 Q]/ZVcoqo  
     
    分享到