| 小火龙果 |
2020-05-28 16:28 |
RP Fiber Power仿真设计掺铥光纤激光器代码详解
(* aQFYSl Demo for program"RP Fiber Power": thulium-doped fiber laser, sd8o&6 pumped at 790 nm. Across-relaxation process allows for efficient &R*d/~SU population of theupper laser level. _7$j>xX *) !(* *)注释语句 |nD2k,S<? `r>WVPS| diagram shown: 1,2,3,4,5 !指定输出图表 lrq !}\aX ; 1: "Powersvs. Position" !分号是注释;光纤长度对功率的影响 fU)hn ; 2:"Variation of the Pump Power" !泵浦光功率变化对信号输出功率的影响 1P2%n[y ; 3:"Variation of the Fiber Length"!信号输出功率vs 光纤长度的变化,仿真最佳光纤长度 B}P,sFghw ; 4:"Transverse Profiles" !横向分布,横坐标为半径位置 /B1<N} ; 5:"Transition Cross-sections" !不同波长的跃迁横截面,横坐标波长,纵坐标为横截面 KM0#M'dXy sSD(mO<( include"Units.inc" !读取“Units.inc”文件中内容 VIi|:k b55|JWfC` include"Tm-silicate.inc" !读取光谱数据 7BI0g@$Nn] C(,s_Ks ; Basic fiberparameters: !定义基本光纤参数 #C>pA<YJzK L_f := 4 { fiberlength } !光纤长度 TF=S \
Q No_z_steps := 50 {no steps along the fiber } !光纤步长,大括号{ }是注释,相当于备注 *~ &W?i r_co := 6 um { coreradius } !纤芯半径 $AsM 9D<BE N_Tm := 100e24 { Tmdoping concentration } !纤芯Tm离子掺杂浓度 ZklidHL'); m"x~Fjvd ; Parameters of thechannels: !定义光信道 $(zJ l_p := 790 nm {pump wavelength } !泵浦光波长790nm -BoN}xE4 dir_p := forward {pump direction (forward or backward) } !前向泵浦 :hJhEQH(9 P_pump_in := 5 {input pump power } !输入泵浦功率5W ^@[[,1"K w_p := 50 um {radius of pump cladding } !包层泵浦相应的半径 50um -h.YQC` I_p(r) := (r <=w_p) { pump intensity profile } !泵浦光强度分布 aL=VNZ!Pqc loss_p := 0 {parasitic losses of pump wave } !泵浦光寄生损耗为0 Y
=`3L 89 fT?tT l_s := 1940 nm {signal wavelength } !信号光波长1940nm 5@Py` w_s := 7 um !信号光的半径 /#,<>EfT I_s(r) := exp(-2 *(r / w_s)^2) !信号光的高斯强度分布 m,up37-{ loss_s := 0 !信号光寄生损耗为0 orHVL 2
KK 6 #{=
E@ R_oc := 0.70 {output coupler reflectivity (right side) } !输出耦合反射率 #4cuNX5m% },f7I^s| ; Function for defining themodel: !定义模型函数,一定要有calc命令,否则函数只会被定义,但不会被执行 &kO4^ A calc |}mBW@ah begin ^R<= } global allow all; !声明全局变量
dc5B# set_fiber(L_f, No_z_steps, ''); !光纤参数 R9#Z=f, add_ring(r_co, N_Tm); }W|CIgF* def_ionsystem(); !光谱数据函数 WHpbQQX pump := addinputchannel(P_pump_in, l_p,'I_p', loss_p, dir_p); !泵浦光信道 HE(U0<9c signal_fw := addinputchannel(0, l_s, 'I_s',loss_s, forward); !前向信号光信道 Hss{Sb( signal_bw := addinputchannel(0, l_s, 'I_s',loss_s, backward); !后向信号光信道 vNtbb]')m set_R(signal_fw, 1, R_oc); !设置反射率函数 %pg*oX1VK6 finish_fiber(); 2G'G45Q end; ^WD[>E~ Y":hb;& ; Display someoutputs in the Output window (on the right side): !在Output aera区域显示输出 ZjI^0D8 show "Outputpowers:" !输出字符串Output powers: Y0eu^p) show"pump: ", P_out(pump):d3:"W" !输出字符串pump:和计算值(格式为3个有效数字,单位W) KY"~Ta` show"signal: ",P_out(signal_fw):d3:"W" !输出字符串signal:和计算值(格式为3个有效数字,单位W) T:}Ed_m}q K1+,y1c #Ta@A~.L ; ------------- ix$+NM<n diagram 1: !输出图表1 (wA|lK3 94lmsE "Powers vs.Position" !图表名称 W&p-Z"=) f9\7v_ x: 0, L_f !命令x: 定义x坐标范围 C]):+F<7 "position infiber (m)", @x !x轴标签;@x 指示这些字符串沿坐标轴放置 m[8#h(s*t y: 0, 15 !命令y: 定义y坐标范围 MBwp{ET!p y2: 0, 100 !命令y2: 定义第二个y坐标范围 {9=U6m^R2 frame !frame改变坐标系的设置 8vP d~te legpos 600, 500 !图行在图表窗口中的位置(相对于左上角而言) 2]C0d8=*? hx !平行于x方向网格 0<Pe~i_= hy !平行于y方向网格 O42An$} 5GRN1Aov< f: P(pump, x), !命令f: 定义函数图;P(pump, x)函数是计算x位置处的泵浦光功率 K8RloDjk_A color = red, !图形颜色 {Rz`)qqE width = 3, !width线条宽度 TZ*ib~ "pump" !相应的文本字符串标签 lq9c2xK f: P(signal_fw, x), !P(signal_fw ,x) 函数是计算x位置处的前向信号光功率 X:!%"K%} color = blue, gT+/CVj R width = 3, |LjCtm)@+ "fw signal"
:?^(&3; f: P(signal_bw, x), !P(signal_bw ,x) 函数是计算x位置处的后向信号光功率 AzQ}}A;TSx color = blue, cCj3,s/p style = fdashed, d6n6 =
[* width = 3, ]v#T'<Nl "bw signal" >AfJxdd1 5&xvY.!27V f: 100 * n(x, 2), !n(x ,2) 函数是计算x位置处激活粒子数在能级2上的占比 3)eeUO+ yscale = 2, !第二个y轴的缩放比例 K:{Q~+
color = magenta, \e?T9c6, width = 3, zzx4;C",u style = fdashed, Gs9jX/# "n2 (%, right scale)" dGfWRqS] Fd91Y f: 100 * n(x, 3), !n(x ,3) 函数是计算x位置处激活粒子数在能级3上的占比 $i2gOz yscale = 2, p75w^ color = red, &=UzF width = 3, kOc'@;_O style = fdashed, %Wu8RG} "n3 (%, right scale)" q)vD "{0. <zUmcZ S
xg Yq ; ------------- .Q#Eb %% diagram 2: !输出图表2 dEL>Uly J|b1
K] "Variation ofthe Pump Power" uI%[1`2N- f Xq e7[ x: 0, 10 L\B+j+~ "pump inputpower (W)", @x bH.">IV y: 0, 10 `=>Bop) y2: 0, 100 PNG'"7O frame #}gc6T~0 hx C6Mb(& hy i a|F legpos 150, 150 r*$"]{m} BkJcT f: (set_P_in(pump, x);P_out(signal_fw)), !set_P_in(pump,x)改变泵浦信道功率;P_out(signal_fw)输出前向信号光 l)|CPSN?w step = 5, -cW5v
color = blue, WV6vM()#!C width = 3, 'X?`+2wK
"signal output power (W, leftscale)", !相应的文本字符串标签 4VooU [Ka( finish set_P_in(pump, P_pump_in) qd.b&i 3!
+5MsR+ f: (set_P_in(pump,x); 100 * n_av(2)), !改变泵浦信号功率对能级2上激活粒子占比的影响 BAPi<U'D yscale = 2, [sad}@R7 step = 5, 3646.i[D color = magenta, v3/cNd3 width = 3, Jk~T.p?tF "population of level 2 (%, rightscale)", olJ9Kfc0 finish set_P_in(pump, P_pump_in) BBx"{~ 7OZs~6( f: (set_P_in(pump,x); 100 * n_av(3)), !改变泵浦信号功率对能级3上激活粒子占比的影响 AV'> yscale = 2, @fY!@xSf step = 5, QVP
$e`4 color = red, I?PKc'b width = 3, x88$#N>Q5 "population of level 3 (%, rightscale)", ucn aj| finish set_P_in(pump, P_pump_in) lH6t d N7E[wOP mA4v 4z ; ------------- [W2p }4( diagram 3: !输出图表3 mrJQB I+ a@7we=! "Variation ofthe Fiber Length" k/LV=e7 $nVTN.k x: 0.1, 5 $'&5gFr9 "fiber length(m)", @x T#( s2 y: 0, 10 7e40 }n "opticalpowers (W)", @y ctCfLlK frame [$./'-I] hx Ve=0_GR0 hy ;6]+/e7O z><JbSE? f: (set_L(x);P_out(signal_fw)), !改变光纤长度对信号光输出功率的影响 >GjaA1, step = 20, 5~sJ$5<, color = blue, eg}|%GG width = 3, ,wq.C6;& "signal output" 1{,WY(,c *R&g'y^d ;f: (set_L(x);P_out(pump)), !改变光纤长度对泵浦信号输出功率的影响 :+;F" _ step = 20, color = red, width = 3,"residual pump" L*5&hPU tf/ f-S ! set_L(L_f) {restore the original fiber length } Q!"Li ~MXPiZG? R#r?<Ofw4 ; ------------- S`R
( _eD@ diagram 4: !输出图表4 ou(9Qf zN C[pAa 8 "TransverseProfiles" c#l
(~g$D+ 9]S}m[8k I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) a-Y K* ! g}9xIL x: 0, 1.4 * r_co /um 0h; -Yg "radialposition (µm)", @x zX5p'8- y: 0, 1.2 * I_max *cm^2 3wr~P "intensity (W/ cm²)", @y aMHIOA%Kh y2: 0, 1.3 * N_Tm J|I|3h<T frame C ]#R7G hx H8\N~> hy ad"&c*m[ `*~:nvU f: N_dop(1, x * um,0), !掺杂浓度的径向分布 7f`jl/ yscale = 2, xWV_Do)z color = gray, XjX<?W width = 3, ucMl>G'!gX maxconnect = 1, ir\ "N_dop (right scale)" .t["kaA SQliF[- f: I(pump, -1, x *um, 0) * cm^2, !泵浦光沿光纤径向的强度分布 ` "9Y.KU color = red, !,1~:*: maxconnect = 1, !限制图形区域高度,修正为100%的高度 ."H5.' width = 3, *{tJ3<t(1 "pump" eDy}_By^ Nl(Aa5:! f: I(signal_fw, -1,x * um, 0) * cm^2, !信号光沿光纤径向的强度分布 V^f'4*~' color = blue, H%/$Rqg maxconnect = 1, Ru
sa
&#[ width = 3, B'=*92i>S "signal" G&;W 8HWY]:|oh S4tdWA ; ------------- iPs()IN.O diagram 5: !输出图表5 6b)1B\p 1~_]"Y' "TransitionCross-sections" Et7AAV*8g u2F
3>s I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) $+rdzsf)+/ t=U[ ;? x: 1450, 2050 9aXm} "wavelength(nm)", @x q!FJP9x y: 0, 0.6 Qs4Jl ;Y _ "cross-sections(1e-24 m²)", @y yJgnw6>r2 frame zZA I"\;W hx J|K~a?&vN hy Q}1PPi, i/WYjo f: s12_Tm(x * nm) /1e-24, !Tm3+吸收截面与波长的关系 <iTaJa$0m color = red, rb9x|| width = 3, /.}&yRR "absorption" ^^)Pv#[3 f: s21_Tm(x * nm) /1e-24, !Tm3+发射截面与波长的关系 1 iE color = blue, [y'jz~9c width = 3, kWr*+3Xq "emission" []u!piW 2O4UytN
|
|