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

    [原创]RP Fiber Power仿真设计掺铥光纤激光器代码详解 [复制链接]

    上一主题 下一主题
    离线小火龙果
     
    发帖
    932
    光币
    2171
    光券
    0
    只看楼主 倒序阅读 楼主  发表于: 2020-05-28
    (* %$x FnGb  
    Demo for program"RP Fiber Power": thulium-doped fiber laser, !gf3%!%  
    pumped at 790 nm. Across-relaxation process allows for efficient X8x>oV;8  
    population of theupper laser level. eFI4(Y  
    *)            !(*  *)注释语句 *$$V, 6O.  
    fdG.=7`  
    diagram shown: 1,2,3,4,5  !指定输出图表 mD)O\.uA  
    ; 1: "Powersvs. Position"     !分号是注释;光纤长度对功率的影响 @GtZK  
    ; 2:"Variation of the Pump Power"  !泵浦光功率变化对信号输出功率的影响 ACYn87tq  
    ; 3:"Variation of the Fiber Length"!信号输出功率vs 光纤长度的变化,仿真最佳光纤长度 fO>~V1  
    ; 4:"Transverse Profiles"             !横向分布,横坐标为半径位置 Z5[:Zf?h7J  
    ; 5:"Transition Cross-sections"    !不同波长的跃迁横截面,横坐标波长,纵坐标为横截面 [;AcV73  
    [ d7]&i}*|  
    include"Units.inc"         !读取“Units.inc”文件中内容 6w;|-/:`  
    " G6j UTt  
    include"Tm-silicate.inc"    !读取光谱数据 %Ab_PAw  
    >pvg0Fh  
    ; Basic fiberparameters:    !定义基本光纤参数 }z+"3A|  
    L_f := 4 { fiberlength }      !光纤长度 hY 2PV7"[;  
    No_z_steps := 50 {no steps along the fiber } !光纤步长,大括号{ }是注释,相当于备注 n^02@Aw  
    r_co := 6 um { coreradius }                !纤芯半径 p&mtKLv  
    N_Tm := 100e24 { Tmdoping concentration }  !纤芯Tm离子掺杂浓度 30E v"  
    [Mc5N  
    ; Parameters of thechannels:                !定义光信道  7~nCK  
    l_p := 790 nm {pump wavelength }                !泵浦光波长790nm vqi$}=%n?W  
    dir_p := forward {pump direction (forward or backward) }   !前向泵浦 9nS!  
    P_pump_in := 5 {input pump power }                    !输入泵浦功率5W l|em E ^  
    w_p := 50 um {radius of pump cladding }               !包层泵浦相应的半径 50um veg!mY2&  
    I_p(r) := (r <=w_p) { pump intensity profile }          !泵浦光强度分布 ok2~B._+;  
    loss_p := 0 {parasitic losses of pump wave }           !泵浦光寄生损耗为0 H`lD@q'S  
     ja- ~`  
    l_s := 1940 nm {signal wavelength }                   !信号光波长1940nm AuipK*&g  
    w_s := 7 um                          !信号光的半径 c|( ?  
    I_s(r) := exp(-2 *(r / w_s)^2)            !信号光的高斯强度分布 a BH1J]_  
    loss_s := 0                            !信号光寄生损耗为0 'a^tL[rLP1  
    8G] m7Z  
    R_oc := 0.70 {output coupler reflectivity (right side) }      !输出耦合反射率 b|o!&9Yyr  
    E2H<{Q   
    ; Function for defining themodel:   !定义模型函数,一定要有calc命令,否则函数只会被定义,但不会被执行 \N , '+  
    calc 2\B9o `Y  
      begin >TnQ4^;v.  
        global allow all;                   !声明全局变量 E0^%|Mh]b  
        set_fiber(L_f, No_z_steps, '');        !光纤参数 YQdX>k  
        add_ring(r_co, N_Tm); H&Y{jqua  
        def_ionsystem();              !光谱数据函数 cN lY=L  
        pump := addinputchannel(P_pump_in, l_p,'I_p', loss_p, dir_p);  !泵浦光信道 \Fg6b6  
        signal_fw := addinputchannel(0, l_s, 'I_s',loss_s, forward);      !前向信号光信道 ?VP!1O=J  
        signal_bw := addinputchannel(0, l_s, 'I_s',loss_s, backward);    !后向信号光信道 <Iyot]E  
        set_R(signal_fw, 1, R_oc);                                 !设置反射率函数 Z WRRh^  
        finish_fiber();                                   .`>l.gmi&  
      end; 0/@ X!|X  
    35 5Sd;*  
    ; Display someoutputs in the Output window (on the right side): !在Output aera区域显示输出 F*JvpI[7n  
    show "Outputpowers:"                                   !输出字符串Output powers: 5vX 8mPR_  
    show"pump:     ", P_out(pump):d3:"W"  !输出字符串pump:和计算值(格式为3个有效数字,单位W) |EV\a[  
    show"signal:   ",P_out(signal_fw):d3:"W" !输出字符串signal:和计算值(格式为3个有效数字,单位W) l()MYuLNV  
    qJXsf M6  
    pNE\@U|4E  
    ; ------------- k7|z$=zY  
    diagram 1:                   !输出图表1 fb.\V]K  
    W#jZRviyq!  
    "Powers vs.Position"          !图表名称 W({TC  
    -F+P;S  
    x: 0, L_f                      !命令x: 定义x坐标范围 {_XrZ(y/  
    "position infiber (m)", @x      !x轴标签;@x 指示这些字符串沿坐标轴放置 tK|9qs<%  
    y: 0, 15                      !命令y: 定义y坐标范围 -N7L #a  
    y2: 0, 100                    !命令y2: 定义第二个y坐标范围 hdr}!w V  
    frame          !frame改变坐标系的设置 lAn+gDP  
    legpos 600, 500  !图行在图表窗口中的位置(相对于左上角而言) DxKfWb5 R  
    hx             !平行于x方向网格 Wd` QpW  
    hy              !平行于y方向网格 SU%rWH  
    ,)rZAI  
    f: P(pump, x),    !命令f: 定义函数图;P(pump, x)函数是计算x位置处的泵浦光功率 ?(/j<,m^  
      color = red,  !图形颜色 yOUX E>-  
      width = 3,   !width线条宽度 iQ|,&K0d]  
      "pump"       !相应的文本字符串标签 leES YSY:  
    f: P(signal_fw, x),  !P(signal_fw ,x) 函数是计算x位置处的前向信号光功率 k'ZUBTRq!  
      color = blue,     '`]n_$f'  
      width = 3, &H4uvJ_<  
      "fw signal" !q$&JZY  
    f: P(signal_bw, x),   !P(signal_bw ,x) 函数是计算x位置处的后向信号光功率 ?l, X!o6  
      color = blue, O/Y\ps3r  
      style = fdashed, 12tJrS*Z  
      width = 3, ewAH'H]o  
      "bw signal" JU'WiR bcb  
    :qAc= IC%  
    f: 100 * n(x, 2),    !n(x ,2) 函数是计算x位置处激活粒子数在能级2上的占比 XnE %$NJ  
      yscale = 2,            !第二个y轴的缩放比例 -4?xwz9o$7  
      color = magenta, wAu[pWD'6;  
      width = 3, cNuHXaWp  
      style = fdashed, EO].qN-8  
      "n2 (%, right scale)" S"P9Nf?9  
    S?Bc~y  
    f: 100 * n(x, 3),          !n(x ,3) 函数是计算x位置处激活粒子数在能级3上的占比 %R5Com  
      yscale = 2, dgco*TIGO  
      color = red, pG!(6V-x<E  
      width = 3, &gA6+b'  
      style = fdashed, -OrY{^F  
      "n3 (%, right scale)" vr{'FMc  
    N4a`8dS|  
    B0)`wsb_  
    ; ------------- oI_oz0nHk  
    diagram 2:                    !输出图表2 5@ bc(H  
    1iNsX\M  
    "Variation ofthe Pump Power" f`hyYp`d5  
    ~JwpNJs  
    x: 0, 10 Mhe |eD#)  
    "pump inputpower (W)", @x |oe!P}u  
    y: 0, 10 %XJQ0CE<(  
    y2: 0, 100 |jahpji6  
    frame |;A9A's  
    hx U#;51 _  
    hy y@o9~?M  
    legpos 150, 150 ptV4s=G2  
    {H=oxa  
    f: (set_P_in(pump, x);P_out(signal_fw)), !set_P_in(pump,x)改变泵浦信道功率;P_out(signal_fw)输出前向信号光 x?,~TC4  
      step = 5, 8%o~4u3  
      color = blue, Gr5`1`8|  
      width = 3, G;(onJz  
      "signal output power (W, leftscale)",     !相应的文本字符串标签 "_K}rI6(t  
      finish set_P_in(pump, P_pump_in) ^uyNv-'F  
    y#S1c)vU  
    f: (set_P_in(pump,x); 100 * n_av(2)),   !改变泵浦信号功率对能级2上激活粒子占比的影响 O9t=lrYV!  
      yscale = 2, F+ffl^BQ  
      step = 5, L]k*QIn:h  
      color = magenta, -|m$YrzG  
      width = 3,  6Xdtr  
      "population of level 2 (%, rightscale)", %{R _^Y8t  
      finish set_P_in(pump, P_pump_in) 2c}B  
    Q0V^PDF  
    f: (set_P_in(pump,x); 100 * n_av(3)),   !改变泵浦信号功率对能级3上激活粒子占比的影响 |EF>Y9   
      yscale = 2, O6y @G .+  
      step = 5, +w "XNl  
      color = red, ;#3ekl{-g  
      width = 3, 7w "sJ  
      "population of level 3 (%, rightscale)", p QluGIX0V  
      finish set_P_in(pump, P_pump_in) &&X$d!V  
    \Y*!f|=of  
    p1Q/g Il  
    ; ------------- `$J'UXtGc  
    diagram 3:                         !输出图表3 U? 8i'5)  
    \). Nag+  
    "Variation ofthe Fiber Length" eh$G.-2N  
    z>6.[Z(T  
    x: 0.1, 5 5pO]vBT  
    "fiber length(m)", @x gf+o1\5t@  
    y: 0, 10 RNGO~:k?r  
    "opticalpowers (W)", @y Js/N()X  
    frame uu}'i\Q  
    hx mHKJ  
    hy X$/E>I  
    sNL+F  
    f: (set_L(x);P_out(signal_fw)),     !改变光纤长度对信号光输出功率的影响 I$n+DwKcN  
      step = 20,             !?jK1{E3  
      color = blue, J;S-+  
      width = 3, ]de\i=?|  
      "signal output" $u:<x  
    O{~KR/  
    ;f: (set_L(x);P_out(pump)),                     !改变光纤长度对泵浦信号输出功率的影响 5i6VZv  
       step = 20, color = red, width = 3,"residual pump" pg+b[7  
    \H^;'agA  
    ! set_L(L_f) {restore the original fiber length } W/sY#"  
    ^[#=L4  
    Ddb-@YD&+0  
    ; ------------- gt'*B5F(  
    diagram 4:                                  !输出图表4 7m\vRMK  
    y>`5Kyj3-@  
    "TransverseProfiles" >E, Q  
    Wj&nUp{  
    I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) ] @ufV  
    #00D?nC  
    x: 0, 1.4 * r_co /um QCWf.@n  
    "radialposition (µm)", @x )T9~8p.  
    y: 0, 1.2 * I_max *cm^2 $%Z3;:<Uf-  
    "intensity (W/ cm&sup2;)", @y rS4%$p"  
    y2: 0, 1.3 * N_Tm Y~}5axSPH  
    frame }w#F6  
    hx ?IILt=)<  
    hy J smB^  
    T<P0T<  
    f: N_dop(1, x * um,0),      !掺杂浓度的径向分布 k=`$6(>Fz  
      yscale = 2, q(gjT^aN  
      color = gray, z|I0-1tAK  
      width = 3, }-74 f  
      maxconnect = 1, X &D{5~qC  
      "N_dop (right scale)" ~q 7;8<U  
    6lsEGe  
    f: I(pump, -1, x *um, 0) * cm^2,    !泵浦光沿光纤径向的强度分布 1 DqX:WM6  
      color = red, 4@h;5   
      maxconnect = 1,           !限制图形区域高度,修正为100%的高度 h,t:]  
      width = 3, <[ZI.+_Wt  
      "pump" n}JPYu  
    NO2(vE  
    f: I(signal_fw, -1,x * um, 0) * cm^2,  !信号光沿光纤径向的强度分布 ~@D/A/|  
      color = blue, wG8 nw;  
      maxconnect = 1, gqfDa cDJL  
      width = 3, ?`H[u7*%  
      "signal" N'QqJe7Z  
    ,5{$+  
    FAw1o  
    ; ------------- {~_ Y _-  
    diagram 5:                                  !输出图表5 VO_dA4C}z  
    :b@igZ<  
    "TransitionCross-sections" CW p#^1F  
    /P:EWUf'  
    I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) :RiF3h(  
    y^R4I_* z  
    x: 1450, 2050 )c+k_;t'+  
    "wavelength(nm)", @x DZk1ZLz  
    y: 0, 0.6 Q+'nw9:;T  
    "cross-sections(1e-24 m&sup2;)", @y ,F9nDF@)  
    frame `eR 7H>I  
    hx O,'#C\   
    hy r[pF^y0   
    N 9LgU)-Jt  
    f: s12_Tm(x * nm) /1e-24,      !Tm3+吸收截面与波长的关系 C6]OAUXy:F  
      color = red, m*Cu-6&qd  
      width = 3, 4-^[%&>}  
      "absorption" v+6e;xl8  
    f: s21_Tm(x * nm) /1e-24,  !Tm3+发射截面与波长的关系 2+Yb 7 uI,  
      color = blue, |##GIIv;i  
      width = 3, ^~1<f1(  
      "emission" vy9dAl  
    :o8MUXH$  
     
    分享到
    离线lileisgsz
    发帖
    14
    光币
    69
    光券
    0
    只看该作者 1楼 发表于: 2021-09-28
    感谢,视频上有点看不清楚