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

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

    上一主题 下一主题
    离线小火龙果
     
    发帖
    932
    光币
    2176
    光券
    0
    只看楼主 倒序阅读 楼主  发表于: 2020-05-28
    (* ey3;rY1  
    Demo for program"RP Fiber Power": thulium-doped fiber laser, :>GT<PPD;  
    pumped at 790 nm. Across-relaxation process allows for efficient Gj(UA1~1  
    population of theupper laser level. ||vQW\g  
    *)            !(*  *)注释语句 js8GK  
    ;3k6_ub  
    diagram shown: 1,2,3,4,5  !指定输出图表 uH?lj&  
    ; 1: "Powersvs. Position"     !分号是注释;光纤长度对功率的影响 DU: sQS4  
    ; 2:"Variation of the Pump Power"  !泵浦光功率变化对信号输出功率的影响 Zjh9jvsW  
    ; 3:"Variation of the Fiber Length"!信号输出功率vs 光纤长度的变化,仿真最佳光纤长度 | QI-gw  
    ; 4:"Transverse Profiles"             !横向分布,横坐标为半径位置  !B\[Q$  
    ; 5:"Transition Cross-sections"    !不同波长的跃迁横截面,横坐标波长,纵坐标为横截面 w=H4#a?fc  
    dwt<s [k  
    include"Units.inc"         !读取“Units.inc”文件中内容 >5!/&D.q  
    Cb/?hT  
    include"Tm-silicate.inc"    !读取光谱数据 ofA6EmQ37  
    |~3$L\X  
    ; Basic fiberparameters:    !定义基本光纤参数 .+c YzS] !  
    L_f := 4 { fiberlength }      !光纤长度 v^_<K4N`  
    No_z_steps := 50 {no steps along the fiber } !光纤步长,大括号{ }是注释,相当于备注 *>XY' -;2e  
    r_co := 6 um { coreradius }                !纤芯半径 6lc/_&0  
    N_Tm := 100e24 { Tmdoping concentration }  !纤芯Tm离子掺杂浓度 lt&30nf=  
    H9Pe,eHs  
    ; Parameters of thechannels:                !定义光信道 aE2 3[So  
    l_p := 790 nm {pump wavelength }                !泵浦光波长790nm umWZ]8  
    dir_p := forward {pump direction (forward or backward) }   !前向泵浦  8E!I9z  
    P_pump_in := 5 {input pump power }                    !输入泵浦功率5W T6ZJSKM  
    w_p := 50 um {radius of pump cladding }               !包层泵浦相应的半径 50um y[!4M+jj  
    I_p(r) := (r <=w_p) { pump intensity profile }          !泵浦光强度分布 "@[xo7T  
    loss_p := 0 {parasitic losses of pump wave }           !泵浦光寄生损耗为0 2)^[SpZ  
    <#9zc'ED:  
    l_s := 1940 nm {signal wavelength }                   !信号光波长1940nm ^(0tNX/XD  
    w_s := 7 um                          !信号光的半径 S-:7P.#Q  
    I_s(r) := exp(-2 *(r / w_s)^2)            !信号光的高斯强度分布 tK|hC[  
    loss_s := 0                            !信号光寄生损耗为0 IJnr^S8  
    s!E-+Gw  
    R_oc := 0.70 {output coupler reflectivity (right side) }      !输出耦合反射率 ].2it{gF?b  
    =w.#j-jR  
    ; Function for defining themodel:   !定义模型函数,一定要有calc命令,否则函数只会被定义,但不会被执行 m&Mvb[  
    calc =`X ;fz  
      begin "Rp]2'?  
        global allow all;                   !声明全局变量 ka&-tGg  
        set_fiber(L_f, No_z_steps, '');        !光纤参数 \g}FoN&  
        add_ring(r_co, N_Tm); Hvq< _&2  
        def_ionsystem();              !光谱数据函数 */L;6_  
        pump := addinputchannel(P_pump_in, l_p,'I_p', loss_p, dir_p);  !泵浦光信道 u0J+Nj9  
        signal_fw := addinputchannel(0, l_s, 'I_s',loss_s, forward);      !前向信号光信道 yf=ek= =  
        signal_bw := addinputchannel(0, l_s, 'I_s',loss_s, backward);    !后向信号光信道 H\3CvFm  
        set_R(signal_fw, 1, R_oc);                                 !设置反射率函数 ~QsQ7SAs  
        finish_fiber();                                   xy|-{  
      end; 9CWUhS   
    NoJo-vo*  
    ; Display someoutputs in the Output window (on the right side): !在Output aera区域显示输出 j$]t`6gG  
    show "Outputpowers:"                                   !输出字符串Output powers: [21tT/  
    show"pump:     ", P_out(pump):d3:"W"  !输出字符串pump:和计算值(格式为3个有效数字,单位W) A_%}kt (6  
    show"signal:   ",P_out(signal_fw):d3:"W" !输出字符串signal:和计算值(格式为3个有效数字,单位W) uBks#Y*3$  
    ,U'Er#U  
    =fHt|}.K  
    ; ------------- M{7EFTy!y  
    diagram 1:                   !输出图表1 -c=IO(B/  
    qgca4VV|z  
    "Powers vs.Position"          !图表名称 Y#6@0Nn[G  
    I01On>"@7  
    x: 0, L_f                      !命令x: 定义x坐标范围 N_VAdNJ^:  
    "position infiber (m)", @x      !x轴标签;@x 指示这些字符串沿坐标轴放置 .@APxeU  
    y: 0, 15                      !命令y: 定义y坐标范围 \+MR`\|3  
    y2: 0, 100                    !命令y2: 定义第二个y坐标范围 \FTv N  
    frame          !frame改变坐标系的设置 ]'_z (s}  
    legpos 600, 500  !图行在图表窗口中的位置(相对于左上角而言) n37( sKG  
    hx             !平行于x方向网格 4:<0i0)5  
    hy              !平行于y方向网格 oUw-l_M]  
    7B% @f9g  
    f: P(pump, x),    !命令f: 定义函数图;P(pump, x)函数是计算x位置处的泵浦光功率 #OWwg`AWv  
      color = red,  !图形颜色 r+0)l:{.  
      width = 3,   !width线条宽度 YQN=.Wtc  
      "pump"       !相应的文本字符串标签 .(S,dG0P  
    f: P(signal_fw, x),  !P(signal_fw ,x) 函数是计算x位置处的前向信号光功率 @;<w"j`r  
      color = blue,     &r<<4J(t  
      width = 3, h)wR[N]n  
      "fw signal" NE9e br K  
    f: P(signal_bw, x),   !P(signal_bw ,x) 函数是计算x位置处的后向信号光功率 v& XG4 &  
      color = blue, !gf&l ^)  
      style = fdashed, p]+W1v}V!  
      width = 3, ooZ7HTP|  
      "bw signal" GN1cnM>`  
    \\)-[4uC  
    f: 100 * n(x, 2),    !n(x ,2) 函数是计算x位置处激活粒子数在能级2上的占比 \k1Wh-3  
      yscale = 2,            !第二个y轴的缩放比例 ydns_Z  
      color = magenta, (rw bF  
      width = 3, c= a+7>  
      style = fdashed, F'j:\F6C;  
      "n2 (%, right scale)" >; W)tc,  
    :za!!^  
    f: 100 * n(x, 3),          !n(x ,3) 函数是计算x位置处激活粒子数在能级3上的占比 6!"15dPN  
      yscale = 2, x(b&r g.-0  
      color = red, %okEN !=  
      width = 3, e#'`I^8l  
      style = fdashed, cE*|8'rSf  
      "n3 (%, right scale)" |nt J+  
    @6D<D6`  
    ufR |  
    ; ------------- _ u:#2K$  
    diagram 2:                    !输出图表2 >leOyBEAR  
    IeU.T@ $  
    "Variation ofthe Pump Power" p-7dJ  
    lHGv:TN  
    x: 0, 10 s{q2C}=$?D  
    "pump inputpower (W)", @x kcYR:;y  
    y: 0, 10 g{J3Ba  
    y2: 0, 100 FD@! z :  
    frame _+;x 4K;  
    hx _>`0!mG  
    hy ./g0T{&  
    legpos 150, 150 GS{9MGl  
    UJm`GO  
    f: (set_P_in(pump, x);P_out(signal_fw)), !set_P_in(pump,x)改变泵浦信道功率;P_out(signal_fw)输出前向信号光 s=q+3NTv  
      step = 5, KcU,RTE  
      color = blue, nu3 A'E`'k  
      width = 3, FFQF0.@EBi  
      "signal output power (W, leftscale)",     !相应的文本字符串标签 ?B}>[  
      finish set_P_in(pump, P_pump_in) ZbGyl}8ua  
    vv8$u3H  
    f: (set_P_in(pump,x); 100 * n_av(2)),   !改变泵浦信号功率对能级2上激活粒子占比的影响 Z0'3.D,l  
      yscale = 2, ~clWG-i  
      step = 5, wk/->Rz  
      color = magenta, !.J~`Y'd_  
      width = 3, eQLa.0  
      "population of level 2 (%, rightscale)", =0:hrg+Zgx  
      finish set_P_in(pump, P_pump_in) >'T%=50YH  
    K7l{&2>?  
    f: (set_P_in(pump,x); 100 * n_av(3)),   !改变泵浦信号功率对能级3上激活粒子占比的影响 ?eO|s5r  
      yscale = 2, ~J2Q0Jv  
      step = 5, )3 r1; ^W  
      color = red, @E)XT\;3  
      width = 3, ?SAi t Q3  
      "population of level 3 (%, rightscale)", f*5"Jh@  
      finish set_P_in(pump, P_pump_in) ='JX_U`A^F  
    ~8X' p6  
    ec0vg.>p  
    ; ------------- _YJwF1e+M  
    diagram 3:                         !输出图表3 -?(RoWv@X&  
    Ya. $x~  
    "Variation ofthe Fiber Length" #X8[g_d/  
    Qd./G5CC  
    x: 0.1, 5 bk?\=4B:E  
    "fiber length(m)", @x ]@P*&FRcZ  
    y: 0, 10 s_[?(Ip{  
    "opticalpowers (W)", @y Kaa*;T![  
    frame _SaK]7}m!  
    hx S&Sf}uK  
    hy 9j"\Lr*o "  
    CL*%06QyE  
    f: (set_L(x);P_out(signal_fw)),     !改变光纤长度对信号光输出功率的影响 L~$RF {$  
      step = 20,             4TKi)0 #7  
      color = blue, xki"'  
      width = 3, %;5hHRA  
      "signal output" >H1d9y +Z  
    op*+fJHD  
    ;f: (set_L(x);P_out(pump)),                     !改变光纤长度对泵浦信号输出功率的影响 [GuDMl3hC  
       step = 20, color = red, width = 3,"residual pump" ?MYD}`Cv  
    >guQY I@4,  
    ! set_L(L_f) {restore the original fiber length } kC0!`$<2f)  
    o7+/v70D  
    -0`hJ_(  
    ; ------------- p(G?  
    diagram 4:                                  !输出图表4 Ae#6=]V+^  
    w}0Qy  
    "TransverseProfiles" T42g4j/l~  
    +Xp;T`,v  
    I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) 6S<$7=$ =  
    zi ,Rk.  
    x: 0, 1.4 * r_co /um k +Oq$Pi  
    "radialposition (µm)", @x B`F82_O  
    y: 0, 1.2 * I_max *cm^2 $-RhCnE  
    "intensity (W/ cm&sup2;)", @y Lk9>7xY  
    y2: 0, 1.3 * N_Tm .%rR  
    frame ttnXEF  
    hx 4.'EEuRw\}  
    hy $ZRN#x@  
    IT(c'}  
    f: N_dop(1, x * um,0),      !掺杂浓度的径向分布 h 3&:"*A2  
      yscale = 2, n@Ag`}  
      color = gray,  vt N5{C  
      width = 3, qM0MSwvC=  
      maxconnect = 1, yLx.*I^6  
      "N_dop (right scale)" d eoM~r9s  
    1Q5<6*QL"  
    f: I(pump, -1, x *um, 0) * cm^2,    !泵浦光沿光纤径向的强度分布 (UZ*36@PJx  
      color = red, L\ %_<2  
      maxconnect = 1,           !限制图形区域高度,修正为100%的高度 ~@8d[Tb  
      width = 3, 4AYc 8Z#'  
      "pump" .;b> T  
    _kHpM:;.  
    f: I(signal_fw, -1,x * um, 0) * cm^2,  !信号光沿光纤径向的强度分布 x]oQl^ F  
      color = blue, E/ZJ\@gzD  
      maxconnect = 1, <k](s  
      width = 3, 3 ms/v:\  
      "signal" _6!/}Fm  
    $:[BB ,$  
    R3n&o%$*  
    ; ------------- lrhAO"/1  
    diagram 5:                                  !输出图表5 e<4z)  
    jtv Q<4  
    "TransitionCross-sections" gKN_~{{OD  
    Ye2];(M  
    I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) P|4E1O  
    RRqMwy>%  
    x: 1450, 2050 rfRo*u2"  
    "wavelength(nm)", @x cJEz>Z6[  
    y: 0, 0.6 C..2y4bA}  
    "cross-sections(1e-24 m&sup2;)", @y sjI[Vq  
    frame ?d<:V.1U@  
    hx 51qIo4$  
    hy ok s=|'&  
    !rg0U<bO!  
    f: s12_Tm(x * nm) /1e-24,      !Tm3+吸收截面与波长的关系 m->%8{L  
      color = red, -]\E}Ti  
      width = 3, 3:joSQa  
      "absorption" {(}w4.!  
    f: s21_Tm(x * nm) /1e-24,  !Tm3+发射截面与波长的关系 SU O;  
      color = blue, yvWzc uL#  
      width = 3, s}#[*WOc  
      "emission" "42$AaS  
    T[h}A"yK;  
     
    分享到
    离线lileisgsz
    发帖
    14
    光币
    69
    光券
    0
    只看该作者 1楼 发表于: 2021-09-28
    感谢,视频上有点看不清楚