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

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

    上一主题 下一主题
    离线infotek
     
    发帖
    7101
    光币
    29646
    光券
    0
    只看楼主 倒序阅读 楼主  发表于: 2020-08-19
    摘要 >713H!uj  
    hVLV Mqd  
    tsys</E&  
    p8bAz  
    现代光学系统优化一般会涉及到大量的参数,例如:优化光栅时不仅需要考虑光栅的几何参数,还有所需的入射方向。随着参数数量的大量增加,优化越来越具有挑战性。对于这种情况,VirtualLab Fusion提供了与Dynardo的optiSLang软件的接口,可以使用不同的高级优化算法。 $Ao iH{f  
    /8Xd2-  
    VirtualLab Fusion和optiSLang的界面 hha!uD~(  
    37U$9]  
    VirtualLab Fusion是一种灵活且可定制的建模工具平台,可以仿真复杂的光学装置,例如:将一组平面波耦合入光波导。 TMAart; <  
    :3 p&h[M  
    *3s,~<''%  
    _uQxrB"9  
    optiSLang是一种包含各种高级工具的软件平台,包括敏感度分析、多元和多学科优化、鲁棒性评估、可靠性分析和鲁棒设计优化。   #}8 x  
    两种软件平台的结合使得例如智能光波导耦合等高级光栅结构变为可能。 Nxr%xTD  
    *{1]b_<  
    VirtualLab Fusion – 光学装置初始化 !IAd.<,  
    *m.4)2u=  
    初始装置 kgGMA 7Jy  
    ─ 一般来说,在VirtualLab中定义的光学系统都可以使用optiSLang进行优化。 rd hM#?  
    ─ 该例中的光学系统包含了平面波光源和用于周期性介质的波导耦合探测器。 ~H\1dCW  
    *If ]f0?%  
    g(-}M`  
       9{Xh wi)z  
    VirtualLab Fusion – 波导耦合探测器 <52)  
    3uJ>:,~r  
    波导耦合探测 em, j>qp  
    ─ 波导耦合探测器是一种特殊工具,用以探测某个周期性结构以特定角度范围入射的效率。 c3X8Wi7m  
    ─ 可以从探测器的编辑对话框中的目录定义或加载周期性结构。 E*]%@6tH  
     FtmI\,  
    Ou,Eu05jt'  
       6e q`/~#  
    VirtualLab Fusion – 波导耦合探测器 r3mQoTvnv  
    波导耦合探测 O od?ifA  
    ─ 该例中使用了倾斜光栅。 NoD\t(@h  
    g6l&;S40  
    S/H!a:_5r  
    ?CHFy2%Y  
    VirtualLab Fusion – 波导耦合探测器 \rPT7\ZA  
    波导耦合探测 6Cvg-X@  
    ─ 该例中使用了倾斜光栅。 $]I" ,ef  
    e_z"<yq  
    C$#X6Q!,  
    jSMs<ox  
    VirtualLab Fusion – 波导耦合探测器 3E`poE  
    [bZASeh  
    波导耦合探测 w/Ej>OS  
    ─ 输入光源的入射角度范围在探测器编辑对话框中指定。 /'WVRa  
    ─ 通过最小和最大笛卡尔坐标系角度alpha和beta与它们的采样点数定义。 QJKVNOo  
    t]PO4GA  
    ^Z~'>J  
    T*i rCe  
    VirtualLab Fusion – 波导耦合 ]id5jVY  
    }Pf7YuUZZ  
    波导耦合探测 xK;WJm"  
    ─ 可以从探测得到的效率计算平均值和均匀对比度,并在探测器结果标签页中给出。 qw mZOR#  
    ─ 作为结果,探测器可以用于评估在特定角度范围内的周期性结构。 mIUpAOC`"Z  
    dX>l"))yR  
    itmQH\9 8  
    q[T='!Z\  
    VirtualLab Fusion – 输出LPD至OPtiSLang *3r{s'm  
    &f$[>yg1-  
    输出LPD至OPtiSLang "i3Q)$"S  
    ─ File→Export→Export to optiSlang Project T.R(  
    Tx!c }  
    '@Q aeFm  
    VirtualLab Fusion – 输出LPD至OPtiSLang H;nq4;^yK  
    AroXf#.  
    输出LPD至OPtiSLang EPMdR66  
    ─ File→Export→Export to optiSlang Project %U$PcHOo  
    ─ 输出LPD文件,并产生输入至optiSLang的必要光学装置文件。 2 - ?  
    _O*"_^6  
    yg-uL48q  
    <D!\"C  
    VirtualLab Fusion – 输出LPD至OPtiSLang  )$ +5imi  
    r\sQ8/  
    输出LPD至OPtiSLang MX.=k>  
    ─ 在输出对话框窗口。 lY_&P.B  
     可定义参数空间,并包含了参数的变化范围。 <O#/-r>2  
     可以选择保存到的输出文件夹。 |( =`l  
     可以指定模拟引擎,用于分析。 ixFuqPij  
    TXlxnB  
    Y)=89s&t  
    WV'FW)%  
    optiSLang – 初始化优化  ou[_ y  
    Zg@NMT  
    设置求解器系统 t6)wR  
    ─ File→New project… ^KsiTVY  
    Jc:gNQCsP  
    qq+fUfB2:  
    4Fr\=TX  
    optiSLang – 初始化优化 ]zza/O;31(  
    TCd1JF0  
    设置求解器系统 K8l|qe  
    ─ 继续,拖动求解器(Solver)向导到场景(Scenery)窗口。 =O)dHY}  
    ─ 打开了一个对话框,列出了几种求解器(Solver)范例。 B0^0d*8t|@  
    ─ 求解器(Solver)范例中必须选择VirtualLab。 fi2@`37PM  
    [Yzh(a8  
    4ZK8Y[]Lv  
    optiSLang – 初始化优化
    _"PT O&E  
    U0+Hk+  
    设置求解器系统 [V5ebj:6w  
    ─ 然后会弹出文件对话框,必须打开VirtualLab输出的system.lpd文件。 Ba\l`$%X  
    tCk;tu!d  
    T{iv4`'  
    tfr*/+F  
    optiSLang – 初始化优化 0.~Pzg  
    C#< :x!  
    参数化的求解器系统 1>"K<6b+  
    ─ 参数化的求解器系统包含相应的VirtualLab文件和两个含有参数和结果的XML文件,用于定义优化函数。 \wxS~T<&L  
    ─ 请务必保存计划。 N%A[}Y0;MW  
    <.0-K_  
    OgiElA.  
    $f-f0t'  
    optiSLang – 初始化优化 @eRR#S  
    >C`b 4xQ  
    参数化的求解器系统 iR9 $E  
    ─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 ;R E|9GR  
    4dXuy>Km  
    `5:Wv b>|  
    af61!?K  
    optiSLang – 初始化优化 1@ )8E`u  
    :t6 w+h  
    参数化的求解器系统 2NLD7A  
    ─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 m ?a&XZ  
    ─ 通过双击结果(Result)设计标签页中的参数化(Parametric)求解器系统窗口,可以检查参数和结果。 ]w/`02w"$  
    -bo5/`x  
    1Z?en  
    vr|9NP]v  
    optiSLang –设置优化 Tw< N  
    ysV0Ed  
    参数化的求解器系统 h&+dIk\[3  
    ─ optiSLang可以进行多目标函数的光学系统优化。 r=<Oy1m/  
    ─ 这可以在参数化(Parametric)求解器系统配置的判据(Criteria)标签页中定义。 !F*7Mif_E  
    WHQg6r  
    :A\8#]3  
    ')w:`8Tl  
    optiSLang –设置优化 \ %Er%yv)  
    ^[no Gjy  
    参数化的求解器系统 wR\Y+Z   
    ─ 可以通过拖动均匀化对比度(Uniformity Contrast)到目标最小化(Objective Minimize)判据中定义第一目标函数。 |*W`}i  
    ─ 因此优化算法会尽可能地使均匀度对比最小化。 $R3]y9`?  
    NDW6UFd>1  
    Cpu L[|51  
    Q# w`ZQX3  
    optiSLang –设置优化 Y]aVa2!Wb  
    WG8}}`F|  
    参数化的求解器系统 %|$h<~  
    ─ 可以通过拖动平均值(Mean)到目标最小化(Objective Maximize)判据中定义第二目标函数。 ~ztsR;iL  
    ─ 因此优化算法会尽可能地使平均效率最大化。 m$ZPQ0X  
    ─ 这步操作被称为多目标优化。 f"zXiUV  
    n}MW# :eJe  
    *2ZX*w37  
    Hn5:*;N  
    optiSLang –设置优化 luYkC@I@a  
    HV-c DL  
    优化向导 *HFRG)[V  
    ─ 下一步可以通过拖放来使用优化向导。 `9BZ))Pg  
    -&JUg o=  
    p]/HZS.-b  
    p< i;@H;:  
    optiSLang –设置优化 C?jk#T  
    MaDdiyeC  
    优化向导 &<}vs`W  
    ─ 第一步,提供了各种系统参数,包括其指定的值范围。 j^#4!Ue  
    ─ 此外,optiSLang提供了一个可视化的值范围,其中标出了初始值。 0|kkwZVPn  
    ─ 然后点击下一步。 e^)+bmh  
    @sUYjB  
    Umx~!YL!  
    4RCD<7  
    optiSLang –设置优化 ^'j? { @  
    kR2kV"-l  
    优化向导 jC3ta  
    ─ 第二步,如果在参数化的求解器系统中没有指定优化条件,则此时可以指定。 ocCq$%Ka  
    ─ 也可以从其他文档中输入条件。 ME"B1 Se\  
    ─ 然后点击下一步。 @v^;,cu'8  
    84v7g`lrR  
    ]hNio6CVm  
    EXDZehLD<]  
    optiSLang –设置优化 7e[3Pu_/X  
    LpwjP4vWJ  
    优化向导 U$+EUDFi3_  
    ─ 第三步,选择优化方法。 s8L=:hiSf)  
    ─ optiSLang提供了类似于红绿灯的建议形式来选择合适的方法: W^{zlg  
     红:不适用 Fk(nf9M%  
     黄:适用 :.8@ xVH  
     绿:推荐 VfWU-lJ  
    ─ 该例中推荐使用进化算法。 G?`{OW3:_  
    ─ 然后点击下一步。 iNj*G j  
    I`k%/ei38  
    2d),*Cvf  
    rCt8Q&mzf  
    optiSLang –设置优化 ZfMDyS$.  
    |q0F*\z3  
    优化向导 /-%0y2"7  
    ─ 然后,需要指定一些附加选项。 /4Ud6gscf  
    ─ 建议在算法运行期间显示后期处理选项,以便在优化运行期间访问结果数据。 HK_Vk\e  
    ─ 然后点击结束。 ncw)VH;_-  
    KrVP#|9%"  
    =.T50~+M  
    P1cI]rriW  
    optiSLang –进化算法的高级设置 Y:f"Zx  
    2F5*C  
    高级设置 ^j~CYzmt  
    ─ 双击创建优化,可以调整优化算法的详细参数。 imb.CYS74  
    `Vph=`0  
    @fz0-vT,  
    optiSLang –进化算法的高级设置 $2!|e,x  
    :$k] ;  
    高级设置 M3m)uiz  
    ─ 双击创建优化,可以调整优化算法的详细参数。 8d|/^U.w~V  
    ─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 wE*o1.  
    %?2:1o  
    {&u`d.Lk2p  
    JSp V2c5Q  
    optiSLang –进化算法的高级设置 MBp,! _Q6  
    dZ6\2ok+  
    高级设置 AFMIp^F  
    ─ 双击创建优化,可以调整优化算法的详细参数。 `1xJ1 z#  
    ─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 _;z IH5 H  
    ─ 在标签页“其他”中,提供了一些预定义的参数,适用于大部分优化。(例如“EA 10000”) L0^rw|Z%'  
    S/?!ESW6  
    Z'Uc}M'U  
    G q&[T:  
    optiSLang –进化算法的高级设置 c]Z@L~WW  
    @#u'z ~a)  
    高级设置 ,ma4bqRMc  
    ─ 此外,作为附加选项,可以调整optiSLang是否自动保存。 gdj,e ^  
    ─ 默认情况下,在计算每个设计迭代后,项目会自动保存。 +cXdF  
    ─ 特别是对于计算时间短的设计,这会产生大量开销并减慢优化速度。 TyGsSc  
    ─ 因此,建议将自动保存选项设置为每50或100个完成的设计后保存。 r &.gOC  
    [D$% LRX  
    w^EUBRI-  
    PR+L6DT_  
    optiSLang –设计计算的并行化 5w9oMM {  
    [}*xxy   
    并行化设置 .\rJ|HpZ1J  
    ─ 一些优化算法允许并行计算设计。 S\jIs[Dz  
    ─ 例如,在进化算法的情况下,一代的所有成员设计的参数是已知的,因此可以同时计算以减少计算时间。 |'+ [ '  
    ─ 为了允许并行计算,必须启用多个求解器。 R? Ys%~5  
    ─ 通过双击VirtualLab求解器,可以找到此附加选项。 (_ TKDx_  
    ─ 建议数量为CPU的一半到全部真实核心之间,具体取决于每个设计的计算并行化。 "e;wN3/bF  
    j&y>?Y&Sb  
    C@F3iwTtp  
    B k yW  
    optiSLang –开始优化 f53WDI6  
    ^630%YO  
    运行优化 B[IqLD'6  
    ─ 单击场景(Scenery)中的进化算法(Evolutionary Algorithm)窗口。 h*lU&8)m\  
    ─ 点击运行按钮开始优化。 i w(4!,4~  
    mo*ClU7  
    H_&z- g`  
    UmNh0nS  
    optiSLang –优化结果 "k> ;K,:  
    8|2I/#F}]  
    优化结果 (X|`|Y  
    ─ 优化结束后,可以在新窗口中得到结果。 XEpwk,8*g  
    \L]T|]}(  
    u.!<)VIJx  
    R=m9[TgBm  
    optiSLang –优化结果 Su>UXuNdE#  
    d{FD.eI 0  
    优化结果 -;s-*$I  
    ─ Pareto2D图以点云的形式同时给出了目标值、均匀度对比和平均效率。 VGL!)1b  
    ─ 用户能够为他的应用选择最合适的设计。 \f-HfYG  
    ─ 在这个例子中,选择了设计no.8842,具有~16%的均匀度对比和~20%的平均效率。 LVAnZ'h/|  
    Op 0Qpn  
    PvkHlb^x%  
     Z5[f  
    optiSLang –优化结果 LQ'VhNU  
    ptCAtEO72  
    优化结果 zKf.jpF^  
    ─ 每个设计都存储在子文件夹〜Optimization.opdEvolutionary_Algorithm中的optiSLang项目目录中。 B`;DAsmT  
    ─ 此目录中的每个文件夹(由设计编号命名)包含将设计再次导入VirtualLab所需的所有文件。 \!Fx,#r$7-  
    ~'3hK4  
    3`^NaQ  
    .#wU+t>  
    optiSLang –导入优化结果 MoP,a9p  
    Y:3\z?oV[  
    导入优化结果 m L,El2  
    ─ 要导入感兴趣的设计,使用Import optiSLang Results功能,选择相应的设计文件夹。 2I qvd  
    ─ 最后,可以在VirtualLab中进一步分析导入的LPD。 @;T?R  
    (U@uJ  
    >^V3Z{;  
    bR&<vrMmrA  
    总结 "~=\AB=+Z  
    lk. ;  
    作为总结,下表给出了初始和优化后的设计之间的光栅参数和性能标准的比较。 2Hj;o  
    o ImW  
    > qDHb'  
    %n<.)R  
    文档信息 v:w $l{7  
    !tr /$  
    )9mUE*[  
    AfOq?V  
    QQ:2987619807 69tT'U3vb$  
     
    分享到