| 小火龙果 |
2020-05-28 16:28 |
RP Fiber Power仿真设计掺铥光纤激光器代码详解
(* l`M5'r]l Demo for program"RP Fiber Power": thulium-doped fiber laser, #EQx pumped at 790 nm. Across-relaxation process allows for efficient UU;-q_H6 population of theupper laser level. iQm.]A *) !(* *)注释语句 =N@)CB7a Vr/` \441 diagram shown: 1,2,3,4,5 !指定输出图表 sx-Hw4.a" ; 1: "Powersvs. Position" !分号是注释;光纤长度对功率的影响 A}#]g>L ; 2:"Variation of the Pump Power" !泵浦光功率变化对信号输出功率的影响 )S wG+k, ; 3:"Variation of the Fiber Length"!信号输出功率vs 光纤长度的变化,仿真最佳光纤长度 J^g,jBk ; 4:"Transverse Profiles" !横向分布,横坐标为半径位置 z7@(uIl=X ; 5:"Transition Cross-sections" !不同波长的跃迁横截面,横坐标波长,纵坐标为横截面 kuTq8p2E vU8FHVytV include"Units.inc" !读取“Units.inc”文件中内容 6L:trLuQ 7{Ki;1B[w include"Tm-silicate.inc" !读取光谱数据 V$-~%7@>;9 ].k+Nzf_ ; Basic fiberparameters: !定义基本光纤参数 /XW&q)z-Hl L_f := 4 { fiberlength } !光纤长度 *b6I%MZn No_z_steps := 50 {no steps along the fiber } !光纤步长,大括号{ }是注释,相当于备注 ^ =/?<C4 r_co := 6 um { coreradius } !纤芯半径 {#w A!>. N_Tm := 100e24 { Tmdoping concentration } !纤芯Tm离子掺杂浓度 Re kb?|{z
2 <6`TA*m ; Parameters of thechannels: !定义光信道 |Uy e>%*}4 l_p := 790 nm {pump wavelength } !泵浦光波长790nm t4jd
KYA dir_p := forward {pump direction (forward or backward) } !前向泵浦 y;{^Ln4{ P_pump_in := 5 {input pump power } !输入泵浦功率5W U=&^H!LVY w_p := 50 um {radius of pump cladding } !包层泵浦相应的半径 50um =$)4: I_p(r) := (r <=w_p) { pump intensity profile } !泵浦光强度分布 `\ W loss_p := 0 {parasitic losses of pump wave } !泵浦光寄生损耗为0 !sfXq"F nL":0!DTRD l_s := 1940 nm {signal wavelength } !信号光波长1940nm L=
:d!UF w_s := 7 um !信号光的半径 [w+h-q I_s(r) := exp(-2 *(r / w_s)^2) !信号光的高斯强度分布 m{bZRkt loss_s := 0 !信号光寄生损耗为0 I+Ncmg )> ?u_gXz;A R_oc := 0.70 {output coupler reflectivity (right side) } !输出耦合反射率 /i-xX* bVa+kYE ; Function for defining themodel: !定义模型函数,一定要有calc命令,否则函数只会被定义,但不会被执行 BrlzN='j} calc M1/M}~ begin L(WL,xnBy global allow all; !声明全局变量 E(QZ!'%K+m set_fiber(L_f, No_z_steps, ''); !光纤参数 @)W(q5)}9" add_ring(r_co, N_Tm); =9qGEkd3 def_ionsystem(); !光谱数据函数 M#\ < pump := addinputchannel(P_pump_in, l_p,'I_p', loss_p, dir_p); !泵浦光信道 yqC Q24 signal_fw := addinputchannel(0, l_s, 'I_s',loss_s, forward); !前向信号光信道 c-4m8Kg?L signal_bw := addinputchannel(0, l_s, 'I_s',loss_s, backward); !后向信号光信道 Snc;p set_R(signal_fw, 1, R_oc); !设置反射率函数 |
((1V^ finish_fiber(); '%zN end; ]>R`;"( aN^]bs?R ; Display someoutputs in the Output window (on the right side): !在Output aera区域显示输出 *#&k+{a^2 show "Outputpowers:" !输出字符串Output powers: H&w:`JYDL3 show"pump: ", P_out(pump):d3:"W" !输出字符串pump:和计算值(格式为3个有效数字,单位W) ID67?:%r show"signal: ",P_out(signal_fw):d3:"W" !输出字符串signal:和计算值(格式为3个有效数字,单位W) S=0"f}Jo. ..t,LU@| nS_Ta ; ------------- _BZ1Vnv diagram 1: !输出图表1 N$\ bg|v !dU9sB2 "Powers vs.Position" !图表名称 h>}ax\h \#4m@ x: 0, L_f !命令x: 定义x坐标范围 Tub1Sv>J "position infiber (m)", @x !x轴标签;@x 指示这些字符串沿坐标轴放置 V]I:2k5 y: 0, 15 !命令y: 定义y坐标范围 o&(wg(Rv y2: 0, 100 !命令y2: 定义第二个y坐标范围 :J^qj AV frame !frame改变坐标系的设置 L'zE<3O'3 legpos 600, 500 !图行在图表窗口中的位置(相对于左上角而言) &49u5&TiP hx !平行于x方向网格 3lo;^KX ! hy !平行于y方向网格 yJ!OsD )v[XmJ>H~o f: P(pump, x), !命令f: 定义函数图;P(pump, x)函数是计算x位置处的泵浦光功率 `I5O4|K) color = red, !图形颜色 (GCG/8s width = 3, !width线条宽度 2t+D8 d|c< "pump" !相应的文本字符串标签 ,i?) f: P(signal_fw, x), !P(signal_fw ,x) 函数是计算x位置处的前向信号光功率 \7pipde color = blue, s}6+8 fE" width = 3, T4mv%zzS "fw signal" >^a$ f: P(signal_bw, x), !P(signal_bw ,x) 函数是计算x位置处的后向信号光功率 DH
6q7"@ color = blue, y|$R`P style = fdashed, rwiw
Rh width = 3, RFw(]o,9cR "bw signal" ~12_D'8D[ MkwU<ae AB f: 100 * n(x, 2), !n(x ,2) 函数是计算x位置处激活粒子数在能级2上的占比 qAoAUDm yscale = 2, !第二个y轴的缩放比例 PU W[e% color = magenta, {Fbg]'FQ width = 3, geksjVwPH style = fdashed, 93j{.0]X "n2 (%, right scale)" 8{dEpV* 6?N4l ]l f: 100 * n(x, 3), !n(x ,3) 函数是计算x位置处激活粒子数在能级3上的占比 v?L yscale = 2, KU-'+k2s;p color = red, lsk_P&M width = 3, iOX Z]Xj5 style = fdashed, 4'' ,6KJ@ "n3 (%, right scale)" e}c&LDgU B`fH^N o\Uu?.-< ; ------------- cFK @3a diagram 2: !输出图表2 YutQ ]zYA. H$!+A "Variation ofthe Pump Power" CE uWw:) .}q]`<]ze x: 0, 10 &)n_]R#) "pump inputpower (W)", @x 7h%4] y: 0, 10 K UKACUL y2: 0, 100 )0^># k frame XVt/qb%)r hx O gmSQ hy ,M QVE legpos 150, 150 4WC9US-k r`jWp\z f: (set_P_in(pump, x);P_out(signal_fw)), !set_P_in(pump,x)改变泵浦信道功率;P_out(signal_fw)输出前向信号光 !;S"&mcPDJ step = 5, 5Fmav5 color = blue, jfD1 width = 3, ]dSK
wxk "signal output power (W, leftscale)", !相应的文本字符串标签 "xe=N finish set_P_in(pump, P_pump_in) V|'1tB=;*1 F30
]
f: (set_P_in(pump,x); 100 * n_av(2)), !改变泵浦信号功率对能级2上激活粒子占比的影响 SHV4!xP-V yscale = 2, 8Hi!kc;f6> step = 5, 7\ypW $Ot color = magenta, *FK`&(B+} width = 3, 87V1#U ^ "population of level 2 (%, rightscale)", Pao%pA.< finish set_P_in(pump, P_pump_in) +f>c xA
& ze>X f: (set_P_in(pump,x); 100 * n_av(3)), !改变泵浦信号功率对能级3上激活粒子占比的影响 + H_MV=A^ yscale = 2, `S3>3 step = 5, e4`uVq5 color = red, i%-Ld
Ka}" width = 3, (gwj)?: "population of level 3 (%, rightscale)", s
=Umj'1k finish set_P_in(pump, P_pump_in) #]E(N~ ";x+1R.d @%hCAm ; ------------- JBC$Ku diagram 3: !输出图表3 4nqoZk^R &H||&Z[pk "Variation ofthe Fiber Length" !2tW$BP^ $g10vF3 x: 0.1, 5 L?5f+@0. "fiber length(m)", @x "Pz}@= y: 0, 10 UG;Y^?Ppe5 "opticalpowers (W)", @y $s\UL}Gc frame Nc)J18 hx 1[;;sSp hy ~Rpm-^ B=Ym x2A9] f: (set_L(x);P_out(signal_fw)), !改变光纤长度对信号光输出功率的影响 80pid[F step = 20, f )Z%pgB color = blue, nV*y`.+ width = 3, O(z}H}Fv "signal output" ?4 S+edX j(rL ;f: (set_L(x);P_out(pump)), !改变光纤长度对泵浦信号输出功率的影响 ]Mi.f3QlO6 step = 20, color = red, width = 3,"residual pump" yxt[=
C UPiW73Nu ! set_L(L_f) {restore the original fiber length } ({^9<Us Rp9fO?ZjHt V\]" }V)" ; ------------- lrWQOYf2 diagram 4: !输出图表4 "LhvzM-<8 (ljF{)Ml+= "TransverseProfiles" $wB^R(f@ 6w[}&pX"z I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) q.#[TI ^ px;/8c- x: 0, 1.4 * r_co /um w
Y "radialposition (µm)", @x ->^~KVh& y: 0, 1.2 * I_max *cm^2 9BEFr/. "intensity (W/ cm²)", @y E
Y<8B3y y2: 0, 1.3 * N_Tm ~EzaC?fQ frame FR[ B v hx `d]IX^; hy +|iYg/2 )E#2J$TD f: N_dop(1, x * um,0), !掺杂浓度的径向分布 :O<bA&:d yscale = 2, l_tw<`Ep color = gray, DQ#H,\^< width = 3, YevyN\,}V! maxconnect = 1, ~[WF_NU1y "N_dop (right scale)" <*!i$(gn v1JS~uDz f: I(pump, -1, x *um, 0) * cm^2, !泵浦光沿光纤径向的强度分布 |'O[7uT color = red, h%; e0Xz| maxconnect = 1, !限制图形区域高度,修正为100%的高度 <h).fX width = 3, "\W-f "pump" )4>2IQ h^9"i3H f: I(signal_fw, -1,x * um, 0) * cm^2, !信号光沿光纤径向的强度分布 ._w8J"E5 color = blue, 9>zcBG8f maxconnect = 1, 7;@ST`cC width = 3, g"s$}5{8: "signal" TGXa,A{ {GDmVWG0q Rlnbdb;!k ; ------------- `p
b5*h6r! diagram 5: !输出图表5 u]NZ`t%AP gWABY%!} "TransitionCross-sections" `\`> 0hlu 8$s9(n-_Y I_max :=maxr(I(pump, -1, 0, 0), I(signal_fw, -1, 0, 0)) *-W#G}O0 @vL20O. x: 1450, 2050 7]xm2CHx5 "wavelength(nm)", @x HoV^Y6 y: 0, 0.6 vb 1@yQ "cross-sections(1e-24 m²)", @y Z/x*Y#0@n frame fDE%R={!n5 hx KrVcwAcq|1 hy ih,%i4<}6m ~R$~&x | |