| 小火龙果 |
2020-05-28 16:28 |
RP Fiber Power仿真设计掺铥光纤激光器代码详解
(* {K4+6p Demo for program"RP Fiber Power": thulium-doped fiber laser, R+nMy=I%8 pumped at 790 nm. Across-relaxation process allows for efficient p8kr/uMP ; population of theupper laser level. 5DXR8mLoaJ *) !(* *)注释语句 d"5oD@JG: pM{nh00[ diagram shown: 1,2,3,4,5 !指定输出图表 !).}u,*'no ; 1: "Powersvs. Position" !分号是注释;光纤长度对功率的影响 4Ue_Y'LmM ; 2:"Variation of the Pump Power" !泵浦光功率变化对信号输出功率的影响 $we]91(:: ; 3:"Variation of the Fiber Length"!信号输出功率vs 光纤长度的变化,仿真最佳光纤长度 6`0mta Q ; 4:"Transverse Profiles" !横向分布,横坐标为半径位置 _*IPk ; 5:"Transition Cross-sections" !不同波长的跃迁横截面,横坐标波长,纵坐标为横截面 s:2|c]wQ#R 3m>+-})d include"Units.inc" !读取“Units.inc”文件中内容 .s<*'B7& Yly@ww9t| include"Tm-silicate.inc" !读取光谱数据 S#-wl2z JOb*-q|y ; Basic fiberparameters: !定义基本光纤参数 Rx*BwZ L_f := 4 { fiberlength } !光纤长度 _(d.!qGz No_z_steps := 50 {no steps along the fiber } !光纤步长,大括号{ }是注释,相当于备注 t~e<z81p r_co := 6 um { coreradius } !纤芯半径 ,bM-I2BR N_Tm := 100e24 { Tmdoping concentration } !纤芯Tm离子掺杂浓度 'zEI;v `}m Q ; Parameters of thechannels: !定义光信道 SG?Nsp^%`B l_p := 790 nm {pump wavelength } !泵浦光波长790nm )mJf|W!Z# dir_p := forward {pump direction (forward or backward) } !前向泵浦 "+z?x~rk P_pump_in := 5 {input pump power } !输入泵浦功率5W A%Xt|=^_ w_p := 50 um {radius of pump cladding } !包层泵浦相应的半径 50um zF@o2<cD@ I_p(r) := (r <=w_p) { pump intensity profile } !泵浦光强度分布 mCs#.%dU loss_p := 0 {parasitic losses of pump wave } !泵浦光寄生损耗为0 op"$E1+ DbZ0e5 l_s := 1940 nm {signal wavelength } !信号光波长1940nm zVi15P$ w_s := 7 um !信号光的半径 8>7RxSF I_s(r) := exp(-2 *(r / w_s)^2) !信号光的高斯强度分布 mAeuw7Ni loss_s := 0 !信号光寄生损耗为0 X*g(q0N<S Q|,B*b R_oc := 0.70 {output coupler reflectivity (right side) } !输出耦合反射率 ^pS+/ZSi^ Wxkx,q? ; Function for defining themodel: !定义模型函数,一定要有calc命令,否则函数只会被定义,但不会被执行 T/c<23i calc |+:h|UIUQ begin 3;7q` global allow all; !声明全局变量 d'*]ns set_fiber(L_f, No_z_steps, ''); !光纤参数 g|Y] wd add_ring(r_co, N_Tm); ?!=iu!J def_ionsystem(); !光谱数据函数 hKNY+S})g pump := addinputchannel(P_pump_in, l_p,'I_p', loss_p, dir_p); !泵浦光信道 rZojY}dWJ signal_fw := addinputchannel(0, l_s, 'I_s',loss_s, forward); !前向信号光信道 xq%{} signal_bw := addinputchannel(0, l_s, 'I_s',loss_s, backward); !后向信号光信道 `gpQW~*R-; set_R(signal_fw, 1, R_oc); !设置反射率函数 tp:\j@dB finish_fiber(); =H %-.m'f2 end; 6 CC &Z> MlJVeod ; Display someoutputs in the Output window (on the right side): !在Output aera区域显示输出 <]Wlx`=/D show "Outputpowers:" !输出字符串Output powers: *9 Q^5;y show"pump: ", P_out(pump):d3:"W" !输出字符串pump:和计算值(格式为3个有效数字,单位W) `p0ypi3hn show"signal: ",P_out(signal_fw):d3:"W" !输出字符串signal:和计算值(格式为3个有效数字,单位W) a`E*\O'd U{~SXk'2+ J9%@VZut ; ------------- 1/ZR*fa diagram 1: !输出图表1 {%.Lk'#9 K'1~^)* "Powers vs.Position" !图表名称 QM5 .f+/ aV`&L,Q)7E x: 0, L_f !命令x: 定义x坐标范围 pO~c<d}b "position infiber (m)", @x !x轴标签;@x 指示这些字符串沿坐标轴放置 #hL*rbpT y: 0, 15 !命令y: 定义y坐标范围 r]P, 9 y2: 0, 100 !命令y2: 定义第二个y坐标范围 =q(GHg;' frame !frame改变坐标系的设置 g,]@4| legpos 600, 500 !图行在图表窗口中的位置(相对于左上角而言) _M,lQ~ hx !平行于x方向网格 ?0<w hy !平行于y方向网格 tZ2K$!/B u/Fj'*M f: P(pump, x), !命令f: 定义函数图;P(pump, x)函数是计算x位置处的泵浦光功率 [9mL $;M
W color = red, !图形颜色 `C_'|d<HA width = 3, !width线条宽度 ]lS@}W\ "pump" !相应的文本字符串标签 Y\+KoR'; f: P(signal_fw, x), !P(signal_fw ,x) 函数是计算x位置处的前向信号光功率 :XV}
c(+d color = blue, (0Naf width = 3, +VU4s$w6 "fw signal" K(T\9J. f: P(signal_bw, x), !P(signal_bw ,x) 函数是计算x位置处的后向信号光功率 ;\y; color = blue, ~S; Z\ style = fdashed, *~z#.63oZ width = 3, #\4 b:dv "bw signal" "DSPPE&[c wk\L* \@Y} f: 100 * n(x, 2), !n(x ,2) 函数是计算x位置处激活粒子数在能级2上的占比 XidxNPz0^ yscale = 2, !第二个y轴的缩放比例 o%y;(|4t > color = magenta, ~ eN8|SR width = 3, \&}G] style = fdashed, :a3LS|W "n2 (%, right scale)" $_j1kx$ S<6k0b(,_3 f: 100 * n(x, 3), !n(x ,3) 函数是计算x位置处激活粒子数在能级3上的占比 UQd6/mD`e yscale = 2, H5nS%D color = red, vz`@x45K width = 3, *]s&8/Gmb style = fdashed, Mth6-^g5 "n3 (%, right scale)" )u@c3?$6 . p^xS6e{ (U87}}/l ; ------------- SFjU0*B$ diagram 2: !输出图表2 Ie'P#e' ;?IT)sNY "Variation ofthe Pump Power" /N^~U&7 Ff"gadRXd x: 0, 10 #iis/6" "pump inputpower (W)", @x eZF'Ck y y: 0, 10 oEzDMImJ5 y2: 0, 100 's@MQ!
* frame B}*V%}:) hx h8^i\j hy `?o=*OS7Y legpos 150, 150 ZL%VOxYqi ValS8V*N1 f: (set_P_in(pump, x);P_out(signal_fw)), !set_P_in(pump,x)改变泵浦信道功率;P_out(signal_fw)输出前向信号光 bY#;E;'7 step = 5, RfbdBsL color = blue, DBbc|I/[l width = 3, ?ow'^X- "signal output power (W, leftscale)", !相应的文本字符串标签
<jd/t19DB finish set_P_in(pump, P_pump_in) rFXSO=P?Z sp8[cO= f: (set_P_in(pump,x); 100 * n_av(2)), !改变泵浦信号功率对能级2上激活粒子占比的影响 {HZS:AV0 yscale = 2, eihZp step = 5, P"4Mm,
C color = magenta, %{ ~>n" width = 3,
*q"G } "population of level 2 (%, rightscale)", `*9EKj finish set_P_in(pump, P_pump_in) Oje|bxQ #)i&DJ^Y f: (set_P_in(pump,x); 100 * n_av(3)), !改变泵浦信号功率对能级3上激活粒子占比的影响 )|T`17- yscale = 2, 1=TSJ2{9 step = 5, Hptq,~_t color = red, :Kay$r0+ width = 3, Z>{*ISvpq "population of level 3 (%, rightscale)", !d4HN.a7+u finish set_P_in(pump, P_pump_in) |(%AM*n ku3D?D:V oYq,u@oM ; ------------- ^_w*XV diagram 3: !输出图表3 ]N\6h(**wy 4 ?2g&B\ "Variation ofthe Fiber Length" 7x+=7,BZd &|,s{?z2 x: 0.1, 5 OPJgIU% "fiber length(m)", @x F^TAd y: 0, 10 T5{T[YdX< "opticalpowers (W)", @y CveWl$T12 frame 2E$i_jc hx )_pt*xo hy =dn1} |M _%QM. f: (set_L(x);P_out(signal_fw)), !改变光纤长度对信号光输出功率的影响 zg0%>iqO step = 20, 77_g}N color = blue, T+BIy|O width = 3, )v-Cj_W5]" "signal output" j/`Up [#zE.
TW ;f: (set_L(x);P_out(pump)), !改变光纤长度对泵浦信号输出功率的影响 [,\i[[< step = 20, color = red, width = 3,"residual pump" 5\+EHW!o bQ=s8' ! set_L(L_f) {restore the original fiber length } ~"5C${~{ ;:^ Lv ^OjvL6A/p ; ------------- .='3bQ(UZ4 diagram 4: !输出图表4 >~>{;Wq(p+ 7n<#y;wo "TransverseProfiles" As p8qHS E.4n}s I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) IKtiR8 ${CYDD"mdy x: 0, 1.4 * r_co /um ){jqfkL "radialposition (µm)", @x B{N=0 cSi y: 0, 1.2 * I_max *cm^2 wC(XRqlE "intensity (W/ cm²)", @y SDJ;*s- y2: 0, 1.3 * N_Tm T!&jFy*W frame /W? z0tk` hx (,d/JnP hy O'@m4@L hQP6@KIe) f: N_dop(1, x * um,0), !掺杂浓度的径向分布 {4o\S yscale = 2, B>ge,
}{ color = gray, <?nB,U width = 3, \kfcv maxconnect = 1, rSzQUn< "N_dop (right scale)" CF,8f$:2 p9k4w%
~: f: I(pump, -1, x *um, 0) * cm^2, !泵浦光沿光纤径向的强度分布 65;|cmjv color = red, d"LoK,p# maxconnect = 1, !限制图形区域高度,修正为100%的高度 n=;';(wR[ width = 3, Ny]'RS- "pump" 5>N6VeM 0I(uddG3 f: I(signal_fw, -1,x * um, 0) * cm^2, !信号光沿光纤径向的强度分布 3"f)*w7d color = blue, rL.<Z@- maxconnect = 1, p6B .s_G4 width = 3, 3j]UEA^ "signal" :,urb* &S9f#Ui $^!a`Xr ; ------------- #>MO] diagram 5: !输出图表5 =I+l=;05Rd l7!U),x%/U "TransitionCross-sections" ',L{CQA?c :5$xh
I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) MT;SRAmUr z"G`o"4
V x: 1450, 2050 lNq:JVJ#\r "wavelength(nm)", @x i# CaKS y: 0, 0.6 \.K\YAM< "cross-sections(1e-24 m²)", @y iMP*]K-O frame L$oia)%t- hx ~uP
r]# hy D{Hh#x8Y ?ZSXoy-kr f: s12_Tm(x * nm) /1e-24, !Tm3+吸收截面与波长的关系 Eqz4{\
color = red, P-/XYZ]` width = 3, ckH$E%j "absorption" +Q@/F~1@6@ f: s21_Tm(x * nm) /1e-24, !Tm3+发射截面与波长的关系 Z/XM`Cy color = blue, |@T5$Xg]5 width = 3, [[";1l "emission" GI 0x>Z+ ^8o_Iz)r,
|
|