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

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

    上一主题 下一主题
    离线小火龙果
     
    发帖
    932
    光币
    2176
    光券
    0
    只看楼主 倒序阅读 楼主  发表于: 2020-05-28
    (* ^4y(pcD  
    Demo for program"RP Fiber Power": thulium-doped fiber laser, ,\\%EZ%a  
    pumped at 790 nm. Across-relaxation process allows for efficient r78u=r  
    population of theupper laser level. J=f:\]@Oy  
    *)            !(*  *)注释语句 {^PO3I  
    A^}i^  
    diagram shown: 1,2,3,4,5  !指定输出图表 0A) Vtj$  
    ; 1: "Powersvs. Position"     !分号是注释;光纤长度对功率的影响 gaLEhf^  
    ; 2:"Variation of the Pump Power"  !泵浦光功率变化对信号输出功率的影响 B[) [fE  
    ; 3:"Variation of the Fiber Length"!信号输出功率vs 光纤长度的变化,仿真最佳光纤长度 lM@<_=2  
    ; 4:"Transverse Profiles"             !横向分布,横坐标为半径位置 G\'u~B/w  
    ; 5:"Transition Cross-sections"    !不同波长的跃迁横截面,横坐标波长,纵坐标为横截面 ~zXG<}n  
    c+,7Zu!  
    include"Units.inc"         !读取“Units.inc”文件中内容 >!HfH(is\  
    ,7n;|1`  
    include"Tm-silicate.inc"    !读取光谱数据 C8bGae(  
    F20wf1^  
    ; Basic fiberparameters:    !定义基本光纤参数 FUW(>0x?  
    L_f := 4 { fiberlength }      !光纤长度 iylBK!ou  
    No_z_steps := 50 {no steps along the fiber } !光纤步长,大括号{ }是注释,相当于备注 PV,kYM6  
    r_co := 6 um { coreradius }                !纤芯半径 +d6Aw}*  
    N_Tm := 100e24 { Tmdoping concentration }  !纤芯Tm离子掺杂浓度 >|UrxJ7  
    I]uOMWZs  
    ; Parameters of thechannels:                !定义光信道 |Ak =-.  
    l_p := 790 nm {pump wavelength }                !泵浦光波长790nm =Do3#Xe2V  
    dir_p := forward {pump direction (forward or backward) }   !前向泵浦 !I~C\$^U  
    P_pump_in := 5 {input pump power }                    !输入泵浦功率5W %2rHvF=  
    w_p := 50 um {radius of pump cladding }               !包层泵浦相应的半径 50um L|C1C cP  
    I_p(r) := (r <=w_p) { pump intensity profile }          !泵浦光强度分布 8%vh6$s6/  
    loss_p := 0 {parasitic losses of pump wave }           !泵浦光寄生损耗为0 hJC p0F9O  
     uu WY4j6  
    l_s := 1940 nm {signal wavelength }                   !信号光波长1940nm T!^?d5uW#  
    w_s := 7 um                          !信号光的半径 %v`-uAy:  
    I_s(r) := exp(-2 *(r / w_s)^2)            !信号光的高斯强度分布 `wn<3#  
    loss_s := 0                            !信号光寄生损耗为0 gW 6G+  
    uI[-P}bSc&  
    R_oc := 0.70 {output coupler reflectivity (right side) }      !输出耦合反射率 >m2<Nl}  
    ^LEmi1L  
    ; Function for defining themodel:   !定义模型函数,一定要有calc命令,否则函数只会被定义,但不会被执行 /P?|4D}<  
    calc  &*>C PO  
      begin ~7,2N.vO2  
        global allow all;                   !声明全局变量 Th& Wq  
        set_fiber(L_f, No_z_steps, '');        !光纤参数 (^s&M  
        add_ring(r_co, N_Tm); JA SR  
        def_ionsystem();              !光谱数据函数 P*0nT  
        pump := addinputchannel(P_pump_in, l_p,'I_p', loss_p, dir_p);  !泵浦光信道 !ho5VA t  
        signal_fw := addinputchannel(0, l_s, 'I_s',loss_s, forward);      !前向信号光信道 q5'yD;[hE  
        signal_bw := addinputchannel(0, l_s, 'I_s',loss_s, backward);    !后向信号光信道 E.H,1 {  
        set_R(signal_fw, 1, R_oc);                                 !设置反射率函数 T~wZ  
        finish_fiber();                                   qmue!Fv#g  
      end; d0H  
    Wd^F%)(  
    ; Display someoutputs in the Output window (on the right side): !在Output aera区域显示输出 bCE7hutl  
    show "Outputpowers:"                                   !输出字符串Output powers: ]Jq k C4|  
    show"pump:     ", P_out(pump):d3:"W"  !输出字符串pump:和计算值(格式为3个有效数字,单位W) #iR yjD  
    show"signal:   ",P_out(signal_fw):d3:"W" !输出字符串signal:和计算值(格式为3个有效数字,单位W) 8f{}ce'E*  
    n ]6 0  
    Hl3XqR  
    ; ------------- 8}pcanPg  
    diagram 1:                   !输出图表1 mNnw G);$  
    guUr1Ij  
    "Powers vs.Position"          !图表名称 U Qi^udGFD  
    Vk N[=0a,  
    x: 0, L_f                      !命令x: 定义x坐标范围 2 l[A=Z  
    "position infiber (m)", @x      !x轴标签;@x 指示这些字符串沿坐标轴放置 WFeMr%Zqh>  
    y: 0, 15                      !命令y: 定义y坐标范围 |W~V@n8"6  
    y2: 0, 100                    !命令y2: 定义第二个y坐标范围 fa+W9  
    frame          !frame改变坐标系的设置 S$lmEJ_  
    legpos 600, 500  !图行在图表窗口中的位置(相对于左上角而言) |qy"%W@  
    hx             !平行于x方向网格 zI2KIXcc  
    hy              !平行于y方向网格 0r$hPmvv8  
    QS=$#Gp  
    f: P(pump, x),    !命令f: 定义函数图;P(pump, x)函数是计算x位置处的泵浦光功率 C tC`:!Q  
      color = red,  !图形颜色 G2yUuyAZ  
      width = 3,   !width线条宽度 picP_1L  
      "pump"       !相应的文本字符串标签 ^ ]6  80h  
    f: P(signal_fw, x),  !P(signal_fw ,x) 函数是计算x位置处的前向信号光功率 1{Alj27  
      color = blue,     PkCeV]`w  
      width = 3, FbCZV3Y  
      "fw signal" 2YE]?!   
    f: P(signal_bw, x),   !P(signal_bw ,x) 函数是计算x位置处的后向信号光功率 "{ QHWZ  
      color = blue, _#YHc[Wz  
      style = fdashed, ]}l+ !NV<  
      width = 3, J6["j   
      "bw signal" 5#9Wd9LP  
    ndCS<ojcBP  
    f: 100 * n(x, 2),    !n(x ,2) 函数是计算x位置处激活粒子数在能级2上的占比 4 _U,-%/  
      yscale = 2,            !第二个y轴的缩放比例 MZP><Je&  
      color = magenta, pv m'pu78  
      width = 3, 't]EkH]BC  
      style = fdashed, |YGiATD4DG  
      "n2 (%, right scale)" oCdOC5  
    M(h H#_ $  
    f: 100 * n(x, 3),          !n(x ,3) 函数是计算x位置处激活粒子数在能级3上的占比 W$t}3Ru  
      yscale = 2, Bc|x:#`C\{  
      color = red, w)m0Z4*  
      width = 3, ;~@PYIp  
      style = fdashed, R.YGmT'2  
      "n3 (%, right scale)" P7x?!71?L  
    gJ GBD9wC  
    $W_o$'crW  
    ; ------------- ;~Gpw/]5E  
    diagram 2:                    !输出图表2 Obc3^pV&  
    _g`0td>N  
    "Variation ofthe Pump Power" /L|}Y242  
    dYqDL<se/I  
    x: 0, 10 X.AOp  
    "pump inputpower (W)", @x (&]15 FJ$1  
    y: 0, 10 Ah>krE0t  
    y2: 0, 100 [ rQ(ae  
    frame TnU$L3k  
    hx o27`g\gDR,  
    hy e "adkV  
    legpos 150, 150 9MzkG87J  
    CG>2 ,pP,  
    f: (set_P_in(pump, x);P_out(signal_fw)), !set_P_in(pump,x)改变泵浦信道功率;P_out(signal_fw)输出前向信号光 'lRHdD}s  
      step = 5, ^R'!\m|FR  
      color = blue, q\HBAr y  
      width = 3, L{0OMyUA  
      "signal output power (W, leftscale)",     !相应的文本字符串标签 T17LYHIT  
      finish set_P_in(pump, P_pump_in) -0r "#48(%  
    5NF&LM;i(  
    f: (set_P_in(pump,x); 100 * n_av(2)),   !改变泵浦信号功率对能级2上激活粒子占比的影响 oplA'Jgnv  
      yscale = 2, rU^ghF  
      step = 5, Jx9%8Ek  
      color = magenta, g+/U^JIc4l  
      width = 3, hic$13KuP  
      "population of level 2 (%, rightscale)", Rw{v"n  
      finish set_P_in(pump, P_pump_in) 8kc'|F\  
    ,M h/3DPgE  
    f: (set_P_in(pump,x); 100 * n_av(3)),   !改变泵浦信号功率对能级3上激活粒子占比的影响 GK+\-U)v  
      yscale = 2, l/UG+7  
      step = 5, 2[YD&  
      color = red, dVt@D&  
      width = 3, JiLrwPex[  
      "population of level 3 (%, rightscale)", :=7'1H  
      finish set_P_in(pump, P_pump_in) R:R@sU  
    )* nbEZm@  
    Qn3+bF4  
    ; ------------- ~kJpBt7M  
    diagram 3:                         !输出图表3 I64:-P[\  
    k Z[yv  
    "Variation ofthe Fiber Length" Q0; gF?  
    9la~3L_g  
    x: 0.1, 5 ,h`D(,?X  
    "fiber length(m)", @x {]Iu">*  
    y: 0, 10 <r`Jn49  
    "opticalpowers (W)", @y 842+KLS  
    frame l<: E+lU  
    hx ![!b^:f  
    hy KJC9^BAr  
    &2]D+aL|h  
    f: (set_L(x);P_out(signal_fw)),     !改变光纤长度对信号光输出功率的影响 e CUcE(  
      step = 20,             [=1?CD  
      color = blue, q<uLBaL_]r  
      width = 3, 7CMgvH)O  
      "signal output" oNsx Fi:  
    ^k<$N  
    ;f: (set_L(x);P_out(pump)),                     !改变光纤长度对泵浦信号输出功率的影响 Q4 :r$ &  
       step = 20, color = red, width = 3,"residual pump" (a!,)  
    h GXD u;{  
    ! set_L(L_f) {restore the original fiber length } |M>k &p,B-  
    knzED~ v@(  
    OYp8r  
    ; ------------- /)4r2x  
    diagram 4:                                  !输出图表4 :{uUc  
    ?8}jJw2H  
    "TransverseProfiles" SW'KYzn  
    3i}B\ {  
    I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) :Qp/3(g e  
    oP75|p  
    x: 0, 1.4 * r_co /um Z|dZc wo  
    "radialposition (µm)", @x 4:PP[2?  
    y: 0, 1.2 * I_max *cm^2 Y1+lk^  
    "intensity (W/ cm&sup2;)", @y b}*bgx@<  
    y2: 0, 1.3 * N_Tm O~ 0 1)%  
    frame w|o@r%Q#l  
    hx M%^laf  
    hy L/LN X{|  
    J*C*](  
    f: N_dop(1, x * um,0),      !掺杂浓度的径向分布 (UT*T  
      yscale = 2, 8HA=O ?Cg  
      color = gray, h*Tiv^a  
      width = 3, !`=?<Fl  
      maxconnect = 1, !I/kz }N@  
      "N_dop (right scale)" pdiZ"pe  
    PW4Wn`u  
    f: I(pump, -1, x *um, 0) * cm^2,    !泵浦光沿光纤径向的强度分布 O;?~#E<6w  
      color = red, c6)zx b  
      maxconnect = 1,           !限制图形区域高度,修正为100%的高度 mXaUWgO  
      width = 3, {[~,q\M[  
      "pump" %~2m$#)  
    bQjHQ"G  
    f: I(signal_fw, -1,x * um, 0) * cm^2,  !信号光沿光纤径向的强度分布 :/l   
      color = blue, io3'h:+9s  
      maxconnect = 1, +0 |0X {v  
      width = 3, @cGql=t  
      "signal" w!7/;VJ3d  
    x&Rp m<4  
    4]KceE  
    ; ------------- +]vl8, 4@  
    diagram 5:                                  !输出图表5 1*jm9])#  
    &W!@3O{~.  
    "TransitionCross-sections" # t Ki6u  
    Mv =;+?z!  
    I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) p~ItHwiT  
    _ 0E,@[  
    x: 1450, 2050 $7YLU{0  
    "wavelength(nm)", @x 7^=jv~>wP  
    y: 0, 0.6 R&xd ic!  
    "cross-sections(1e-24 m&sup2;)", @y 'WCTjTob/  
    frame B=`!  
    hx /p"R}&z  
    hy Z4' v  
    7yl'!uz)9  
    f: s12_Tm(x * nm) /1e-24,      !Tm3+吸收截面与波长的关系 h zE)>f  
      color = red, < *OF  
      width = 3, 5GkM7Zu!{j  
      "absorption" 2Wtfx" .y  
    f: s21_Tm(x * nm) /1e-24,  !Tm3+发射截面与波长的关系 Yl])Q|2I  
      color = blue, $@;[K \  
      width = 3, bxq`E!]  
      "emission" -NeF6  
    Q-5wI$=  
     
    分享到
    离线lileisgsz
    发帖
    14
    光币
    69
    光券
    0
    只看该作者 1楼 发表于: 2021-09-28
    感谢,视频上有点看不清楚