——使用说明
SeeFiberLaser是国防科技大学和中国科学院软件研究所合作开发的一款针对光纤激光系统的图像化数值仿真软件。软件具有完全的自主知识产权。该软件旨在计算不同时域特性(连续、脉冲)光纤激光的产生、放大和传输,同时针对不同情况考虑放大自发辐射、受激拉曼散射、受激布里渊散射、自相位调制、四波混频等效应的影响,为光纤激光理论学习、工程设计以及科学研究提供帮助。
目前发布的软件版本为教学测试版,该版本只包括连续掺镱光纤激光器中的放大自发辐射效应和受激拉曼散射效应,其他功能将在后续版本中逐步开放。
SeeFiberLaser软件的版权属于国防科技大学和中国科学院软件研究所,软件所有方保留对该软件盗版以及其他侵权行为追究法律责任的权利。其他对软件开发有帮助的单位和个人会在软件中注明,同时鼓励广大用户对软件存在的问题提供反馈。
访问软件的官方网站http://www.seelight.net/html/SFLaser/index.html后,点击页面上的 “SeeFiberLaser” 图标,即可打开下载页面。在网站上完成注册后即可下载安装包。该版本软件为绿色软件,下载后解压,直接点击可执行文件“SFLaser.exe”便可运行软件。为了使用方便,建议将快捷方式放到桌面或者锁定在任务栏。
软件的使用方法可以在本帮助文档中获得,同时在SeeFiberLaser网站可以获得更多的学习资料,用户也可以通过发送邮件至seefiberlaser@163.com获得帮助。
本软件包含多个光纤激光器模型,根据用户输入的参数和考虑的因素自动选择所使用的物理模型,目前教学测试版开放的是基于速率方程的掺镱光纤激光器模型,包含了放大自发辐射效应、拉曼散射效应以及热效应,可以用于计算掺镱光纤振荡器和放大器[1-3],具体包括弯曲损耗、单(多)波长泵浦、单(多)波长放大、高功率系统中拉曼效应等多种情况。
为了模拟光纤激光器中各个波长的演化过程,我们将掺镱光纤的吸收发射谱等间隔地分割成众多的分离谱,把每一个分离谱内的激光看作单一波长,并对每个波长建立速率方程,这样可以考虑各个波长对总增益的影响以及波长之间的竞争,如果计算中包含拉曼效应,则可以分别计算各个波长的拉曼增益。
计算中无论是振荡器还是放大器,在模型两端都可以设置泵浦光和反馈,该结果作为模型的边界条件输入。
本模型只考虑光谱各成分的功率演化,不包含相位,因此属于非相干模型。
本模型是标量模型,不考虑偏振效应的影响。
本版本软件采用有限差分算法对模型进行数值求解,首先把光纤轴向坐标和光谱网格化,并对物理模型和边界条件进行离散,将模型转化为边值问题,从而利用我们软件的算法计算出各波长激光沿光纤分布的功率等结果。计算的速度与选取的光纤网格划分精度有关,选取的网格越精细,计算时间越长,通常光纤的计算步长设置为0.01m,当计算功率较大或者光纤吸收系数较大时,建议适当减小光纤的计算步长(例如0.005m),以便提高准确性。实际使用中可以通过比较步长减半的两个结果来判断计算精度是否符合要求。
我们的算法属于迭代算法,所以计算的精度还与收敛的容忍精度有关,软件中默认的容忍精度为10-4,实际使用中也可以通过比较容忍精度减半的两个结果来判断计算结果是否符合要求。
模型中每个波长的拉曼增益系数表示为
,即第i个波长给第n个波长的光信号提供的Raman增益(或损耗),具体表达式为[4]:
(2.1)
其中为非线性参量,n2为非线性折射率,对于石英光纤,在1微米波段约为2.6×10-20
m2/W;
为延迟拉曼响应对非线性极化强度的贡献比例,在硅基质光纤中一般取0.18;而
为延迟拉曼响应函数hR(t)的傅里叶变换,而拉曼响应函数hR(t)的近似解析表达式如下:
(2.2)
经推导,可得其傅里叶变换的解析形式如下:
(2.3)
在软件中通过设置、
、
就可确定计算中所用的拉曼增益系数,通常在石英光纤中这三个参数变化不大,因此可以直接使用软件中的默认值。
掺镱光纤的吸收发射截面是通过外部导入,软件有一个默认的吸收发射截面参数表,其数值会在掺镱光纤参数设置界面右上角以图形显示,如图2. 1所示。计算波长的精度是由输入的吸收发射截面数据精度决定的。该吸收发射截面参数表要求波长间隔相等,默认的参数表里波长间隔为0.2nm。用户可以将自己测量的结果导入进行计算。吸收发射截面参数表为Excel文件,第一列为波长(单位nm),第二列为吸收截面,第三列为发射截面(单位m2)。当用户设置的波长间隔小于导入参数列表的波长间隔时,软件将用与其波长最近的吸收发射截面系数替代。波长间隔同样会影响计算速度,波长间隔越小计算所需的时间越长,所以波长间隔应根据实际需求合理设置。
图2. 1 软件中使用的吸收发射界面数据
[2] H. Yu, X. Wang, R. Tao, P. Zhou, and J. Chen, "1.5 kW, near-diffraction-limited, high-efficiency, single-end-pumped all-fiber-integrated laser oscillator," Appl. Opt. 53 (34), 8055-8059 (2014).
[3] H. Yu, H. Zhang, H. Lv, X. Wang, J. Leng, H. Xiao, S. Guo, P. Zhou, X. Xu, and J. Chen, "3.15 kW direct diode-pumped near diffraction-limited all-fiber-integrated fiber laser," Appl. Opt. 54(14), 4556-4560 (2015).
[4] G. P. Agrawal, Nonlinear Fiber Optics 4th Edition (Academic, San Diego, 2007), P38-P39.
在完成了SeeFiberLaser(简称SFL)软件的安装后,进入软件安装目录,运行文件SFLaser.exe后可以看到软件的主窗体,如图 3.1所示。
图 3. 1SFL软件主界面示意图
通常SFL的主界面将包含以下部分:
l 标题栏:显示在窗体最上方且包括了最小化、最大化与关闭的区域是软件的标题栏。标题栏中的文字将显示目前所编辑的实验系统的文件名,后缀软件名称;
l
菜单栏:在标题栏的下方将显示菜单栏。在菜单栏中我们将可以完成一系列的菜单操作,具体请参见3.1节;
l
工具栏:在菜单栏的下方是一排工具栏。工具栏中包含各种快捷按钮,使得我们可以不用在菜单栏中进行逐级访问来寻找功能;
l
左侧组件栏:在窗体的左侧是一个树形的组件栏,目前由基础元件库与实验系统两个标签栏组成。基础元件库列出了软件中所有可用的元器件,实验系统则罗列出了“软件目录/project/实验系统”文件夹下的所有保存的实验系统工程文件。更加具体的介绍请见第四章节;
l
系统编辑区:窗体中间最大的网格部分,用来放置基础组件以搭建实验系统的区域;
l
属性显示区:当系统编辑区或者对应的器件被选中的时候,右侧的属性参数设置区可以显示或者调节一些系统的全局参数。具体介绍请参见3.3节。
本节将列出所有菜单项的功能简介。
菜单 |
菜单项 |
功能描述 |
文件 |
新建 |
清空系统编辑区并新建一个新的实验系统工程 |
|
打开 |
打开一个已经存在的实验系统工程文件(*.fblsr) |
|
保存 |
保存当前的实验系统工程到*.fblsr文件(覆盖当前已存在文件) |
|
另存为 |
保存当前的实验系统工程到*.fblsr文件(新建一个文件) |
|
退出 |
退出软件 |
编辑 |
复制 |
复制当前系统编辑区内被选中的器件 |
|
粘贴 |
将复制过的器件粘贴至系统编辑区内 |
|
删除 |
删除选中的器件 |
|
全选 |
选中当前系统编辑区内的所有器件 |
调试 |
执行 |
按照当前系统编辑区内的结构进行计算 |
视图 |
|
菜单下的选项和子菜单用于改变程序的皮肤显示效果 |
帮助 |
关于SeeFiberLaser |
显示SeeFiberLaser的相关信息 |
按钮 |
名称 |
功能描述 |
|
新建 |
清空系统编辑区并新建一个新的实验系统工程 |
|
打开 |
打开一个已经存在的实验系统工程文件(*.fblsr) |
|
保存 |
保存当前的实验系统工程到*.fblsr文件(覆盖当前已存在文件) |
|
复制 |
复制当前系统编辑区内被选中的器件 |
|
粘贴 |
将复制的器件粘贴至系统编辑区内 |
|
撤销 |
撤销前一个操作,相当于ctrl+z |
|
恢复 |
恢复前一个撤销,相当于ctrl+y |
|
删除 |
删除选中的器件 |
|
执行 |
按照当前系统编辑区内的结构进行计算 |
|
帮助 |
显示SeeFiberLaser帮助文件 |
|
左对齐 |
将选中的器件靠左对齐 |
|
左右居中 |
将选中的器件放置到区域横向中央 |
|
右对齐 |
将选中的器件靠右对齐 |
|
顶对齐 |
将选中的器件靠上对齐 |
|
上下居中 |
将选中的器件放置到区域纵向中央 |
|
底对齐 |
将选中的器件靠下对齐 |
系统计算的基本属性设置,属于全局参数,包括:信号光开始波长、信号光结束波长、信号光波长间隔、光纤计算步进值、收敛容忍精度,以及选择是否考虑计算拉曼增益和是否计算温度。
图3. 2 属性显示区示意图
当计算中选择考虑拉曼增益时,还需进一步设置拉曼增益系数的计算参数,软件默认的是石英光纤在1μm波段的参数。
当选择计算温度时,需要输入环境温度和系统的换热系数。
在本节中,我们将对SFL教学版中开放的组件模块进行介绍。如图 4. 1所示,内建模块的树形列表位于软件窗体的左侧,所有的器件将在其中显示。使用工具栏中的搜索栏可以方便地对所需要的器件进行搜索。
图 4. 1 树形组件栏示意图
本次的教学版软件总共开放了包括有源器件和无源器件在内的2大类共8种组件:连续泵浦源、连续种子源、双包层掺镱光纤、光纤端帽、双包层光纤光栅、前向泵浦信号合束器、后向泵浦信号合束器和双包层传能光纤。下面将对组件的功能逐一介绍。
组件图标:
本组件所对应的现实器件为连续运转的泵浦LD器件,事实上大多数能够购买到的商业泵浦源都是连续泵浦源。本组件的设置页面如图4. 2所示。
(a) (b)
(c) (d)
(e) (f)
(g) (h)
图 4. 2 连续泵浦源组件参数设置界面
对于泵浦源来说,最重要的参数为:(1)泵浦功率;(2)泵浦源光谱。对于泵浦功率在设置窗口对应输入框中直接输入数字即可,而对于泵浦源光谱,SFL软件提供了8种不同的定义方式,分别对应了图 4. 2 (a)~图 4 (h)。
SFL软件支持使用实际测试所得到的泵浦光谱作为泵浦源的输入(csv或者xls(x)文件),所支持的光谱数据文件格式为:最左列为波长,其后每一列为不同功率下的光谱数据。如图 4. 2 (a)所示,最上方“泵浦波长分布”文本框中需要给出光谱数据文件的路径,当导入指定文件后,起始波长、结束波长文本框会自动从文件中读取波长数据,用户也可以手动修改光谱范围(在文件数据范围内)。而“泵浦光通道”文本框则是当文件数据有多列时指定使用第几列的光谱。需要注意的是,导入文件的波长间隔必须相同,否则在计算功率分布时将可能出现错误。当所有参数设置完毕后,可以在右侧的小窗中看到光谱曲线,以决定是否要使用对应参数。
除了使用实验数据以外,SFL软件内置了6种给定函数生成光谱的方法,如图 4. 2(b)~(g)所示。给定的函数分别为高斯函数、洛仑兹函数、矩形函数、单一波长、三角函数和类sinc函数。对于高斯函数、洛仑兹函数和类sinc函数,只要给定中心波长和谱线的半高全宽就可以指定谱线;矩形函数则需要指定矩形部分的起始与结束波长;单一波长则是指定了一个波长作为泵浦输入;三角函数则需要指定中心波长与三角底边宽度。设置完参数后,均可以在窗口右侧的小窗看到谱线作为判断之用。
如果想在程序仿真中自定义任意更加复杂形状的泵浦光谱,那么就需要使用自定义光谱的功能了。如图 4. 2(h)所示,窗口的左侧为一个自定义波长列表,可以根据自己的实际情况,为每个不同的波长通道定义不同的泵浦功率,最终输入的总功率为所有自定义泵浦通道之和。
组件图标:
本组件所对应的实验装置为低功率连续种子激光器。由于目前高功率光纤激光多采用主振荡功率放大(MOPA)的结构,所以低功率的种子激光器为MOPA结构中的放大器提供了种子源。本组件的设置页面如图 4. 3所示。
图 4. 3 连续种子源参数设置界面
对于连续种子源来说,其设置参数和定义光谱线型的方法与连续泵浦源完全一致。其具体设置方法请参考2.1节中的内容。
组件图标:
对于1μm波长的光纤激光器来说,双包层掺镱光纤是其中作为增益介质的重要组件。本组件的设置界面如图 4. 4所示。
图 4. 4 双包层掺镱光纤参数设置界面
对于掺杂光纤来说,最重要的参数是掺杂离子的吸收发射截面,SFL软件自带了Yb3+离子在800nm~1150nm之间的吸收发射截面数据,正常情况下无需改动,其它参数则可以根据文本框的指示进行对应修改。由于通常我们使用购买的商业光纤进行实际光纤激光系统的搭建,所以我们在程序中也提供了Nufern和Liekki公司一些产品的参数供仿真使用。只要在光纤类型中选取Nufern或者Liekki,便可以在右侧的下拉菜单中选择需要的光纤型号,对应的参数会直接自动填写入对应的文本框中。
软件中可以设置光纤的弯曲半径,当弯曲半径过小时会产生弯曲损耗。
信号填充因子是指信号光模场面积占纤芯的比例,通常情况下设为1,即均匀填充在纤芯内,也可设置为其他小于1大于0的数值。
泵浦重叠因子是指泵浦光在纤芯中所占的比例,数值上等于纤芯面积比上内包层面积。
当要计算温度特性时,还需设置光纤的导热系数。
组件图标:
本组件所对应的实际器件为双包层光纤布拉格光栅。在光纤激光振荡器中,光纤光栅对作为振荡腔的腔镜来保证激光的起振。本组件的设置界面如图 4. 5所示。
图 4. 5 双包层光纤光栅参数设置界面
双包层光纤光栅组件中,需要设置的参数为反射中心波长、峰值反射率以及反射谱线。对于反射谱线,程序提供高斯型光栅和平坦型光栅两种形状,可以分别设置半高全宽和全宽度来定义谱线。另外程序也提供了外部导入反射谱的数据输入方法,窗口的右侧可以对设置好的反射谱形状进行预览。
另外该组件支持光栅尾纤的参数设置,用于模拟实际情况。
组件图标:
组件所对应的实际器件为前/后向泵浦信号合束器。在激光放大器中,由于需要将信号光和泵浦光同时耦合进掺杂光纤中,必须使用泵浦信号合束器,而合束器的尾纤也通常分为泵浦臂和信号臂。后向泵浦信号合束器则为我们提供了后向泵浦的解决方案。泵浦信号合束器的设置界面如图 4. 6所示。
图 4. 6 泵浦信号合束器参数设置界面
在合束器的参数设置中,可以选择泵浦臂的数量,分(2+1)×1、(6+1)×1和(18+1)×1,另外可以分别设置信号臂和泵浦臂的耦合效率。
组件图标:
由于在实际实验系统中,所有的光纤器件都是采用光纤耦合的,所以不可避免在系统中会引入双包层传能光纤。本组件的设置界面如图 4. 7所示。
图 4. 7 双包层传能光纤参数设置界面
与双包层掺镱光纤类似,双包层传能光纤的参数设置主要是传能光纤的几何尺寸,包括纤芯、内包层和涂覆层的直径,数值孔径等。程序同样内置了Nufern和Liekki公司的商用传能光纤产品的参数可供直接使用。
组件图标:
在高能光纤激光系统中,为了防止输出头端面损伤,同时也为了减少输出头的有害反馈,我们通常在光纤的输出端熔接光纤端帽。本组件的设置参数界面如图 4. 8所示。
图 4. 8 光纤端帽参数设置界面
光纤端帽的设置参数为端面反射率,可以在文本框中直接进行设置。
通常在搭建系统的过程中,器件参数的选择是任意的,并无过多限制。然而为了符合与现实中实验系统相符并保证计算结果的准确性,通常在搭建系统中建议遵循以下原则:
(1) 关于增益光纤的长度选择。在教学版中,增益光纤的类型为掺镱双包层光纤,对于光纤的长度设置,若过长则会导致信号光发生较强背景损耗、容易激发出非线性效应;过短会导致泵浦光吸收不完全,残余泵光功率过高。所以根据掺杂光纤对泵光波长的吸收系数,选择的光纤长度使掺杂光纤对泵浦光的总吸收在15dB~25dB之间是比较合适的。另外,由于模型中只考虑了一阶拉曼,当拉曼效应非常严重时,计算结果可能存在偏差。
(2) 关于仿真步长的设置。在实验系统的系统属性设置中,可以设置光纤计算步进值,如图 5. 1所示。
图 5. 1 系统全局设置选项
通常收敛精度这一项需要在计算速度和计算精度之间取得平衡,若步长设置过大,则容易导致计算结果不收敛,产生错误计算结果;若步长设置过小,则由于纵向分块过多容易导致计算速度过慢。此处建议取步长使得掺杂光纤的总分块数为500~1000块之间。
(3) 关于信号光起始与结束波长的设置。信号光起始和结束波长是指软件计算和输出的波长范围,它影响了软件计算速度,范围越宽计算时间越长。如果搭建的激光系统放大自发辐射较弱,可以将信号光起始波长适当增大;如果受激拉曼散射较弱,可以将信号光结束波长适当减小。当计算光谱范围较大时,也可以通过增加信号光波长间隔来提高计算速度。在含有种子源的情况下,信号光的起始与结束波长在种子源内设置。
在介绍了软件界面和内置基本组件的基础上,本节将通过构建一个仿真实例的过程来简要说明SFL软件的使用方法。为了简单起见,我们在本章将一步一步构建软件内置的前向泵浦放大器实例。
首先在构建系统之前,我们要明确需要仿真的实验系统结构图,采用简单的一级放大结构,我们可以得到如图 5. 2的结构图。
图 5. 2 前向泵浦放大器实验结构图
如图 5. 2所示,整个系统有一级放大器,种子光和泵浦光通过一个(2+1)×1的前向泵浦信号合束器耦合到20/400的双包层光纤中,双包层光纤后接光纤端帽输出,通常在实验过程中我们要进行包层光滤除,但是在仿真中我们可以直接读出纤芯功率的大小,所以在仿真过程中我们不考虑包层光滤除的问题。
在上图的结构基础上,我们可以开始着手搭建仿真系统了,首先打开软件,我们可以看到工作区域是空白的,在左侧的树形列表中找到“连续泵浦源”、“连续种子源”以及“前向泵浦信号合束器”,并将其拖放至系统编辑区,如图 5. 3所示。
图 5. 3 系统组件拖放示意图
将组件摆放好后就可以开始进行组件之间的连接了,可以看到,在组件图标的两侧均有预置的链接端口,但是端口之间的形状有所区别,分为菱形和三角形。其中菱形表示任意连接端口,可以连入或连出;三角形代表单向连接端口,从三角形的尖端连出、底边连入。图 5. 4展示了器件端口的连接规则。
图 5. 4 组件端口连接规则
器件的连接需要采用拖拽的方法,在连出端口上点击鼠标左键不要放开,然后将光标拖动至连入端口后松开鼠标左键,若连接规则错误,则连接失败,若连接过则正确,会弹出设置熔点损耗的窗口,如图 5. 5所示,弹出该窗口则表示连接成功。
图 5. 5 连接点损耗设置界面
连接成功效果如下。
图 15 组件连接成功示意图
然后根据图 5. 2中的结构,将所有组件拖入并按照规则进行连接,最终效果如图 5. 6。
图 5. 6 前向泵浦放大器组件连接图
在摆放好的组件上双击鼠标左键即可弹出参数设置界面。在本例中,我们使用种子源默认的光谱文件,注入功率设置为10W;泵浦源采用软件自带的975nm泵源光谱,注入功率200W,光谱通道10;掺镱光纤使用Nufern LMA-YDF-20/400-VIII光纤,长度设置为14m;传能光纤使用Nufern LMA-GDF-20/400-M,长度设置为2m;光纤端帽的反射率设置为0%。其他参数不变,设置好所有的参数之后,点击工具栏的执行按钮(或者点击调试菜单中的执行)便会弹出计算窗口执行计算,如图 5. 7所示。
图 5. 7 软件计算窗口
计算完成后会有提示计算所用的时间。获得计算结果的方法有两种,第一,可以通过双击组件图标来获得与组件相关的计算结果,例如点击双包层掺镱光纤,则会弹出如图5. 8窗口。
图 5. 8 双击显示计算结果示意图
其二是通过点击该窗口工具栏上的“显示所有显示窗口”按钮来对需要显示的结果进行选择。而在每一个图形窗口中,都有保存图片、图片属性编辑、数据显示等功能,方便对所得数据进行保存和处理,具体见5.3节介绍。
至此我们已经完成了对自带示例“前向泵浦放大器”的复现,更多示例请在软件主窗口左侧的“实验系统”选项卡打开并参考,实际操作中可以直接基于已搭建好的实验系统修改参数进行计算,也可以保存自己的实验系统至“软件目录\projects\实验系统”文件夹中,再次打开软件后即可在“实验系统”选项卡中选择所搭建的工程项目。另外用户也可通过文件à打开操作打开之前的实验系统。
本软件支持对计算结果进行显示、处理和存储功能。每个器件之后都有相应的结果以图形输出,可用于分析。图 5. 9为5.2节搭建事例计算完成后,工具栏上的输出结果显示选择对话框(图标)。对话框中列出了所有可显示的计算结果,包括:种子输出光谱、泵浦源输出光谱、合束器输出光谱、掺镱光纤后输出的随光纤z轴方向的功率分布、输出光谱、拉曼增益光谱(如果计算考虑了拉曼增益)、反转粒子数分布、纤芯/包层最高温度分布、光纤表面温度分布。若后续还有其他器件也会显示其输出光谱和功率沿z轴方向的分布。在对话框中勾选相应的图,点击确定后即可显示该结果。
图 5. 9 输出结果显示对话框
对于每个显示的图形用户可以对其进行编辑和存储。图 5. 10显示的是输出图像结果的工具栏。主要功能有结果保存、显示波长选择以及图形属性设置。用户可以将结果保存为图片格式也可以将输出保存为Matlab数据格式。
图 5. 10 图形编辑工具栏
波长选择对话框如图 5. 11所示。可以在对话框中选择某一波长范围内的光作为信号光进行显示,并且可以添加多个波长范围的光一起显示。
图 5. 11 波长选择对话框
属性设置对话框如图5. 12所示。用户可以在对话框内对显示的曲线、坐标、图例等进行格式上的设置。
图5. 12 属性设置对话框