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

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

    上一主题 下一主题
    离线infotek
     
    发帖
    7040
    光币
    29345
    光券
    0
    只看楼主 倒序阅读 楼主  发表于: 2020-08-19
    摘要 ` Y\QUj  
    NlFo$Y  
    ~D!ESe*=  
    H8"tbU  
    现代光学系统优化一般会涉及到大量的参数,例如:优化光栅时不仅需要考虑光栅的几何参数,还有所需的入射方向。随着参数数量的大量增加,优化越来越具有挑战性。对于这种情况,VirtualLab Fusion提供了与Dynardo的optiSLang软件的接口,可以使用不同的高级优化算法。 | W?[,|e  
    q+J0}y{#8)  
    VirtualLab Fusion和optiSLang的界面 VLd=" ~  
    (v|`LmV  
    VirtualLab Fusion是一种灵活且可定制的建模工具平台,可以仿真复杂的光学装置,例如:将一组平面波耦合入光波导。 6+#,=!hF{  
    % 9YA^ri  
    &O{t^D)F  
    n@o  
    optiSLang是一种包含各种高级工具的软件平台,包括敏感度分析、多元和多学科优化、鲁棒性评估、可靠性分析和鲁棒设计优化。   sBB:$X  
    两种软件平台的结合使得例如智能光波导耦合等高级光栅结构变为可能。 ]h!*T{:  
    #?5VsD8  
    VirtualLab Fusion – 光学装置初始化 Dzm qR0)  
    Vdy\4 nu(  
    初始装置 c8tP+O9  
    ─ 一般来说,在VirtualLab中定义的光学系统都可以使用optiSLang进行优化。 +TWJNI  
    ─ 该例中的光学系统包含了平面波光源和用于周期性介质的波导耦合探测器。 Z[bv0Pr  
    M->Kz{h?j  
    Q}ZBr^*]1e  
       R_~F6O^EO  
    VirtualLab Fusion – 波导耦合探测器 Z0z)  
    ^1vq{/ X  
    波导耦合探测 2q$X>ImI$  
    ─ 波导耦合探测器是一种特殊工具,用以探测某个周期性结构以特定角度范围入射的效率。 zlN+edgY#,  
    ─ 可以从探测器的编辑对话框中的目录定义或加载周期性结构。 zPA>af~Ej  
    X &09  
    `;T? 9n  
       `O jvt-5}E  
    VirtualLab Fusion – 波导耦合探测器 R3cG<MjmK  
    波导耦合探测 cxk=| ?l  
    ─ 该例中使用了倾斜光栅。 %0Vc\M@"G  
    RDJ82{  
    1URT2$2p  
     MbM :3  
    VirtualLab Fusion – 波导耦合探测器 8*"rZh}'  
    波导耦合探测 1w6.   
    ─ 该例中使用了倾斜光栅。 :nTkg[49pJ  
    )/i4YLO  
    WoJ]@Me8  
    N_|YOw6  
    VirtualLab Fusion – 波导耦合探测器 !fif8kf  
    o(BYT9|.kw  
    波导耦合探测 s')!<E+z\t  
    ─ 输入光源的入射角度范围在探测器编辑对话框中指定。 F 'fM?!(  
    ─ 通过最小和最大笛卡尔坐标系角度alpha和beta与它们的采样点数定义。 Q&tFv;1w6  
    ]IL3$eR  
    s-y'<(ll  
    WodF -bE  
    VirtualLab Fusion – 波导耦合 pZW}^kg=  
    7?)m(CFy  
    波导耦合探测 !Q\X)C  
    ─ 可以从探测得到的效率计算平均值和均匀对比度,并在探测器结果标签页中给出。 1Q3%!~<\s  
    ─ 作为结果,探测器可以用于评估在特定角度范围内的周期性结构。 _zAc 5rS  
    zX006{vig  
    r(748Qc4f?  
    K1CMLX]m  
    VirtualLab Fusion – 输出LPD至OPtiSLang HP1X\h!Ke  
    {"Y]/6  
    输出LPD至OPtiSLang z2$F Yn Q  
    ─ File→Export→Export to optiSlang Project "Vs Nyy  
    {5?!`<fF  
    *T1L )Cp  
    VirtualLab Fusion – 输出LPD至OPtiSLang L+`}euu5  
    }d$vcEI$3  
    输出LPD至OPtiSLang Zm?G'06  
    ─ File→Export→Export to optiSlang Project C _ k_D  
    ─ 输出LPD文件,并产生输入至optiSLang的必要光学装置文件。 Bx_8@+  
    K .c6Rg  
    'bd=,QW  
    Z.Lx^h+U  
    VirtualLab Fusion – 输出LPD至OPtiSLang &ij^FAM  
    V~tu<"%  
    输出LPD至OPtiSLang .oB'ttF1  
    ─ 在输出对话框窗口。 \:18Uoe7  
     可定义参数空间,并包含了参数的变化范围。 }6b7a1p  
     可以选择保存到的输出文件夹。 oQKcGUZ  
     可以指定模拟引擎,用于分析。 \3 O-} n1S  
    Bil;@,Z#  
    K[Ws/yc^a  
    ~%::r_hQ  
    optiSLang – 初始化优化 `-E.n'+  
    u/K)y:ZZ  
    设置求解器系统 Sv CK;$:  
    ─ File→New project… c9/ 'i  
    cPa 0n4  
    1yY'hb,0  
    j/; @P  
    optiSLang – 初始化优化 0VWCm( f-  
    I NFz X  
    设置求解器系统 $rV:&A  
    ─ 继续,拖动求解器(Solver)向导到场景(Scenery)窗口。 J_)z:`[yE  
    ─ 打开了一个对话框,列出了几种求解器(Solver)范例。 0*'`%W+5  
    ─ 求解器(Solver)范例中必须选择VirtualLab。 p3'mJ3MA  
    J,&`iL-  
    Vf\?^h(tP  
    optiSLang – 初始化优化
    rVIb'sa  
    *RqO3=  
    设置求解器系统 LU 5 `!0m  
    ─ 然后会弹出文件对话框,必须打开VirtualLab输出的system.lpd文件。 U_=wL  
    E|6Z]6[  
    +A&IxsTq5=  
    zMHf?HQ-Z  
    optiSLang – 初始化优化 x X=IMM3  
    hr 6LB&d_  
    参数化的求解器系统 t=@Jw  
    ─ 参数化的求解器系统包含相应的VirtualLab文件和两个含有参数和结果的XML文件,用于定义优化函数。 au9Wo<mR  
    ─ 请务必保存计划。 JJZXSBAOU  
    |rms[1<_  
    M cMK|_H  
    *j|Tm7C  
    optiSLang – 初始化优化 l%)=s~6z  
    O7#}8-@}<u  
    参数化的求解器系统 $dWl A<u  
    ─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 sou$qKoG01  
    * y"GgI  
    OYRR'X.E  
    ~Hs]}Xo  
    optiSLang – 初始化优化 m@ 'I|!^  
    @8 yE(  
    参数化的求解器系统 7 +W?Qo  
    ─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 /x"pj3  
    ─ 通过双击结果(Result)设计标签页中的参数化(Parametric)求解器系统窗口,可以检查参数和结果。 }'M1(W  
    qytGs@p_  
    \~1zAiSd>#  
    c75vAKZ2  
    optiSLang –设置优化 O|g!Y(  
    2|_Jup  
    参数化的求解器系统 RAkFgC~  
    ─ optiSLang可以进行多目标函数的光学系统优化。 do?n /<@o  
    ─ 这可以在参数化(Parametric)求解器系统配置的判据(Criteria)标签页中定义。 .f!eRV.&  
    <t|9`l_XW  
    cX]{RVZo-/  
    #5"<.z  
    optiSLang –设置优化 !NY^(^   
    PQI,vr'R  
    参数化的求解器系统 Q*J ~wuE2  
    ─ 可以通过拖动均匀化对比度(Uniformity Contrast)到目标最小化(Objective Minimize)判据中定义第一目标函数。 NS/L! "g  
    ─ 因此优化算法会尽可能地使均匀度对比最小化。 QvQf@o  
    E*b[.vUp  
    #$z-]i  
    !JQ~r@j  
    optiSLang –设置优化 TD=/C|  
    Z 5YW L4s  
    参数化的求解器系统 R*5;J`TW  
    ─ 可以通过拖动平均值(Mean)到目标最小化(Objective Maximize)判据中定义第二目标函数。 7 V1k$S(  
    ─ 因此优化算法会尽可能地使平均效率最大化。 OL9C #er  
    ─ 这步操作被称为多目标优化。 u0H`%m  
    F'_8pD7  
    S2GBX1  
    gkn/E}K#  
    optiSLang –设置优化 8gKR<X.G  
    =}o>_+"  
    优化向导 hADb]O  
    ─ 下一步可以通过拖放来使用优化向导。 )BTs *7 j  
    <T% hfW  
    nv[Sb%/  
    $0C/S5b  
    optiSLang –设置优化 *A9{H>Vq  
    %v)'`|i  
    优化向导 KX}dn:;(3  
    ─ 第一步,提供了各种系统参数,包括其指定的值范围。 l@F e(^5E  
    ─ 此外,optiSLang提供了一个可视化的值范围,其中标出了初始值。 ik NFW*p  
    ─ 然后点击下一步。 Mz. &d:  
    `hf9rjy4  
    jmzvp6N$8  
    a ^/20UFq  
    optiSLang –设置优化 y#0Z[[I0  
    *TI6Z$b|6  
    优化向导 TUn@b11  
    ─ 第二步,如果在参数化的求解器系统中没有指定优化条件,则此时可以指定。 qtwmTT)  
    ─ 也可以从其他文档中输入条件。  Kj|F  
    ─ 然后点击下一步。 tf79Gb>  
    C$;s+ALy[  
    KgAX0dM  
    Y6DiISl  
    optiSLang –设置优化 s1apHwJ -  
    uM<+2S  
    优化向导 3VB V_/i;  
    ─ 第三步,选择优化方法。 +!Ag n)  
    ─ optiSLang提供了类似于红绿灯的建议形式来选择合适的方法: R~(.uV`#j  
     红:不适用 HON[{Oq  
     黄:适用 6oBt<r?CJ  
     绿:推荐 SO<K#HfE$?  
    ─ 该例中推荐使用进化算法。 Ri0+nJ6  
    ─ 然后点击下一步。 `8bp6}OD,  
    vt=S0X^$yc  
    :6iq{XV^  
    m:7bynT{  
    optiSLang –设置优化 x G"p .  
    % 7:  
    优化向导 RIc<  
    ─ 然后,需要指定一些附加选项。 yYtki  
    ─ 建议在算法运行期间显示后期处理选项,以便在优化运行期间访问结果数据。 !_#js  
    ─ 然后点击结束。 PelV67?M  
    DcDGrRuh  
    7U0):11X#  
    <7Lz<{jaJ  
    optiSLang –进化算法的高级设置 V-u\TiL  
    4Lb<#e13R?  
    高级设置 lV="IP^7  
    ─ 双击创建优化,可以调整优化算法的详细参数。 ;<rJ,X#  
    Wm_-T]#_  
    I2Q?7p  
    optiSLang –进化算法的高级设置 o#b9M4O  
    ' ]Y:gmM"  
    高级设置 Ms3/P|{"p  
    ─ 双击创建优化,可以调整优化算法的详细参数。 a]ey..m  
    ─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 }N!8i'suz9  
    <#` L&w.  
    QKQy)g  
    f& *E;l0  
    optiSLang –进化算法的高级设置 %"V,V3kw4  
    @@&;gWr;  
    高级设置 H#akE\,  
    ─ 双击创建优化,可以调整优化算法的详细参数。 zqn*DbT  
    ─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 8t; nU;E*  
    ─ 在标签页“其他”中,提供了一些预定义的参数,适用于大部分优化。(例如“EA 10000”) Y?x3JU0_  
    7n.J.<+9  
    VgL<uxq  
    #+ =afJ  
    optiSLang –进化算法的高级设置 =!aV?kNS8  
    wEyh;ID3#  
    高级设置 Pr'py  
    ─ 此外,作为附加选项,可以调整optiSLang是否自动保存。 =*N(8j>y  
    ─ 默认情况下,在计算每个设计迭代后,项目会自动保存。 c-{]H8$v  
    ─ 特别是对于计算时间短的设计,这会产生大量开销并减慢优化速度。 u]-$]zIH  
    ─ 因此,建议将自动保存选项设置为每50或100个完成的设计后保存。 Fx2&ji6u  
    6A<aelE*i  
    dXQWT@$y!E  
    >EG;2]M&  
    optiSLang –设计计算的并行化 :a2?K5  
    gUl Z cb  
    并行化设置 >FO=ioNY  
    ─ 一些优化算法允许并行计算设计。 NO)* UZ  
    ─ 例如,在进化算法的情况下,一代的所有成员设计的参数是已知的,因此可以同时计算以减少计算时间。 F u)7J4Z  
    ─ 为了允许并行计算,必须启用多个求解器。 EhoR.  
    ─ 通过双击VirtualLab求解器,可以找到此附加选项。 f}A^rWO  
    ─ 建议数量为CPU的一半到全部真实核心之间,具体取决于每个设计的计算并行化。 8[ V!e[  
    nLQJ~("  
    -lHJ\=  
    F{S.f1Bsp  
    optiSLang –开始优化 [aW#7  
    z Ey&%Ok  
    运行优化 Z]dc%>  
    ─ 单击场景(Scenery)中的进化算法(Evolutionary Algorithm)窗口。 [iz  
    ─ 点击运行按钮开始优化。 -\vq-n  
    X^`ld&^*({  
    ]T1"3 [si  
    <=lP6B  
    optiSLang –优化结果 v~SN2,h  
    %"tf`,d~3  
    优化结果 YN^8s  
    ─ 优化结束后,可以在新窗口中得到结果。 p O.8>C%  
    f/xBR"'  
    H}X"yLog*  
    ZWv$K0agu  
    optiSLang –优化结果 xxYFWvi  
    .(krB% N  
    优化结果 E^s>S,U[y  
    ─ Pareto2D图以点云的形式同时给出了目标值、均匀度对比和平均效率。 Ek:u[Uw\  
    ─ 用户能够为他的应用选择最合适的设计。 #gq3 e  
    ─ 在这个例子中,选择了设计no.8842,具有~16%的均匀度对比和~20%的平均效率。 8EQ;+V  
    mmi~A<  
    4)?c[aC4P  
    X~0P+E#  
    optiSLang –优化结果 ,b/0_Q  
    6%? NNEM  
    优化结果 B}p/ ,4x6  
    ─ 每个设计都存储在子文件夹〜Optimization.opdEvolutionary_Algorithm中的optiSLang项目目录中。 wI:oe`?H  
    ─ 此目录中的每个文件夹(由设计编号命名)包含将设计再次导入VirtualLab所需的所有文件。 m@~HHwj  
    }-!$KR]:s  
    a&&EjI  
    z&eJ?wb  
    optiSLang –导入优化结果 j_Fr3BWS  
    qsLsyi|zG  
    导入优化结果 M9MEQK  
    ─ 要导入感兴趣的设计,使用Import optiSLang Results功能,选择相应的设计文件夹。 3x#G SS  
    ─ 最后,可以在VirtualLab中进一步分析导入的LPD。 {)G3*>sG3  
    lD(d9GVm{z  
    jRGG5w}  
    ~"(1~7_  
    总结 l{ k   
    dJkT Hmw  
    作为总结,下表给出了初始和优化后的设计之间的光栅参数和性能标准的比较。 f,$FrI,  
    :]x)lP(3E  
    pz(clTOD:  
    "5@Y\L  
    文档信息 \]^|IViIQ  
    &#WTXTr0=  
    zX3O_  
    +ISB"a  
    QQ:2987619807 8s|r'  
     
    分享到