计算机系统应用  2023, Vol. 32 Issue (10): 106-114   PDF    
EAST等离子体控制仿真模拟可视化运行系统
刘洋1,2, 罗正平1, 汪悦航1, 黄耀1, 张睿瑞1, 郭和茹1,2, 袁旗平1, 肖炳甲1,2     
1. 中国科学院 合肥物质科学研究院 等离子体物理研究所, 合肥 230031;
2. 中国科学技术大学, 合肥 230026
摘要:等离子体控制仿真模拟功能库 (SPACE) 是一款基于开源软件Python开发的用于磁约束核聚变托卡马克装置等离子体控制仿真模拟的函数库. 其主要功能是在托卡马克装置模型、等离子体物理模型和控制系统模型基础上, 利用计算机数值仿真技术, 对托卡马克等离子体控制进行分析、设计、预测和仿真实验. 针对SPACE各功能模块可视化运行需求, 本文采用Python和PySide2开发了适用于EAST超导托卡马克的等离子体控制仿真模拟可视化运行系统. 该系统可使实验人员以图形交互的方式进行等离子体控制仿真模拟的相关操作, 显著提升等离子体控制仿真模拟的效率.
关键词: EAST    等离子体控制    仿真模拟    PySide2    界面设计    
GUI-based Visualization System for Plasma Control Simulation on EAST
LIU Yang1,2, LUO Zheng-Ping1, WANG Yue-Hang1, HUANG Yao1, ZHANG Rui-Rui1, GUO He-Ru1,2, YUAN Qi-Ping1, XIAO Bing-Jia1,2     
1. Institute of Plasma Physics, Hefei Institutes of Physical Science, Chinese Academy of Sciences, Hefei 230031, China;
2. University of Science and Technology of China, Hefei 230026, China
Abstract: Simulation suites for plasma control on EAST (SPACE), developed based on the open-source language Python, is a function library for plasma control simulation of magnetic confinement fusion on EAST tokamak. The main feature of SPACE is to analyze, design, predict, and simulate the tokamak plasma control on the basis of the tokamak device model, plasma physical model, and control system model by using computer numerical simulation technology. In order to meet the requirements of the visual operation of SPACE functional modules, a visual operation system of plasma control simulation suitable for EAST superconducting tokamak is developed by using Python and PySide2. The system enables researchers to carry out related operations of plasma control simulation by means of graphic interaction and significantly improves the efficiency of plasma control simulation.
Key words: experimental advanced superconducting tokamak (EAST)     plasma control     simulation     PySide2     interface design    

东方超环托卡马克 (experimental advanced super-conducting tokamak, EAST) 是我国设计建造的国际上第1个全超导托卡马克实验装置[1]. 在近期的物理实验中已经成功实现长达1 056 s的长脉冲高参数等离子体运行, 创造世界托卡马克装置高温等离子体运行最长时间纪录. 作为未来可持续能源最具潜力的磁约束核聚变装置, 托卡马克长脉冲稳态等离子体运行的基本问题之一是如何实现稳定可靠的等离子体控制, 即控制产生、维持和结束等离子体放电并优化等离子体放电参数以达到设定的科学和技术目标的过程[2, 3]. 等离子体放电实验时间是十分有限且成本高昂的, 同时等离子体控制问题的复杂性无法完全通过实际的放电实验完成. 为此, 采取计算机仿真模拟来进行等离子体控制分析、预测和设计就显得十分重要和迫切.

等离子体控制仿真模拟是面向托卡马克等离子体控制需求, 以托卡马克装置模型、等离子体物理模型和控制系统模型为基础建立物理数学模型, 对等离子体控制算法进行数值模拟的技术和方法. EAST装置等离子体控制仿真模拟采用美国通用原子公司开发TokSys软件[4, 5], 这是一款基于商业软件Matlab开发的托卡马克等离子体控制工具箱, 主要功能包括托卡马克系统建模、模型验证、数据分析以及控制器设计等. 其强大的功能已经在DIII-D、EAST和KSTAR等装置上得到良好验证[3-8].

