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

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

    上一主题 下一主题
    离线infotek
     
    发帖
    7244
    光币
    30361
    光券
    0
    只看楼主 倒序阅读 楼主  发表于: 2021-04-28
    摘要 DnvJx!#R  
    @P#uH5U  
    Q}FDu,  
    i#$9>X  
    现代光学系统的优化一般会涉及到大量的参数,例如:优化光栅时不仅需要考虑光栅的几何参数,还有所需的入射方向。随着参数数量的大量增加,优化越来越具有挑战性。对于这种情况,VirtualLab Fusion提供了与Dynardo的optiSLang软件的接口,可以使用不同的高级优化算法。 :#0uy1h  
    (mz5vzyw  
    VirtualLab Fusion和optiSLang的界面 _+g5;S5  
    .CdaOWM7  
    VirtualLab Fusion是一种灵活且可定制的建模工具平台,可以仿真复杂的光学装置,例如:将一组平面波耦合入光波导。 Oe4 l` =2  
    Z]DO  
    pA%XqG*=Y  
    LWHP31{R  
    optiSLang是一种包含各种高级工具的软件平台,包括敏感度分析、多元和多学科优化、鲁棒性评估、可靠性分析和鲁棒设计优化。   nkTH#WTfR  
    两种软件平台的结合使得例如智能光波导耦合等高级光栅结构变为可能。 +]uW|owxo  
    hO(8v&ns3  
    VirtualLab Fusion – 光学装置初始化 Hy5_iYP5  
    {[G2{ijRz  
    初始装置 _ vVw2HH  
    ─ 一般来说,在VirtualLab中定义的光学系统都可以使用optiSLang进行优化。 ,X(P/x{B  
    ─ 该例中的光学系统包含了平面波光源和用于周期性介质的波导耦合探测器。 -Bbg'=QZa  
    *6^|i}  
    wLC!vX.S  
       Os^sOOSY  
    VirtualLab Fusion – 波导耦合探测器 9;2PoW8  
    V2sWcV?  
    波导耦合探测 ' Bb]< L`  
    ─ 波导耦合探测器是一种特殊工具,用以探测某个周期性结构以特定角度范围入射的效率。 J2Y-D'*s  
    ─ 可以从探测器的编辑对话框中的目录定义或加载周期性结构。 @%&;V(  
    ";}Lf1M9  
    2K<rK(  
       .o91^jt  
    VirtualLab Fusion – 波导耦合探测器 yi<&'L;   
    波导耦合探测 dQ?4@  
    ─ 该例中使用了倾斜光栅。 q9.)p  
    au7%K5  
    (-*NRY3*  
    r@FdxsCnGM  
    VirtualLab Fusion – 波导耦合探测器 Mf7Q+_!  
    波导耦合探测 }qmBn`3R  
    ─ 该例中使用了倾斜光栅。 $'e;ScH  
    {9U<!  
    #\N?ka}!  
    v#&r3ZW0  
    VirtualLab Fusion – 波导耦合探测器 kv&%$cA  
    kf\n  
    波导耦合探测 B04%4N.g"X  
    ─ 输入光源的入射角度范围在探测器编辑对话框中指定。 j*f%<`2`j  
    ─ 通过最小和最大笛卡尔坐标系角度alpha和beta与它们的采样点数定义。 #m?GBr%k  
    jUtrFl  
    .z&V!2zp  
    E9pKR+P  
    VirtualLab Fusion – 波导耦合 KK4>8zGR  
    #Z<pks2 y  
    波导耦合探测 \DBoe :0~  
    ─ 可以从探测得到的效率计算平均值和均匀对比度,并在探测器结果标签页中给出。 ,6Sa  
    ─ 作为结果,探测器可以用于评估在特定角度范围内的周期性结构。 11}sRu/  
    !Sr^4R+Z  
    ms'&.u&<  
    %Q5D#d"p`  
    VirtualLab Fusion – 输出LPD至OPtiSLang DR3M|4[  
    LqIMU4Ex  
    输出LPD至OPtiSLang c:I1XC  
    ─ File→Export→Export to optiSlang Project -v?,{?$0  
    6 GX'&z  
    ^@l_K +T  
    VirtualLab Fusion – 输出LPD至OPtiSLang rubqk4  
    #n%?}  
    输出LPD至OPtiSLang 58zs% +F  
    ─ File→Export→Export to optiSlang Project dVc;Tt  
    ─ 输出LPD文件,并产生输入至optiSLang的必要光学装置文件。 zOYkkQE3mJ  
    IrQ8t!  
    FQNhn+A  
    iKv`[k  
    VirtualLab Fusion – 输出LPD至OPtiSLang _?<Y>B, E  
    qY\zZ  
    输出LPD至OPtiSLang WS9n.opl}  
    ─ 在输出对话框窗口。 q)gZo[]~  
     可定义参数空间,并包含了参数的变化范围。 idnn%iO  
     可以选择保存到的输出文件夹。 lMAmico  
     可以指定模拟引擎,用于分析。 BL0WI9  
    X5 lB],t"=  
    zr@Bf!VG:  
    1  6;l,@  
    optiSLang – 初始化优化 :Q2\3  
    /- z_"G  
    设置求解器系统 8OH<ppi  
    ─ File→New project… T[a1S?_*T  
    6nt$o)[  
    y$s}-O]/-  
    //@_`.  
    optiSLang – 初始化优化 &<@ { d  
    Y>t*L#i  
    设置求解器系统 q_HC68YF,  
    ─ 继续,拖动求解器(Solver)向导到场景(Scenery)窗口。 ?I}jsm1)  
    ─ 打开了一个对话框,列出了几种求解器(Solver)范例。 yd "|HHx  
    ─ 求解器(Solver)范例中必须选择VirtualLab。 gJi11^PK  
    3Zg=ZnF  
    ]n?a h  
    optiSLang – 初始化优化
    R4!qm0Cd  
    QNFA#`H  
    设置求解器系统 #W 1`vke3  
    ─ 然后会弹出文件对话框,必须打开VirtualLab输出的system.lpd文件。 R*.XbkW~  
    oV ?tp4&  
    Jx-^WB  
    (HLy;^#R  
    optiSLang – 初始化优化 :eS7"EG{3  
    ~U*2h =]  
    参数化的求解器系统 5{ #9b^  
    ─ 参数化的求解器系统包含相应的VirtualLab文件和两个含有参数和结果的XML文件,用于定义优化函数。 FU!U{qDI  
    ─ 请务必保存计划。 6_;3   
    }@@1N3nnxV  
    X ~4^$x  
    h 7kyz  
    optiSLang – 初始化优化 v|_?qBs"  
    lO%Z4V_Mj  
    参数化的求解器系统 [=e61Z  
    ─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 uI%h$  
    ; 5my(J*b  
    /.'1i4Xa1P  
    8v1asFxs.  
    optiSLang – 初始化优化 5g F}7D@  
    [HF)d#A  
    参数化的求解器系统 A42At]  
    ─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 )%;#~\A  
    ─ 通过双击结果(Result)设计标签页中的参数化(Parametric)求解器系统窗口,可以检查参数和结果。 dge58A)Q  
    Ul@ZCv+  
    U,iTURd  
    i/O!bq[o  
    optiSLang –设置优化 )%X\5]w`  
    )~d2`1zGS  
    参数化的求解器系统 C'n 9n!hR  
    ─ optiSLang可以进行多目标函数的光学系统优化。 3I:DL#f  
    ─ 这可以在参数化(Parametric)求解器系统配置的判据(Criteria)标签页中定义。 a9QaFs"  
    PG<N\  
    :KX/`   
    z-7F,$  
    optiSLang –设置优化 .%->   
    U@& <5'  
    参数化的求解器系统 Km+29  
    ─ 可以通过拖动均匀化对比度(Uniformity Contrast)到目标最小化(Objective Minimize)判据中定义第一目标函数。 1b6gTfU  
    ─ 因此优化算法会尽可能地使均匀度对比最小化。 5*g@;aR1  
    A ,LAA$  
    \`>Y   
    l*'8B)vN2  
    optiSLang –设置优化 wk9tJ#}  
    \vQ_:-A  
    参数化的求解器系统 Q2 rZMK  
    ─ 可以通过拖动平均值(Mean)到目标最小化(Objective Maximize)判据中定义第二目标函数。 = 1}-]ctVn  
    ─ 因此优化算法会尽可能地使平均效率最大化。 L@a-"(TN+  
    ─ 这步操作被称为多目标优化。 "45BOw&72G  
    qh.c#t  
    F,:F9r?l,H  
    b17p; wS  
    optiSLang –设置优化 &`>*3m(  
     }O1F.5I1  
    优化向导 S^x9 2&!  
    ─ 下一步可以通过拖放来使用优化向导。 rEAPlO.Yp  
    Fof_xv9  
    w_U5w  
    X/7: *  
    optiSLang –设置优化 B.Xm*adBT  
    U4N S.`V  
    优化向导 Do_L  
    ─ 第一步,提供了各种系统参数,包括其指定的值范围。 Z@ I%ppd  
    ─ 此外,optiSLang提供了一个可视化的值范围,其中标出了初始值。 40g&zU-  
    ─ 然后点击下一步。 ^<% w'*gR  
    :A[bqRqe  
    n]j(tP  
    optiSLang –设置优化 Ok:@F/ v  
    jNIM1_JjD  
    优化向导 e#zGLxa  
    ─ 第二步,如果在参数化的求解器系统中没有指定优化条件,则此时可以指定。 yY"%6k,ZB  
    ─ 也可以从其他文档中输入条件。 <K97eAcW  
    ─ 然后点击下一步。 P?0b-Qr$a  
    U;jk+i  
    } KMdfA  
    a,j!B hu  
    optiSLang –设置优化 G3U+BC23E  
    T|{BT! W1E  
    优化向导 a:;*"p[R  
    ─ 第三步,选择优化方法。 d!gm4hQhl  
    ─ optiSLang提供了类似于红绿灯的建议形式来选择合适的方法: ^mz_T+UOe  
     红:不适用 J,~)9Kh$  
     黄:适用 r{<u\>6X>P  
     绿:推荐 h h8UKEM-  
    ─ 该例中推荐使用进化算法。 p}Gk|Kjlq,  
    ─ 然后点击下一步。 7 1)#'ey  
    9J%>2AA  
    a"EQldm|d  
    uY;/3 ?k&  
    optiSLang –设置优化 C8t+-p  
    ?%LD1 <ya  
    优化向导 T\WNT#My  
    ─ 然后,需要指定一些附加选项。 !t_,x=  
    ─ 建议在算法运行期间显示后期处理选项,以便在优化运行期间访问结果数据。 @Td[rHl  
    ─ 然后点击结束。 NF a ;  
    i#-Jl7V[a  
    w"BTu-I  
    )5&m:R9  
    optiSLang –进化算法的高级设置 Vm.u3KE  
    W4#:_R,&,  
    高级设置 e6_.ID'3  
    ─ 双击创建优化,可以调整优化算法的详细参数。 {?jdPh  
    >WD^)W fa  
    |Ji?p>\~  
    optiSLang –进化算法的高级设置 sZbzY^P  
    i5wA=K_  
    高级设置 <r\)hx0ov  
    ─ 双击创建优化,可以调整优化算法的详细参数。 O.4"h4{'  
    ─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 yNT2kB'  
    DQ9s57VxC!  
    lZua"Ju  
    -s)2b ;  
    optiSLang –进化算法的高级设置 CVUJ(D&Q  
    tEEhSG)s%  
    高级设置 .o-j  
    ─ 双击创建优化,可以调整优化算法的详细参数。 JZtFt=>q  
    ─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 {&;b0'!Tf  
    ─ 在标签页“其他”中,提供了一些预定义的参数,适用于大部分优化。(例如“EA 10000”) C= m Y  
    pvM8PlYo]`  
    HdLkof2i  
    $e;!nI;z  
    optiSLang –进化算法的高级设置 U'lD|R,g  
    ?ykZY0{B  
    高级设置 feopO j6~+  
    ─ 此外,作为附加选项,可以调整optiSLang是否自动保存。 E:o:)h?$  
    ─ 默认情况下,在计算每个设计迭代后,项目会自动保存。 i&3 0n#  
    ─ 特别是对于计算时间短的设计,这会产生大量开销并减慢优化速度。 ^GAdl}  
    ─ 因此,建议将自动保存选项设置为每50或100个完成的设计后保存。 =ddx/zN  
    "''<:K|  
    s7 KKH w  
    zo5.}mr+  
    optiSLang –设计计算的并行化 ."^dJ |fN  
    \}Wkj~IX  
    并行化设置 EGDE4n5>I  
    ─ 一些优化算法允许并行计算设计。 :aqh8b v  
    ─ 例如,在进化算法的情况下,一代的所有成员设计的参数是已知的,因此可以同时计算以减少计算时间。 u}rot+)%  
    ─ 为了允许并行计算,必须启用多个求解器。 R] [M_ r  
    ─ 通过双击VirtualLab求解器,可以找到此附加选项。 }ri*e2y)  
    ─ 建议数量为CPU的一半到全部真实核心之间,具体取决于每个设计的计算并行化。 ?% X9XH/!  
    6nfkZvn  
    $`Xx5 Ts7  
    LWL>hd  
    optiSLang –开始优化 vX/A9Qi,U.  
    wW<"l"x,  
    运行优化 &`Di cfD  
    ─ 单击场景(Scenery)中的进化算法(Evolutionary Algorithm)窗口。 "[?/I3 {E  
    ─ 点击运行按钮开始优化。 n>0dz#  
    y;Zfz~z  
    +{%4&T<nHw  
    iy#OmI>j  
    optiSLang –优化结果 {l11WiqQH  
    9HE(*S  
    优化结果 }H#t( 9,U  
    ─ 优化结束后,可以在新窗口中得到结果。 t(Zs*c(  
    Uaj=}p\+.p  
    '*XNgvX  
    )c'>E4>  
    optiSLang –优化结果 %1@<),  
    A]+h<Y~}  
    优化结果 eE{L>u  
    ─ Pareto2D图以点云的形式同时给出了目标值、均匀度对比和平均效率。 -h@0 1  
    ─ 用户能够为他的应用选择最合适的设计。 H/3Zdj 9  
    ─ 在这个例子中,选择了设计no.8842,具有~16%的均匀度对比和~20%的平均效率。 N39nJqo>"  
    ,4Fqvg  
    P\mm8s`f  
    W^ :/0WR  
    optiSLang –优化结果 oyt//SE  
    ZQkw}3*n  
    优化结果 jDX<iX%e  
    ─ 每个设计都存储在子文件夹〜Optimization.opdEvolutionary_Algorithm中的optiSLang项目目录中。 $vLV< y07  
    ─ 此目录中的每个文件夹(由设计编号命名)包含将设计再次导入VirtualLab所需的所有文件。 |3s&Y`x-D  
    AMd)d^;  
    2E2}|: ||&  
    y,&M\3A  
    optiSLang –导入优化结果 =b!J)]  
    VDKS_n  
    导入优化结果 SO<m(o)G2  
    ─ 要导入感兴趣的设计,使用Import optiSLang Results功能,选择相应的设计文件夹。 kN j3!u$  
    ─ 最后,可以在VirtualLab中进一步分析导入的LPD。 dT)KvqX  
    V0Z7o\-J  
    /plUzy2Yu  
    F!&pENQ  
    总结 "x;k'{S  
    +w.Kv ;  
    作为总结,下表给出了初始和优化后的设计之间的光栅参数和性能标准的比较。 3> #mO}\  
    K) `:v|d  
    !1'-'Q@f  
    qysa!B  
    文档信息 (Q5@MfK`  
    jN%p5nZ^EK  
    egvy#2b@  
    UY-IHz;&O-  
    QQ:2987619807 fHd!/%iG  
     
    分享到