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

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

    上一主题 下一主题
    离线infotek
     
    发帖
    5279
    光币
    20639
    光券
    0
    只看楼主 倒序阅读 楼主  发表于: 2020-08-19
    摘要 q`@8  
    Edl .R}&1  
    i",oPz7  
    t,qz%J&a  
    现代光学系统优化一般会涉及到大量的参数,例如:优化光栅时不仅需要考虑光栅的几何参数,还有所需的入射方向。随着参数数量的大量增加,优化越来越具有挑战性。对于这种情况,VirtualLab Fusion提供了与Dynardo的optiSLang软件的接口,可以使用不同的高级优化算法。 'e7;^s  
    *"j3x} U<  
    VirtualLab Fusion和optiSLang的界面 Yu|L6#[E  
    K[9{]$(Z  
    VirtualLab Fusion是一种灵活且可定制的建模工具平台,可以仿真复杂的光学装置,例如:将一组平面波耦合入光波导。 Ml+O - 3T  
    bYy7Ul6]  
     -to3I  
    }z_7?dn/  
    optiSLang是一种包含各种高级工具的软件平台,包括敏感度分析、多元和多学科优化、鲁棒性评估、可靠性分析和鲁棒设计优化。   kDWvjT  
    两种软件平台的结合使得例如智能光波导耦合等高级光栅结构变为可能。 <nF1f(ky  
    n#)kvr  
    VirtualLab Fusion – 光学装置初始化 g y1i%  
    Cx ;n#dn*  
    初始装置 t<znz6  
    ─ 一般来说,在VirtualLab中定义的光学系统都可以使用optiSLang进行优化。 T$4Utd5[z'  
    ─ 该例中的光学系统包含了平面波光源和用于周期性介质的波导耦合探测器。 iIU>:)i  
    s6_[H  
    {_X&{dZLX  
       Q5tx\GE  
    VirtualLab Fusion – 波导耦合探测器 o*s3"Ib  
    \Gy+y`   
    波导耦合探测 _E xd:  
    ─ 波导耦合探测器是一种特殊工具,用以探测某个周期性结构以特定角度范围入射的效率。 p}h9>R  
    ─ 可以从探测器的编辑对话框中的目录定义或加载周期性结构。 .$"69[1H  
    G!w?\-  
    r<-@.$lf  
       %o#|zaK  
    VirtualLab Fusion – 波导耦合探测器 Y>PC>  
    波导耦合探测 cy#N(S[ 1  
    ─ 该例中使用了倾斜光栅。 Z_[jah  
    K?acRi  
    n}4Lq^$  
    4$8\IJ7G  
    VirtualLab Fusion – 波导耦合探测器 @]B 7(j<'R  
    波导耦合探测 GsC4ty  
    ─ 该例中使用了倾斜光栅。 e"voXe  
    TAZ+2S##7  
    z|i2M8  
    C07U.nzh  
    VirtualLab Fusion – 波导耦合探测器 FY<77i  
    uzWz+atH  
    波导耦合探测 y`-5/4  
    ─ 输入光源的入射角度范围在探测器编辑对话框中指定。 C/A~r  
    ─ 通过最小和最大笛卡尔坐标系角度alpha和beta与它们的采样点数定义。 &!O~ f  
    oHkjMqju  
    S$Fq1  
    Y(P <9 m:  
    VirtualLab Fusion – 波导耦合 Q)}z$h55  
    1IV R4:a  
    波导耦合探测 6O'6,%#  
    ─ 可以从探测得到的效率计算平均值和均匀对比度,并在探测器结果标签页中给出。 a1# 'uS9W  
    ─ 作为结果,探测器可以用于评估在特定角度范围内的周期性结构。 R%^AW2   
    [;hCwj#  
    %R LGO&  
    -O?&+xIK&  
    VirtualLab Fusion – 输出LPD至OPtiSLang j-wz7B  
    Af7&;8pM  
    输出LPD至OPtiSLang '.d]n(/lZd  
    ─ File→Export→Export to optiSlang Project /a:L"7z  
    K^+}__;]  
    (TFo]c  
    VirtualLab Fusion – 输出LPD至OPtiSLang /V)4B4  
    2K$#U|Qi  
    输出LPD至OPtiSLang APT /z0X>  
    ─ File→Export→Export to optiSlang Project ;B@-RfP  
    ─ 输出LPD文件,并产生输入至optiSLang的必要光学装置文件。 yaKw/vV  
    ad[oor/7|  
    \h 1T/_4  
    Z7Xic5PI{4  
    VirtualLab Fusion – 输出LPD至OPtiSLang )m[dfeqd +  
    y]TNjLpo$  
    输出LPD至OPtiSLang ##clReS  
    ─ 在输出对话框窗口。 1rQKHC:|  
     可定义参数空间,并包含了参数的变化范围。 D^e7%FX  
     可以选择保存到的输出文件夹。 /f) #CR0$  
     可以指定模拟引擎,用于分析。 C#4/~+  
    Jsp>v'Qvq  
    (YH/#n1"{  
    <P4*7:jX  
    optiSLang – 初始化优化 u#`FkuE\}  
    3&z.m/  
    设置求解器系统 K5SP8<.  
    ─ File→New project… t`y*oRy  
    o:"^@3  
    N"q C-h  
     _F9O4Q4  
    optiSLang – 初始化优化 T&PLvyBL  
    y OLqIvN  
    设置求解器系统 t?:Q  
    ─ 继续,拖动求解器(Solver)向导到场景(Scenery)窗口。 Jh)K0>R  
    ─ 打开了一个对话框,列出了几种求解器(Solver)范例。 +1 j+%&).  
    ─ 求解器(Solver)范例中必须选择VirtualLab。 rc9Y:(S1l  
    %1jApCJ  
    EU"J'?  
    optiSLang – 初始化优化
    O F CA~sR  
    <OC|z3na_  
    设置求解器系统 "~HV!(dRMC  
    ─ 然后会弹出文件对话框,必须打开VirtualLab输出的system.lpd文件。 8x9$6HO  
    KGoHn6jM  
    Zc9j_.?*  
    }./_fFN@  
    optiSLang – 初始化优化  p3YF  
    r(::3TF%#q  
    参数化的求解器系统  {!9i8T  
    ─ 参数化的求解器系统包含相应的VirtualLab文件和两个含有参数和结果的XML文件,用于定义优化函数。 SJdi*>  
    ─ 请务必保存计划。 c@1q8,  
    #RA3 T[A  
    ko%B`  
    @lnM%  
    optiSLang – 初始化优化 +\O[)\  
    c&JYbq  
    参数化的求解器系统 wuQ>|\Zs  
    ─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 k;9"L90  
    "Nn+Zw43  
    e;/C}sK:  
    >)IXc<"wq  
    optiSLang – 初始化优化 T|&2!Sh  
    +#d}3^_]  
    参数化的求解器系统 (s\":5 C  
    ─ 运行求解器系统以检查是否能正常工作并给出预期的结果。 3]9twfF 'J  
    ─ 通过双击结果(Result)设计标签页中的参数化(Parametric)求解器系统窗口,可以检查参数和结果。 _7M!b 9oA  
    ,LHQ@/}A C  
    njy^<7 ;  
    8{GRrwQ>  
    optiSLang –设置优化 %VCfcM}5I  
    Dxwv\+7]  
    参数化的求解器系统 A' \jaB  
    ─ optiSLang可以进行多目标函数的光学系统优化。 k9^Vw+$m  
    ─ 这可以在参数化(Parametric)求解器系统配置的判据(Criteria)标签页中定义。 M5Twulz/w  
    6!3Jr  
    DB>Y#2j4h  
    u8wZ2j4S  
    optiSLang –设置优化 8zRb)B+  
    Q:x:k+O-  
    参数化的求解器系统 $qx&\@O  
    ─ 可以通过拖动均匀化对比度(Uniformity Contrast)到目标最小化(Objective Minimize)判据中定义第一目标函数。 hR$lX8  
    ─ 因此优化算法会尽可能地使均匀度对比最小化。 B !(t<W8cu  
    cc%O35o  
    Y)@PGxjz  
    _0rHxh7}q  
    optiSLang –设置优化 $pT%7jV}  
    QxGQF|  
    参数化的求解器系统 | 3`qT#p{  
    ─ 可以通过拖动平均值(Mean)到目标最小化(Objective Maximize)判据中定义第二目标函数。 m7XJe[O  
    ─ 因此优化算法会尽可能地使平均效率最大化。 Qw$"W/&X  
    ─ 这步操作被称为多目标优化。 Z`?<Ada  
    .=>T yq  
    `FImi9%F  
    ItTIU  
    optiSLang –设置优化 S%ri/}qI[{  
    vl@t4\@3  
    优化向导 LaZF=<w(  
    ─ 下一步可以通过拖放来使用优化向导。 bmAgB}Ior  
    ,<lxq<1I  
    }eX_p6bBw  
    I_yIVw;  
    optiSLang –设置优化 ]kmOX  
    /s%I(iP4  
    优化向导 $p4aNC  
    ─ 第一步,提供了各种系统参数,包括其指定的值范围。 y0qE::/H$  
    ─ 此外,optiSLang提供了一个可视化的值范围,其中标出了初始值。 7F-b/AdVq  
    ─ 然后点击下一步。 Y\ T*8\h_[  
    SPV'0* Z  
    f*~ 4Kv  
    k~Pm.@,3o  
    optiSLang –设置优化 LIH>IpamN  
    Uc0AsUu}?  
    优化向导 qD\%8l.]Z  
    ─ 第二步,如果在参数化的求解器系统中没有指定优化条件,则此时可以指定。 fBH&AO$Q  
    ─ 也可以从其他文档中输入条件。 s8|#sHT  
    ─ 然后点击下一步。 =tcPYYD  
    EGwY|+3  
    b,a\`%m}  
    ZZC= 7FB  
    optiSLang –设置优化 4C /8hsn  
    ^BM/K&7^  
    优化向导 i&,U);T  
    ─ 第三步,选择优化方法。 Ut-6!kAm  
    ─ optiSLang提供了类似于红绿灯的建议形式来选择合适的方法: 2al~`  
     红:不适用 BH0rT})  
     黄:适用 U8-9^}DBA  
     绿:推荐 l1cBY{3QD  
    ─ 该例中推荐使用进化算法。 n@L!{zY  
    ─ 然后点击下一步。 U>;itHW/  
    !E_uQ?/w]Z  
    %FFw!eVi  
    H>XbqIkL@  
    optiSLang –设置优化 &SN$D5U'  
    /&j4IlT  
    优化向导 %,,h )9  
    ─ 然后,需要指定一些附加选项。 ,P"R.A  
    ─ 建议在算法运行期间显示后期处理选项,以便在优化运行期间访问结果数据。 ga^<_;5<  
    ─ 然后点击结束。 0]oQ08  
    :=L[kzX  
    pjj 5  
    p>eD{#2  
    optiSLang –进化算法的高级设置 SbnV U[  
    P'9aZd  
    高级设置 UuT[UB=x5  
    ─ 双击创建优化,可以调整优化算法的详细参数。 ] |`gTD6  
    &< Gq-IN  
    =cC]8Pz?  
    optiSLang –进化算法的高级设置 Br~%S?4"o  
    g41Lh3dj  
    高级设置 1yB;"q&Xd  
    ─ 双击创建优化,可以调整优化算法的详细参数。 "(efd~.]  
    ─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 @I"Aet'XV  
    ') 1sw%[2  
    )vU{JY;  
    8]?1gDS|9O  
    optiSLang –进化算法的高级设置 Xi{(1o4%  
    Jj6kZK  
    高级设置 w|nVK9.  
    ─ 双击创建优化,可以调整优化算法的详细参数。 #8z\i2I  
    ─ 在标签页“初始化”、“选择”、“交叉”和“突变”中授予算法中许多参数的权限。 f A,+qs  
    ─ 在标签页“其他”中,提供了一些预定义的参数,适用于大部分优化。(例如“EA 10000”) NUnP'X=J,  
    3N*Shzusbt  
    ONGe/CEXT  
    x b0+4w|  
    optiSLang –进化算法的高级设置 *Yr-:s9J9  
    @E>^\!nH  
    高级设置 =!CuCV7$1O  
    ─ 此外,作为附加选项,可以调整optiSLang是否自动保存。 kN$70N7I;  
    ─ 默认情况下,在计算每个设计迭代后,项目会自动保存。 KncoIw  
    ─ 特别是对于计算时间短的设计,这会产生大量开销并减慢优化速度。 Uqpvj90sw  
    ─ 因此,建议将自动保存选项设置为每50或100个完成的设计后保存。 a ;S^<8  
    P~qVr#eU  
    |Gf{}  
    KFs` u6  
    optiSLang –设计计算的并行化 ,){0y%c#y  
    Y>#c2@^i<  
    并行化设置 *tO<wp&  
    ─ 一些优化算法允许并行计算设计。 ~Op1NE  
    ─ 例如,在进化算法的情况下,一代的所有成员设计的参数是已知的,因此可以同时计算以减少计算时间。 )ED[cYGx  
    ─ 为了允许并行计算,必须启用多个求解器。 hrL<jcv|  
    ─ 通过双击VirtualLab求解器,可以找到此附加选项。 V0AX1?H~w  
    ─ 建议数量为CPU的一半到全部真实核心之间,具体取决于每个设计的计算并行化。 m5p~>]}fYF  
    eLYFd,?9  
    $($SQZK&  
    ~+np7  
    optiSLang –开始优化 Vx*q'~4y!|  
    aOD"z7}U  
    运行优化 y%,BDyK  
    ─ 单击场景(Scenery)中的进化算法(Evolutionary Algorithm)窗口。 \Cs<'(=  
    ─ 点击运行按钮开始优化。 Qm.kXlsDI  
    1}uDgz^  
    * Z:PB%d5  
    E nvs[YZe  
    optiSLang –优化结果 9A_7:V]_  
    jwq"B$ap  
    优化结果 gCJ'wv)6|%  
    ─ 优化结束后,可以在新窗口中得到结果。 }gW}Vr <  
    JB(;[#'~  
    UH.cn|R  
    %yMzgk[u  
    optiSLang –优化结果 1 ~7_!  
    tAA7  
    优化结果 eFio,  
    ─ Pareto2D图以点云的形式同时给出了目标值、均匀度对比和平均效率。 2 QmUg  
    ─ 用户能够为他的应用选择最合适的设计。 =vc5,  
    ─ 在这个例子中,选择了设计no.8842,具有~16%的均匀度对比和~20%的平均效率。 ,2TqzU;  
    fI1;&{f   
    K*Jtyy}r  
    9^ r  
    optiSLang –优化结果 Ng"vBycy  
    &XsLp&Do2  
    优化结果 QVW6SY  
    ─ 每个设计都存储在子文件夹〜Optimization.opdEvolutionary_Algorithm中的optiSLang项目目录中。 re!8nuBsA  
    ─ 此目录中的每个文件夹(由设计编号命名)包含将设计再次导入VirtualLab所需的所有文件。 x 5SQ+7  
    +*J4q5;E[?  
    pNlisS  
    T]|O/  
    optiSLang –导入优化结果 I{zE73  
    ^eW.hNg  
    导入优化结果 sPg6eAd~?  
    ─ 要导入感兴趣的设计,使用Import optiSLang Results功能,选择相应的设计文件夹。 C.E> )  
    ─ 最后,可以在VirtualLab中进一步分析导入的LPD。 5Mr;6 ]I<  
    6Qb)Uq3}]  
    @(c<av?  
    %5*#c*)R  
    总结 w.aFaR)04  
    cf'}*$[S  
    作为总结,下表给出了初始和优化后的设计之间的光栅参数和性能标准的比较。 zt2-w/[Q  
    n ;5?^Un%  
    DH9?2)aR  
    !|h2&tH  
    文档信息 l :Nxl  
    xD# I&.  
    f*vk1dS:*3  
    G=cH61  
    QQ:2987619807 %GbPrlu  
     
    分享到