SPACE (simulation suites for plasma control on EAST)[9]是基于Python开发的EAST等离子体控制仿真模拟功能函数库, 是TokSys仿真模拟工具箱的开源实现. SPACE采用两层架构设计, 既装置无关的通用功能模块库和EAST装置定制库. 前者提供诸如托卡马克系统参数定义、诊断数据读写、托卡马克装置建模及格林函数计算和等离子体控制器设计等通用功能模块; 后者则是针对EAST装置的定制模块, 如EAST装置建模和装置对象计算、EAST等离子体平衡设计和分析、EAST等离子体控制响应及控制器设计等定制功能模块.

SPACE函数库主要采用命令行的方式对函数进行调用, 用户在使用时需要手动输入相关参数. 作为非计算机专业的研究人员, 难以熟练掌握命令行的操作, 学习成本高且效率低. 在设计和执行复杂的仿真实验时, 研究人员更需要一种可视化的接口, 可以直观理解实验过程和参数关系, 快速高效地完成任务.

本文针对SPACE函数库的可视化需求, 以Python语言和PySide2图形框架为编程核心, 设计实现了SPACE可视化运行系统, 提供一个集成的、便于用户使用的等离子体控制仿真模拟可视化运行平台, 并在此系统中集成了SPACE诸多功能模块, 如装置建模及装置对象计算模块、等离子体响应及控制器设计模块等. 并通过结果数据的对比测试验证了EAST等离子体控制的可视化仿真模拟效果.

1 系统设计 1.1 需求分析

托卡马克等离子体控制仿真模拟功能库 (SPACE) 是面向托卡马克等离子体控制需求, 以托卡马克装置模型、等离子体物理模型和控制系统模型为基础, 利用计算机数值仿真技术, 研究并开发的等离子体控制仿真模拟函数库. 开发SPACE可视化运行系统的目的是实现等离子体控制仿真模拟功能函数模块和数据的可视化编辑、保存、调度和运行. SPACE可视化系统通过图形和图表的方式, 提升用户对等离子体控制仿真模拟的理解和控制.

为了使SPACE库中的各种功能函数得到统一的调度和管理, 需要一个基础的框架作为容器, 用来装载各个模块, 这里将该容器命名为集成框架. 除了作为承载模块的容器, 集成框架还需要存储可视化系统设置选项和帮助文档等信息. 为了便于后续模块的更新和扩展, 集成框架还需要预留对应的接口.

根据SPACE库的开发进度, 可视化系统需相应完成等离子体响应及控制器设计模块、装置建模及装置对象计算模块、等离子体平衡模块、等离子体击穿启动模块、诊断波形数据可视化等模块开发, 各模块的功能性需求描述如表1所示.

表 1 功能性需求描述表

1.2 技术选择

作为SPACE的开发语言, Python是一款高层次的结合了解释性、编译性、互动性和面向对象的脚本语言. 其代码量低, 简单易读, 支持面向对象编程, 用途广泛, 拥有强大的社区支持和丰富的第三方功能库. Matplotlib是SPACE数据可视化的主要功能库, 它提供了一系列与Matlab相似的函数与API接口, 十分适合交互式制图, 是目前工业界和学术界使用最广泛的绘图库之一[10]. Matplotlib所绘制的图像也可以作为绘图控件嵌入到GUI应用程序中.

Python主流的图形界面库主要有Tkinter[11]、WxPython[12]、PyGTK[13]、PyQt5[14]和PySide2[15]等. 各个库的特点如表2所示.

表 2 Python主流的图形库

PySide2是Qt for Python项目的官方模块, 相比于PyQt5, PySide2由Qt公司官方支持, 可与最新的Qt库保持同步, 兼容性更佳. PySide2提供了Qt框架的Python接口, 使得开发者可以使用Python语言访问Qt框架的所有核心模块和类, 如QtCore、QtGui、QtWidgets等, 且支持跨平台开发应用, 功能十分强大. 同时, PySide2拥有强大的图形界面集成设计开发工具Qt Designer, 可以进行高效地图形界面开发, 并自动生成Python代码. 综合以上特点, 选择使用PySide2作为可视化运行系统开发的图形库.

