小火龙果 |
2020-05-28 16:28 |
RP Fiber Power仿真设计掺铥光纤激光器代码详解
(* $RV'DQO Demo for program"RP Fiber Power": thulium-doped fiber laser, `)eqTeW pumped at 790 nm. Across-relaxation process allows for efficient ^VB_>|UN4 population of theupper laser level. RIxGwMi% *) !(* *)注释语句
jQ Of+ZE imf_@_ diagram shown: 1,2,3,4,5 !指定输出图表 uY=}w"Db ; 1: "Powersvs. Position" !分号是注释;光纤长度对功率的影响 "@E(}z'sM ; 2:"Variation of the Pump Power" !泵浦光功率变化对信号输出功率的影响 ?gOZY\[ma ; 3:"Variation of the Fiber Length"!信号输出功率vs 光纤长度的变化,仿真最佳光纤长度 1)wzSEV@ ; 4:"Transverse Profiles" !横向分布,横坐标为半径位置 :. a}pgh ; 5:"Transition Cross-sections" !不同波长的跃迁横截面,横坐标波长,纵坐标为横截面 c-^\YSDMN _zj}i1!E" include"Units.inc" !读取“Units.inc”文件中内容 HzF]hm, %y;Cgo[ include"Tm-silicate.inc" !读取光谱数据 1PJ8O|Zt8 fdTyY ; ; Basic fiberparameters: !定义基本光纤参数 ySwvjP7f L_f := 4 { fiberlength } !光纤长度 *a4nd_! No_z_steps := 50 {no steps along the fiber } !光纤步长,大括号{ }是注释,相当于备注 9:l>FoXS r_co := 6 um { coreradius } !纤芯半径 /S+gh;2OC N_Tm := 100e24 { Tmdoping concentration } !纤芯Tm离子掺杂浓度 Y:XxTa* $ OMGo`z ; Parameters of thechannels: !定义光信道 q#N8IUN}4 l_p := 790 nm {pump wavelength } !泵浦光波长790nm NbnuQPb' dir_p := forward {pump direction (forward or backward) } !前向泵浦 "J%/xj P_pump_in := 5 {input pump power } !输入泵浦功率5W 3pKr
{U92 w_p := 50 um {radius of pump cladding } !包层泵浦相应的半径 50um pV^hZ. I_p(r) := (r <=w_p) { pump intensity profile } !泵浦光强度分布 S_B;m1 loss_p := 0 {parasitic losses of pump wave } !泵浦光寄生损耗为0 HLcK d`$/ {!hA^[}| l_s := 1940 nm {signal wavelength } !信号光波长1940nm cC6W1K! w_s := 7 um !信号光的半径 VZ8HnNAbX I_s(r) := exp(-2 *(r / w_s)^2) !信号光的高斯强度分布 t`X-jr)g loss_s := 0 !信号光寄生损耗为0 Pz1[ b$% 0@ 9em~ R_oc := 0.70 {output coupler reflectivity (right side) } !输出耦合反射率 T6ajWUw )0JXUC e ; Function for defining themodel: !定义模型函数,一定要有calc命令,否则函数只会被定义,但不会被执行 'WG%O7s. calc @OlV6M;qJ begin =@>[ global allow all; !声明全局变量 V{[vIt* set_fiber(L_f, No_z_steps, ''); !光纤参数 lT3, G#( add_ring(r_co, N_Tm); L{\au5-4 def_ionsystem(); !光谱数据函数 6A]Ia4PL pump := addinputchannel(P_pump_in, l_p,'I_p', loss_p, dir_p); !泵浦光信道 QX'/PO signal_fw := addinputchannel(0, l_s, 'I_s',loss_s, forward); !前向信号光信道 Q1Sf7) signal_bw := addinputchannel(0, l_s, 'I_s',loss_s, backward); !后向信号光信道 ?B2 T'}~ set_R(signal_fw, 1, R_oc); !设置反射率函数 %Ln7{w finish_fiber(); iS^IqS end; 5h^U ]Y# FU|c[u|z ; Display someoutputs in the Output window (on the right side): !在Output aera区域显示输出 FXPw 5 show "Outputpowers:" !输出字符串Output powers: Ncu\;K\N show"pump: ", P_out(pump):d3:"W" !输出字符串pump:和计算值(格式为3个有效数字,单位W) ~E=.*: 5( show"signal: ",P_out(signal_fw):d3:"W" !输出字符串signal:和计算值(格式为3个有效数字,单位W) t YmR<^ 1wl8
.h2K$(/ ; ------------- q8;WHfGf diagram 1: !输出图表1 HUtuU X }F1|&
A "Powers vs.Position" !图表名称 AopCxaJ` *1}'ZEaJ x: 0, L_f !命令x: 定义x坐标范围 Fa$ pr` "position infiber (m)", @x !x轴标签;@x 指示这些字符串沿坐标轴放置 )}
y1 y: 0, 15 !命令y: 定义y坐标范围 H1'`*
}V y2: 0, 100 !命令y2: 定义第二个y坐标范围 dD3I. ?DY frame !frame改变坐标系的设置 >uuP@j legpos 600, 500 !图行在图表窗口中的位置(相对于左上角而言) RbJ,J)C> hx !平行于x方向网格 9i8D_[ hy !平行于y方向网格 xGq,hCQHV aU3
m{pE f: P(pump, x), !命令f: 定义函数图;P(pump, x)函数是计算x位置处的泵浦光功率 \5$N>
2kO color = red, !图形颜色 6<+R55 width = 3, !width线条宽度 {4g1Wr5= "pump" !相应的文本字符串标签 zF'{{7o f: P(signal_fw, x), !P(signal_fw ,x) 函数是计算x位置处的前向信号光功率 dQR2!yHEq color = blue, ;K[`o/#4" width = 3, z./M^7v? "fw signal" /I3#WUc;![ f: P(signal_bw, x), !P(signal_bw ,x) 函数是计算x位置处的后向信号光功率 SxYX`NQ color = blue, 5rqjqfFa style = fdashed, Yz0ruhEMk width = 3, )FM/^ "bw signal" }*m:zD@8$ hSc$Sa8 f: 100 * n(x, 2), !n(x ,2) 函数是计算x位置处激活粒子数在能级2上的占比 lM C4j yscale = 2, !第二个y轴的缩放比例 twqjaFA> color = magenta, 1%|+yu1 width = 3, !ec\8Tj style = fdashed, wxARD3% "n2 (%, right scale)" l
tr=_ YBN.
waL f: 100 * n(x, 3), !n(x ,3) 函数是计算x位置处激活粒子数在能级3上的占比 %b2.JGBqJ yscale = 2, >De\2gbJ color = red, t$8f:*6(* width = 3, e@s+]a8D-k style = fdashed, I.j`h2 "n3 (%, right scale)" gM20n^ C_?L$3 U0 EN()dCQHr ; ------------- '8~7Ru\KyX diagram 2: !输出图表2 Y'-BKZv! !}^c.<38Q "Variation ofthe Pump Power" 6#On .Q
GWgjbp x: 0, 10 b&A+`d "pump inputpower (W)", @x AZxx%6 y: 0, 10 PIn' tV y2: 0, 100 |Sy|E frame A?q[C4-BO, hx g.X?wyg5 hy V^=z\wBZ legpos 150, 150 m1=3@> +/7UM x1 f: (set_P_in(pump, x);P_out(signal_fw)), !set_P_in(pump,x)改变泵浦信道功率;P_out(signal_fw)输出前向信号光 dfGdY"& step = 5, f3s0.G#l color = blue, Rk56H width = 3, e~c;wP~cO "signal output power (W, leftscale)", !相应的文本字符串标签 1agyT finish set_P_in(pump, P_pump_in) bV&/)eqv Q3\j4;jI( f: (set_P_in(pump,x); 100 * n_av(2)), !改变泵浦信号功率对能级2上激活粒子占比的影响 ^<$dTr' yscale = 2, ~" B0P>7 step = 5, RyC]4QyC color = magenta, #Oz<<G< width = 3, ;_M .(8L "population of level 2 (%, rightscale)", 3k5OYUk finish set_P_in(pump, P_pump_in) U;:>vi3p tS8*l2Y`
f: (set_P_in(pump,x); 100 * n_av(3)), !改变泵浦信号功率对能级3上激活粒子占比的影响 /}r%DND' yscale = 2, BKIAc6 step = 5, RS#)uC5/% color = red, gAC} width = 3, (tP>z+ "population of level 3 (%, rightscale)", /K:M
,q finish set_P_in(pump, P_pump_in) ]<A|GY0q1 6 DD^h:*> lz
EF^6I ; ------------- K0yTHX?(. diagram 3: !输出图表3 `#A&v -7*,}xV "Variation ofthe Fiber Length" +,9I3Dq BbA>1#i5] x: 0.1, 5 #QQ\xj "fiber length(m)", @x sAfSI<L_ y: 0, 10 MQ5#6vJ "opticalpowers (W)", @y _\>? .gg$ frame Hu|NS {Ke- hx cPi 3UjY~ hy :Sk0?WU kdmannM f: (set_L(x);P_out(signal_fw)), !改变光纤长度对信号光输出功率的影响 4Z"DF)+} step = 20, >,Zjlkh3 color = blue, N?U;G*G width = 3, q-eC=!#} "signal output" /$'tO3 I1BVqIt1i ;f: (set_L(x);P_out(pump)), !改变光纤长度对泵浦信号输出功率的影响 =\AI92 step = 20, color = red, width = 3,"residual pump" G$}\~dD }H!c9Y ! set_L(L_f) {restore the original fiber length } XU5/7
.
8n?qm96 Dr$k6kZ}'U ; ------------- _N$3c<dY' diagram 4: !输出图表4 ~dC)EG {*ATY+ "TransverseProfiles" SN(:\|f
2 }|%dN*', I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) Yw"o_ HhhN8t x: 0, 1.4 * r_co /um '}e_8FS "radialposition (µm)", @x eZIqyw y: 0, 1.2 * I_max *cm^2 6C4c.+S "intensity (W/ cm²)", @y b%L8mX y2: 0, 1.3 * N_Tm O;9u1,%w frame H ifKa/}P8 hx 57* z0< hy B BbGq8p H)}>&Z4 f: N_dop(1, x * um,0), !掺杂浓度的径向分布 "6 |j
0?Q yscale = 2, E?z3 D*U color = gray, t*m04* } width = 3, *9y)B|P^ maxconnect = 1, Urj8v2k "N_dop (right scale)" jB!p,fqcb q.U` mtS f: I(pump, -1, x *um, 0) * cm^2, !泵浦光沿光纤径向的强度分布 Z,)4(#b = color = red, u\ro9l maxconnect = 1, !限制图形区域高度,修正为100%的高度 So{/V% width = 3, i#Io; "pump" #3>o^cN~8k P}29wr IZ f: I(signal_fw, -1,x * um, 0) * cm^2, !信号光沿光纤径向的强度分布 K#_&}C^-jY color = blue, <qT[ maxconnect = 1, 1PpZ*YK3z width = 3, de1cl< "signal" zsFzF`[k u,AP$+Qk a\>+!Vq ; ------------- X]8(_[Y
diagram 5: !输出图表5 yhv(KI 1K?RA*aj "TransitionCross-sections" 5.5<.") H )hO/1m I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) v/*}M&vo (-Cxv`7 x: 1450, 2050 a?S5 = "wavelength(nm)", @x Y[)b".K y: 0, 0.6 fqrQ1{%UH "cross-sections(1e-24 m²)", @y ?!^ow5"8 frame 0b6jGa hx TwlX'iI_; hy J!Er%QUR uzg(C#sp f: s12_Tm(x * nm) /1e-24, !Tm3+吸收截面与波长的关系 Su?e\7aj color = red, p[R4!if2 width = 3, 7f|8SB "absorption" fn.KZ f: s21_Tm(x * nm) /1e-24, !Tm3+发射截面与波长的关系 2 j.6 color = blue, %]7'2 width = 3, X-LCIT|1 "emission" >*s_)IH2 xfoQx_]$Im
|
|