| 小火龙果 |
2020-05-28 16:28 |
RP Fiber Power仿真设计掺铥光纤激光器代码详解
(* z7CYYU? Demo for program"RP Fiber Power": thulium-doped fiber laser, ] !H<vR$8 pumped at 790 nm. Across-relaxation process allows for efficient aH6pys!O population of theupper laser level. fVkl-<?x *) !(* *)注释语句 pxN'E;P- gp}S 1 diagram shown: 1,2,3,4,5 !指定输出图表 OJ 2M_q)e ; 1: "Powersvs. Position" !分号是注释;光纤长度对功率的影响 WRgz]=W3w ; 2:"Variation of the Pump Power" !泵浦光功率变化对信号输出功率的影响 }N[sydL ; 3:"Variation of the Fiber Length"!信号输出功率vs 光纤长度的变化,仿真最佳光纤长度 ,ToED ; 4:"Transverse Profiles" !横向分布,横坐标为半径位置 sqy5rug ; 5:"Transition Cross-sections" !不同波长的跃迁横截面,横坐标波长,纵坐标为横截面 y`N1I 5mV'k"Om#" include"Units.inc" !读取“Units.inc”文件中内容 6QV/8IX O~D}&M@/R include"Tm-silicate.inc" !读取光谱数据 ]
=D+a& P)H%dJ^l ; Basic fiberparameters: !定义基本光纤参数 %H@fVWe2wT L_f := 4 { fiberlength } !光纤长度 :sn}D~ No_z_steps := 50 {no steps along the fiber } !光纤步长,大括号{ }是注释,相当于备注 >3ODqRu r_co := 6 um { coreradius } !纤芯半径 $&4Z w6"= N_Tm := 100e24 { Tmdoping concentration } !纤芯Tm离子掺杂浓度 ^b%AwzHH} n"pADTaB ; Parameters of thechannels: !定义光信道 xj}N;FWo l_p := 790 nm {pump wavelength } !泵浦光波长790nm D Lu]d$G dir_p := forward {pump direction (forward or backward) } !前向泵浦 y0Tb/&xN P_pump_in := 5 {input pump power } !输入泵浦功率5W K+7xjFoDIR w_p := 50 um {radius of pump cladding } !包层泵浦相应的半径 50um { sZrI5 I_p(r) := (r <=w_p) { pump intensity profile } !泵浦光强度分布 \h
yTcFb loss_p := 0 {parasitic losses of pump wave } !泵浦光寄生损耗为0 &8 (2U- j_{gk"2:d` l_s := 1940 nm {signal wavelength } !信号光波长1940nm Vf:t!'WD?2 w_s := 7 um !信号光的半径 OS!47Z /q I_s(r) := exp(-2 *(r / w_s)^2) !信号光的高斯强度分布 iCHZ{<k loss_s := 0 !信号光寄生损耗为0 l"-D@]" X:dj5v R_oc := 0.70 {output coupler reflectivity (right side) } !输出耦合反射率 (d ( whlF cx$Oh`-Car ; Function for defining themodel: !定义模型函数,一定要有calc命令,否则函数只会被定义,但不会被执行 _x lgsa calc LR^b?.#> begin }vL[N~5\ global allow all; !声明全局变量 BG|Kw)z*KM set_fiber(L_f, No_z_steps, ''); !光纤参数 [fb -G5x add_ring(r_co, N_Tm); :!|xg!|y def_ionsystem(); !光谱数据函数 "?Y0Ng[ pump := addinputchannel(P_pump_in, l_p,'I_p', loss_p, dir_p); !泵浦光信道 )~J/,\ signal_fw := addinputchannel(0, l_s, 'I_s',loss_s, forward); !前向信号光信道 >1r>cZn signal_bw := addinputchannel(0, l_s, 'I_s',loss_s, backward); !后向信号光信道 Fb_~{q set_R(signal_fw, 1, R_oc); !设置反射率函数 {c$W-t):U| finish_fiber(); KL xg end; U9@q"v- JRG7<s$ ; Display someoutputs in the Output window (on the right side): !在Output aera区域显示输出 wM|-u/9+ show "Outputpowers:" !输出字符串Output powers: SsaF><{5R show"pump: ", P_out(pump):d3:"W" !输出字符串pump:和计算值(格式为3个有效数字,单位W) E{FN sa show"signal: ",P_out(signal_fw):d3:"W" !输出字符串signal:和计算值(格式为3个有效数字,单位W) @}[)uH w0.#/6 ?6[>HX; ; ------------- bkY7]'.bz& diagram 1: !输出图表1 >s{[d$ <uAqb Wu "Powers vs.Position" !图表名称 jHFdDw|N` ^RY_j>i x: 0, L_f !命令x: 定义x坐标范围 h\yYg' CC "position infiber (m)", @x !x轴标签;@x 指示这些字符串沿坐标轴放置 yXkgGY5 y: 0, 15 !命令y: 定义y坐标范围 kt@+UK." y2: 0, 100 !命令y2: 定义第二个y坐标范围 aB$Y5 frame !frame改变坐标系的设置 'al-C;Z legpos 600, 500 !图行在图表窗口中的位置(相对于左上角而言) %xY'v$
% hx !平行于x方向网格 Obw uyhjQ hy !平行于y方向网格 *d%m.:)N "BTA" f: P(pump, x), !命令f: 定义函数图;P(pump, x)函数是计算x位置处的泵浦光功率 t!K|3>w color = red, !图形颜色 [6c{t width = 3, !width线条宽度 W}EO]A%f.\ "pump" !相应的文本字符串标签 NSx DCTw f: P(signal_fw, x), !P(signal_fw ,x) 函数是计算x位置处的前向信号光功率 kQj8;LU color = blue, J${wU@_% width = 3, [H"Ods~_` "fw signal" ;z&p(e f: P(signal_bw, x), !P(signal_bw ,x) 函数是计算x位置处的后向信号光功率 Y#Hf\8r,d color = blue, F[J;u/Z style = fdashed, mxXQBmW width = 3, f'}23\> "bw signal" (5atU |8r G;tIhq[$Vb f: 100 * n(x, 2), !n(x ,2) 函数是计算x位置处激活粒子数在能级2上的占比 DB?[h<^m yscale = 2, !第二个y轴的缩放比例 n9)/(=)>* color = magenta, WJ
mj|$D width = 3, j|
257D style = fdashed, DTJ~. "n2 (%, right scale)" 2Qn%p[#n Haturg f: 100 * n(x, 3), !n(x ,3) 函数是计算x位置处激活粒子数在能级3上的占比 Ble <n6 yscale = 2, ^^v\ T color = red, 4u"O/rt
width = 3, yy%J{; style = fdashed, (0Y6tcV]R "n3 (%, right scale)" i8dv|oa Q~`]0R159e }B"kJNxV ; -------------
^d!-IL_ diagram 2: !输出图表2 0C3CqGP }J:~}?^%n "Variation ofthe Pump Power" W~gFY#w m!v`nw ] x: 0, 10 q7X/"Dfx "pump inputpower (W)", @x {y :/9 y: 0, 10 Yj;$hV8j( y2: 0, 100 u0N1+-6kr+ frame WM9QC59 hx PF4Cs3m/ hy ;o#dmG legpos 150, 150 uTOL Rg'1 F f: (set_P_in(pump, x);P_out(signal_fw)), !set_P_in(pump,x)改变泵浦信道功率;P_out(signal_fw)输出前向信号光 *-gS u step = 5, U+nwLxe' color = blue, 4,FuQ} width = 3, qA&N6` "signal output power (W, leftscale)", !相应的文本字符串标签 ]W]Vkkg] finish set_P_in(pump, P_pump_in) fU$zG"a_ N=-hXgX^ f: (set_P_in(pump,x); 100 * n_av(2)), !改变泵浦信号功率对能级2上激活粒子占比的影响 27gK
Y
Zf; yscale = 2, $T~|@XH step = 5, ~,dj)x
3M color = magenta, sexnO^s width = 3, ;Q-(tGd "population of level 2 (%, rightscale)", :Bda]]Y= finish set_P_in(pump, P_pump_in) ,sXa{U m
&s0Ub f: (set_P_in(pump,x); 100 * n_av(3)), !改变泵浦信号功率对能级3上激活粒子占比的影响 :MpIx& yscale = 2, ~^:/t<N step = 5, G{YLyl/9 color = red, BpRQG]L width = 3, T|r@:t[ "population of level 3 (%, rightscale)", \O`B@!da~ finish set_P_in(pump, P_pump_in) ll73}v _! \X>rfz hyFq>XFo ; ------------- F5:4 B]ZF diagram 3: !输出图表3 ZA+$ZU^ Q:lSKf "Variation ofthe Fiber Length" IZniRd; vY6eg IO x: 0.1, 5 pn>zuHe "fiber length(m)", @x 1z0&+ C3z y: 0, 10 CQQX7Y\ "opticalpowers (W)", @y U*1rA/"n frame qFt%{~a
S hx NZmmO )p4 hy % ;09J H+\rCefba f: (set_L(x);P_out(signal_fw)), !改变光纤长度对信号光输出功率的影响 @\b*a]CV step = 20, hekAics6S color = blue, _~fO8_vr width = 3, >J|I "signal output" s>E4.0[I% t&eY+3y,T ;f: (set_L(x);P_out(pump)), !改变光纤长度对泵浦信号输出功率的影响 '&'?
S step = 20, color = red, width = 3,"residual pump" *!Vic#D% A:0 ! set_L(L_f) {restore the original fiber length } iMYvC w/t6 e*:[#LJ]C e#)}.
; ------------- &>p2N diagram 4: !输出图表4 0A/GWSmF j"yL6Q9P "TransverseProfiles" YLJH?=2@ n +`( R]Q I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) _T<ney}Y< +TfMj1Zx x: 0, 1.4 * r_co /um z@{|Y;s "radialposition (µm)", @x g=:%j5?.e y: 0, 1.2 * I_max *cm^2 cg}46)^<QH "intensity (W/ cm²)", @y ]nEN3RJ y2: 0, 1.3 * N_Tm !s9<%bp3 frame [}+0NGgR hx ;XZ5r|V} hy Zj[Bm\8 w(<;
$9 f: N_dop(1, x * um,0), !掺杂浓度的径向分布 :DR
G=-M yscale = 2, ?so3Kj6H color = gray, /Vg
R[ width = 3, sbQmPV maxconnect = 1, ,iB)8Km@U "N_dop (right scale)" A|c :&i tt6ElP|D f: I(pump, -1, x *um, 0) * cm^2, !泵浦光沿光纤径向的强度分布 s"=e(ob color = red, [yf2_{*0T maxconnect = 1, !限制图形区域高度,修正为100%的高度 _|g(BK2} width = 3, AuX& "pump" HEhdV5B
I^qk` 5w f: I(signal_fw, -1,x * um, 0) * cm^2, !信号光沿光纤径向的强度分布 L/c$p`- color = blue, \# lh b maxconnect = 1, mdoy1a width = 3, A!ba_14 "signal" =uYSZR Q{0-pHr} psta&u\ q ; ------------- {Ejv8UdA9 diagram 5: !输出图表5 LrsP4G fu?>O/Gn/ "TransitionCross-sections" ^>72<1U% r%&hiobMYs I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) Qo0okir !-|& x: 1450, 2050 (t&P.N/ "wavelength(nm)", @x Z>7Oez> y: 0, 0.6 fFqK.^Tn "cross-sections(1e-24 m²)", @y k&n7_[]n frame FwBktuS hx U-Fr[1I6p hy s^AQJ{X 13}=;4O f: s12_Tm(x * nm) /1e-24, !Tm3+吸收截面与波长的关系 SdYES5aES color = red, \Nb6E&+ width = 3, Rl=NVo "absorption" t8U)za f: s21_Tm(x * nm) /1e-24, !Tm3+发射截面与波长的关系 L&Qdb xn color = blue, u)t1t69T\g width = 3, YEXJh!X "emission" Yu9Ccj` F<Z"W}I+6
|
|