1.3 系统设计

SPACE可视化运行系统采用集成框架作为容器实现各个模块的统一调度. SPACE可视化系统中, 功能模块由SPACE函数库封装而来, 系统通过集成框架启动页面容器, 功能模块通过模块接口在系统启动时加载至页面容器中, 如图1所示.

图 1 SPACE 可视化系统总体结构

集成框架的UI设计采用TLMB架构, 由顶栏(Top) 、左菜单 (Left) 、主界面 (Main) 、底栏 (Bottom) 组成. 图2展示了可视化运行系统的首页界面, 其中顶栏部分用于放置项目logo、标题、最大最小化以及关闭按钮、拖拽区等.

图2中, 左菜单上半部分用于放置首页 (Home) 、等离子体响应及控制器设计模块 (Controller) 、装置建模及装置对象计算模块 (Devices) 、等离子体平衡模块 (Equilibrium) 、等离子体击穿启动模块 (Startup) 以及诊断波形数据可视化模块 (Waves) 等模块的按钮, 点击相应的按钮即可进行跳转到模块页面. 另外左菜单下半部分放置了全局设置 (Settings) 、软件开发信息 (Information) 以及帮助文档 (Help) 的按钮, 方便用 户了解可视化系统的相关信息并进行个性化设置. 底栏部分主要用于放置项目信息、缩放区域等.

图 2 可视化运行系统首页

根据SPACE功能函数库开发实现的主要仿真模拟功能模块, 可视化运行系统设计开发完成以下5个运行子模块.

(1) 装置建模及装置对象计算模块 (Devices)

基于配置文件实现托卡马克装置的可视化建模, 配置文件包括极向场线圈、真空室及被动板导体、限制器等数据文件及其存储路径, 并根据用户操作计算选定的装置对象并输出相应的响应系数矩阵, 作为后续控制仿真模拟计算的输入. 默认计算全部装置对象之间的响应系数[9] (包括互感系数、水平场系数、垂直场系数等), 即除去极向场线圈、真空室及被动板导体外, 还包括单匝环和磁探针等电磁测量诊断系统、等离子体区域网格等. 如图3所示, Devices模块界面由两栏组成, 左侧为可视化建模结果展示, 右侧为配置文件及参数操作区. 其中, 装置数据文件调用参数可通过操作区JSON分组框中的按钮调用JSON文件统一配置, 也可通过Object settings分组框手动编辑并保存. 完成装置数据文件配置之后, 用户可在Drawing分组框选择想要显示的组件以及选择全部线圈. 操作区最下方为装置对象计算结果输出分组框.

图 3 装置建模及装置对象计算模块

(2) 等离子体响应及控制器设计模块 (Controller)

根据EAST装置模型及等离子体响应模型开展诸如等离子体刚性模型和平衡扰动模型的控制响应模拟及线圈控制器设计等. 根据SPACE的开发进展, 可视化运行系统完成3个不同控制设计功能, 即E矩阵计算 (E matrix) 、M矩阵计算 (M matrix) 和刚性模型响应矩阵计算 (RZIp).

等离子体响应及控制器设计模块中的E矩阵计算的主要功能是根据EAST电磁测量诊断优化设计一组用于估算等离子体电流重心的水平和垂直坐标的系数矩阵; M矩阵计算的主要功能优化设计得到一组EAST极向场线圈与对应位形点之间的响应控制矩阵; 刚性模型响应矩阵则是根据RZIp控制模型得到EAST极向场限圈与等离子体电流重心及等离子体电流之间的状态方程系数矩阵及响应关系矩阵[16].

图4展示了E matrix计算功能可视化运行界面. 其中左侧区域用于结果展示, 右侧区域用于配置参数加载、设定参数编辑保存、输出结果存储及计算控制等操作. 其他功能页面采用相同功能区划分, 但拥有不同的操作区定制.

(3) 等离子体平衡模块 (Equilibrium)

等离子体平衡模块主要完成3项主要功能, 即等离子体平衡结果可视化分析、等离子体平衡设计和反演. 图5展示了可视化运行系统等离子体平衡子模块的运行界面的G file页面, 其主要功能是解析输入的等离子体平衡结果文件 (包括g文件和a文件), 并以可视化的形式展示等离子体平衡位置和形状以及相关等离子体平衡参量, 如大半径、小半径、三角形变、拉长比、等离子体内感和比压等. 模块界面同样由左侧的平衡结果展示区和右侧的配置参数操作区组成. 其他3个功能页面中, EFIT展示服务器端存储的等离子体平衡结果; EQ Design用于等离子体平衡设计; EQ Fitting用于等离子体平衡反演.

图 4 等离子体响应及控制器设计模块

图 5 等离子体平衡模块

(4) 等离子体击穿启动模块 (Startup)

等离子体击穿启动模块主要功能是完成托卡马克装置击穿启动方案优化设计, 包括托卡马克放电极向场线圈初始励磁电流配比优化、击穿零场优化、击穿电压及垂直场优化、极向场线圈击穿电阻及电流电压演化波形优化等功能. 如图6所示, 可视化运行子模块界面设计同样采取两栏方案, 其中左侧是计算结果展示区, 右侧为配置参数填加、编辑、保存及运行输出设置等.

图 6 等离子体击穿启动模块

(5) 诊断波形数据可视化 (Waves)

诊断波形数据可视化模块是可视化系统中的一个重要的通用模块. 模块可根据用户设定的JSON配置文件获取等离子体放电波形数据并进行绘制展示, 实现诊断数据的可视化分析.

诊断波形数据可视化模块通过MDSplus获取等离子体放电实验数据. MDSplus是一套用于数据采集和存储的软件工具, 并在全球聚变研究领域广泛应用[17]. MDSplus提供了一套简单而强大的API, 用户仅需通过简单的命令即可实现复杂的数据结构的访问, 且无需进行文件传输.

图7展示了获取EAST相关诊断及波形绘制的配置文件示例, 包括信号名signals, 数据库名trees, 图形绘制框标签frames, 波形数据幅值放大倍数scales, 垂直坐标标签ylabels, 其他设置参数options (如: 是否保存图形结果figure_save, 绘制图形的线宽line_width等), 以及数据库服务器地址server等. 除信号名是必选参数外, 其他均提供默认设置. 而获取诊断数据所需指定的炮号可通过配置文件设定shot参数读取, 或通过界面输入. 当用户输入指定的信号名、数据库名以及炮号即可获取正确的波形数据, 即随时间演化的各个测量数据.

图 7 JSON配置文件示例

诊断波形数据可视化模块支持用户手动输入或修改配置参数, 且修改后的配置参数可另存为新的JSON文件供后续使用.

图8展示根据图7所示的JSON配置文件解析后的运行界面, 其中炮号shot栏对应的第2行参数为手动输入. 当某一列配置参数只有一个时, 则其他行所需参数直接与其相同, 而无需重复设置, 如图8中shot和server.

图 8 诊断波形数据可视化模块

2 系统实现 2.1 接口解析与封装

SPACE函数库在设计开发之初并未考虑可视化运行的需求, 因此各功能函数以直接输出计算结果为主. 为了满足SPACE功能函数库的可视化运行, 需要对命令行接口进行解析和封装, 以实现可视化交互运行. 这个过程包括定义参数、解析参数、封装函数、创建交互界面和界面调试. 首先确定需要明确接收哪些参数, 并根据函数定义设置控件. 然后将用户在界面上的操作转换成程序可以理解的数据. 接着对SPACE函数库进行一定的改写, 将功能函数转换为程序调用接口, 使输入参数和输出结果能够正确地在可视化系统与函数库之间传递. 最后创建交互界面, 绑定函数和控件, 以调用函数并显示结果. 完成界面后进行测试和调试, 确保界面功能正确且用户体验良好.

通过以上方式, 解决了SPACE函数库与可视化运行系统的接口问题, 可视化运行系统通过接口执行功能函数时, 效果与函数库中的函数一致.

2.2 集成框架

集成框架首先使用 Qt Designer 进行布局设计, 其产生的布局文件可直接生成PySide2兼容的Python代码. 集成框架使用QStackwidget作为容器, 当主程序启动时, 自动对布局设计代码进行加载, 同时启动各个运行子模块.

集成框架中预留了增加新模块的接口, 当新的模块需要加入集成框架中时, 只需要容器中新增一个页面 (Page), 并通过窗口部件提升的方式即可将新的模块引入. 最后在菜单栏中新增模块对应的按钮并连接相关槽函数即可.

2.3 模块结构

可视化运行系统中的模块主要用于实现SPACE库中对应的功能模块, 并且可以作为一个控件独立运行.

SPACE可视化运行系统中的模块通过类继承的方式实现模块的界面布局以及方法调用. 以装置建模模块为例, 模块的结构如图9所示.

图 9 装置建模模块结构示意

首先根据模块所要实现的功能创建一个模块基础类. 这个基础类中主要包含实现模块功能所需要的SPACE函数库中的各种类和方法以及其他基础方法. 然后通过 Qt Designer 创建布局文件, 并新建一个QWidget窗口类, 这个窗口类通过继承的方式将模块基础类封装成一个PySide2窗口控件.

最后使用一个模块顶层的类继承模块窗口类, 并编写模块相关的槽函数以及其他方法, 从而实现模块的整体封装及独立运行. 同时, 实现图形界面设计与功能逻辑的相互分离, 既有利于后期的维护升级, 也有利于可视化运行系统的功能扩展.

2.4 配置数据的保存与编辑

SAPCE各功能模块在进行仿真模拟计算时需要设定大量参数, 通过JSON文件以列表、字典等方式进行配置.

JSON是一种轻量化的数据交换格式, 易于编辑和书写, 也适用于程序的解析[18]. 使用JSON文件可以通过API传输数据对象, 快速对配置数据进行修改和保存.

Python对JSON具有良好的支持, 通过导入Python自带的JSON库即可实现JSON文件的存取和解析.

SPACE可视化运行系统通过定制各运行子模块所需配置的参数实现对JSON配置文件的可视化展示、编辑和保存. 模块通过JSON库中的load方法将配置文件中的参数以字符串形式读入内存, 当用户对配置参数进行修改时, 由PySide2提供的槽函数同步发射信号, 改变内存中的配置参数. 当用户保存配置文件时, 通过JSON库中的dump方法将内存中的配置文件写入到本地.

通过这种方式, 可视化运行系统实现了高效的参数配置管理, 还可以一键完成运行模块功能所需的全部配置.

2.5 数据可视化及交互

SPACE主要通过Matplotlib对数据进行绘制. 在可视化运行系统中设计了一个继承自Matplotlib的FigureCanvasQTAgg类的画板类, 实现SPACE功能函数库数据可视化的PySide2控件显示. 当SPACE中的函数进行图像的绘制时, 将Matplotlib中的Figure对象替换为自定义的画板类, 即可将绘制结果显示于PySide2控件上. 此时可以根据需要, 将画板类添加到模块布局中.

可视化运行系统通过Matplotlib中的事件管理器提供数据交互的功能, 在鼠标以及键盘事件发生时, 可以触发相应的回调函数. 当图像绘制完成后, 可根据需要实现数据交互, 如点选装置图形中的线圈以获取线圈坐标数据、放大缩小图像以及拖拽平移等, 如图10所示.

图 10 装置建模图像交互

3 系统测试

以装置建模及装置对象计算模块和诊断波形数据可视化模块为例, 对可视化运行系统进行测试.

3.1 装置建模及装置对象计算模块

装置建模及装置对象计算模块的主要功能是通过配置文件实现托卡马克装置的建模以及结果可视化, 其计算得到的装置对象响应矩阵是后续控制仿真模拟计算的基础.

如第1.3节中的图3所示, 通过点击JSON分组框下的Config file按钮, 装置建模及装置对象计算模块可以在文件中选择配置文件进行参数的载入, 并且可以将修改后的配置进行保存. Object settings分组框中显示了当前装置所使用的数据文件, 并且可以根据需要, 对已选择的数据文件进行修改. Drawing分组框包含了当前显示的相关部件, 根据用户的勾选来隐藏或者显示相关装置部件.

装置建模的图像可通过鼠标进行缩放、拖拽以及点选的操作. 如图10所示, 可选中相应的线圈以进行相应对象响应系数的计算, 计算结果保存到指定的数据文件中.

以极向场线圈对象中的第1个线圈PF1与单匝环对象为例, 验证可视化系统模块计算结果与 SPACE 函数库已有的TokSys计算结果的一致性. 根据互感系数的计算原理[9], 响应系数矩阵中的互感系数计算结果与 SPACE 函数库中已有的TokSys计算结果进行对比, 并计算相对误差如图11所示. 相对误差计算公式为:

$ 相对误差=\frac{\left|{M}_{函数库}-{M}_{可视化系统}\right|}{{M}_{函数库}}\times 100{\text{%}} $
图 11 互感系数计算结果对比与相对误差

经计算所得的平均相对误差为(4.91×10−6)%, 最大相对误差为(1.70×10−5)%. 对比结果表明 SPACE 函数库已有的TokSys计算结果与可视化模块运行结果具有一致性.

3.2 诊断波形数据可视化模块

诊断波形数据可视化模块可以根据用户设定的配置文件获取波形数据并进行绘制, 同时支持配置文件的加载和编辑. 诊断波形数据可视化模块的运行界面如第1.3节中的图7所示.

模块也可以通过工具栏中的图标实现对每行波形配置进行修改编辑, 当新增波形数据配置项时, 自动对使用默认的参数对配置项进行填充, 如图12所示. 同时在工具栏的设置按钮中可对波形线条的参数进行控制, 点击工具栏运行按钮即可生成波形图像.

图 12 新增配置项

当波形配置项比较多时, 波形显示在同一列不方便查看. 对此可以通过工具栏的设置按钮手动设置多列显示, 也可以在配置项超过一定数量时自动生成多行多列的图像, 如图13所示为通过诊断波形数据可视化模块获取的放电参数随时间演变的波形图像.

为验证可视化模块和SPACE函数库产生的波形图像的一致性, 选取两组波形配置数据如表3所示, 在可视化模块和SPACE函数库中分别获取波形数据并绘制. 为方便比较, 先使用函数库绘制波形, 再将可视化模块产生的波形叠加在函数库的波形图像上, 结果对比如图14所示. 对比结果表明SPACE函数库与可视化模块运行结果一致.

4 总结

本文基于SPACE函数库的可视化需求, 设计并实现了SPACE可视化运行系统. 该系统集成了SPACE的多个功能模块, 如装置建模和装置对象计算模块, 等离子体响应和控制器设计模块等. 通过与SPACE函数库运行结果对比, 验证了该系统在等离子体控制仿真模拟方面的有效性. 该系统为研究人员提供了一个直观使用的等离子体控制仿真模拟可视化运行平台.

图 13 波形图像

表 3 两组波形配置数据

随着SPACE函数库的进一步开发, 本文的可视化运行系统将持续更新并增加更多子模块和功能, 成长为一个全能的等离子体控制模拟仿真运行平台. 同时, 本文在EAST装置上开发完成的SPACE可视化运行系统可拓展到ITER和CFETR装置上, 为未来的聚变托卡马克等离子体控制仿真模拟提供有力工具.

图 14 波形数据结果对比

参考文献
[1]
万宝年, 徐国盛. EAST超导托卡马克. 科学通报, 2015, 60(23): 2157-2168. DOI:10.1360/N972014-01235
[2]
Pironti A, Walker M. Fusion, tokamaks, and plasma control: An introduction and tutorial. IEEE Control Systems Magazine, 2005, 25(5): 30-43. DOI:10.1109/MCS.2005.1512794
[3]
Xiao BJ, Humphreys DA, Walker ML, et al. EAST plasma control system. Fusion Engineering and Design, 2008(2–3): 181-187. DOI:10.1016/j.fusengdes.2007.12.028
[4]
Hyatt AW, Welander AS, Eidietis NW, et al. Using the TokSys modeling and simulation environment to design, test and implement plasma control algorithms on DIII-D. Proceedings of the 56th Annual Meeting of the APS Division of Plasma Physics. New Orleans: APS, 2014. NP8.039.
[5]
Humphreys DA, Ferron JR, Bakhtiari M, et al. Development of ITER-relevant plasma control solutions at DIII-D. Nuclear Fusion, 2007, 47(8): 943-951. DOI:10.1088/0029-5515/47/8/028
[6]
Leuer JA, Xiao BJ, Humphreys DA, et al. Tokamak start-up modeling and design for EAST first plasma campaign. Fusion Science and Technology, 2010, 57(1): 48-65. DOI:10.13182/FST10-A9268
[7]
Leuer JA, Eidietis NW, Ferron JR, et al. Plasma startup design of fully superconducting tokamaks EAST and KSTAR with implications for ITER. IEEE Transactions on Plasma Science, 2010, 38(3): 333-340. DOI:10.1109/TPS.2009.2037890
[8]
Qiu QL, Xiao BJ, Guo Y, et al. Comparison benchmark between tokamak simulation code and TokSys for Chinese fusion engineering test reactor vertical displacement control design. Chinese Physics B, 2017, 26(6): 065205. DOI:10.1088/1674-1056/26/6/065205
[9]
罗正平. 托卡马克等离子体控制仿真模拟功能库(SPACE)详细设计. 合肥: CRAFT总控课题年会, 2021. 1–21.
[10]
Hunter JD. Matplotlib: A 2D graphics environment. Computing in Science & Engineering, 2007, 9(3): 90-95. DOI:10.1109/MCSE.2007.55
[11]
Charatan Q, Kans A. Python graphics with Tkinter. Programming in Two Semesters: Using Python and Java. Cham: Springer, 2022. 211–254.
[12]
Hunt J. The wxPython GUI Library. Hunt J. Advanced Guide to Python 3 Programming. Cham: Springer, 2019. 73–86.
[13]
Ashley WD, Krause A. Python and GTK+. Foundations of PyGTK Development: GUI Creation with Python. Berkeley: Apress, 2019. 159–173.
[14]
Willman J. Overview of PyQt5. Modern PyQt. Berkeley: Apress, 2021. 1–42.
[15]
Fitzpatrick M. Create GUI Applications with Python & Qt5 (PySide2 Edition). Independently Published, 2020. 655–665.
[16]
Yuan QP, Xiao BJ, Luo ZP, et al. Plasma current, position and shape feedback control on EAST. Nuclear Fusion, 2013, 53(4): 043009. DOI:10.1088/0029-5515/53/4/043009
[17]
Zhang ZQ, Wang F, Xiao B J, et al. A new remote web-based MDSplus data visualization system for EAST. Fusion Engineering and Design, 2023, 186: 113337. DOI:10.1016/j.fusengdes.2022.113337
[18]
Wan CG, Yu Z, Liu XJ, et al. A robust and fast data management system for machine-learning research of tokamaks. IEEE Transactions on Plasma Science, 2022, 50(12): 4980-4986. DOI:10.1109/TPS.2022.3223732