QuantumATK的图形用户界面

Posted · Add Comment

概述

QuantumATK 为用户提供了方便易用的图形用户界面环境(NanoLab),可以轻松的完成各种计算模拟任务;内嵌的Python 的编程接口则允许有经验的用户实现复杂的计算流程或进行高级的数据分析。用户可以使用 NanoLab 进行几何结构模型构建、设置计算参数,读入、分析计算结果。用户还可以自己编程设计自己的图形界面插件,实现文件格式交换、数据处理作图、设计新型结构和计算流程,等等。

更多功能介绍详见 QuantumATK功能列表

建模工具详见:QuantumATK中的建模工具

建模工具

QuantumATK的图形界面 NanoLab 提供了丰富易用的建模工具,能够满足不同层次的模型构建需求。

  • 原子级结构建模工具,可构建分子、晶体、纳米结构和器件
    • 对称性信息工具
    • 超胞工具
    • 交互式的结构(原子或片段)控制(选择、编辑、移动),
    • 表面建模
      • 选择Miller指数,表面布拉维各自和切割平面
      • 创建slab或超胞结构
    • 界面建模
      • 分析不同的超胞大小和晶体角度的应变
      • 优化界面结构
    • 正二十面体建模
      • 构建二十面体纳米粒子
    • Wulff 结构建模
      • 构建表面能最低的纳米粒子
    • NEB 建模
      • 设置反应路径
      • 逐个编辑中间态
      • 使用 IDPP 方法预优化 NEB 路径
      • 使用 Python 脚本调用各种方法(LI-LinearInterpolation、HLC-HalgrenLipscomb和IDPP-ImageDependentPairPotential)进行自动化 NEB 路径创建
    • 创建器件结构用于输运计算
    • 纳米结构(石墨烯、纳米管、纳米线)建模
    • 分子建模工具
    • 多晶建模工具
    • 表面钝化工具
    • 导入导出绝大多数结构文件类型(可以用插件扩展功能,内置 OpenBabel)
    • Packmol分子填充工具
    • 内置 SQS 建模工具
      • 使用基因算法(其他程序采用蒙特卡洛方法会比较慢)
      • 目前支持二元体系,例如 SiGe 或者 InxGaAs
      • 支持任意结构,比如纳米线
    • Python 命令行终端
      • 在Builder 里直接使用 Python 对结构进行操作
      • 将建模工具结构操作转译成 Python 命令
      • 创建预定义脚本自动重复操作
  • 结构数据库

详见:QuantumATK中的建模工具

数据分析与可视化工具

QuantumATK 的图形界面 NanoLab 提供丰富的数据处理与结果可视化工具,图形化的工具能满足绝大多数日常需求,此外还提供 Python 脚本的数据处理和作图。

  • 显示 3D 数据
    • 高性能图形渲染引擎,支持百万级原子和键的显示
    • 等值面图、等值线图、Contour 图,图形可以根据数据范围进行重复
    • 控制原子颜色、大小和透明度
    • 根据计算物理量(力、速度等)显示原子颜色
      • 可以用于 MD 轨迹等动画
    • 晶体的多面体作图表示
    • Voxel 作图方法(3D 格点数据的点状云)
    • 矢量场作图
    • Contour 平面图的 3D 立体化
    • 3D 显示控制,支持多光源
    • 布里渊区显示工具
    • 导出多数图片格式
    • 导出 CUBE 文件或简单 xyz 数据文件,用其他程序作图
    • 导出 MD 轨迹、声子振动、NEB 路径等的动画
    • 自动旋转显示,导出 GIF 动画
    • 交互式进行 3D 测量距离和角度
  • 2D 作图工具
    • 将作图保存成 Python 脚本,用于重新作图或自定义作图
    • 将能带和态密度作图合并
    • 在图上任意添加箭头和文字说明

项目管理与计算设置

  • 计算项目管理
    • 文件按项目归类存放
    • 在计算机之间、用户之间方便的共享计算项目
    • 总览项目全部数据或只关注部分数据,将不同项目数据文件合并
  • 脚本编辑器
    • 搜索-替换功能
    • 语法高亮显示
    • Python 语言自动补全
    • 自定义字体
  • 作业管理器
    • 在本机或远程服务器上提交串行或(多线程或多进程)并行计算
    • 本机模式:串行、多线程并行、多进程并行
    • 远程模式
      • Torque、PBS、SLURM、LSF 队列系统、无队列系统直接提交
      • 其他队列系统可以通过插件添加
      • 自动上传输入文件、下载输出文件
      • 仅需要安全的 ssh 访问,无需服务器端的守护进程
      • 内置 SSH 密钥生成工具,自动上传公钥
      • 诊断工具检测服务器设置是否正确
  • Python 脚本语言,直接和图形界面结合
    • 可以交互式使用
    • Parallel scheduler
    • 包含PyQt4
    • 包含PyMatGen

Python开发平台和计算流程自动化

兼容 Python 3 的完整运行环境,包含丰富的第三方模块,支持脚本建模、计算设置、结果分析和可视化。

Python 脚本编程将全部计算功能结合在一起,可以更好的协同工作,用户也可以将计算任务自定义和自动化。

aktpython 是 Python 3.6 版本的解释器,内置大量配置好的 python 模块,支持交互式运行或批量执行命令。QuantumATK 的输入文件就是python的脚本,其所使用的除了 python 原生的命令之外,还包括了QuantumATK 的 python 函数,支持:

  • 生成结构
    • 定义分子、块体、表面、器件结构
    • 定义布拉维格子
    • 构建纳米线、纳米管、石墨烯片层等特殊结构
    • 使用 python 命令重复 NanoLab 建模工具的操作
  • 设置模拟步骤
    • 设置 QuantumATK DFT-LCAO、DFT、PlaneWave、SemiEmpirical、ForceField 等计算引擎的模拟步骤
    • 设置多种计算引擎组合的多步骤
    • 在分子动力学模拟前后增加预处理和分析,调整 MD 模拟算法
  • 后处理分析
    • 自动化分析并作图
    • 获取 QuantumATK 的内部数据进行特别分析
    • 分析步骤批处理
    • 不同模拟分析方法组合
  • QuantumATK 提供超过 400 个类型和函数供用户使用,详见列表
  • 所有变量都带有物理单位,QuantumATK 支持在不同单位间便捷的换算
    • 单位:nm, Ang, Bohr, Meter, Rydberg, eV, meV, Hartree, Joule, Calorie, kiloCaloriePerMol, kiloJoulePerMol, Newton, nanoNewton, kilogram, Kelvin, fs, femtoSecond, picoSecond, nanoSecond, microSecond, millisecond, Second, Minute, Hour, Day, Ampere, Volt, Siemens, G0, Coulomb, bar, Pa, Gpa, hbar, Mol, Radians, Degrees
  • 物理常数:Boltzmann常数,Planck常数,Avogadro常数,光速,原子质量单位,hbar,电子质量,基本电荷,真空介电常数
  • 其他第三方 Python 模块(atkpython支持)
    • ADODBAPI, ASE, CCLIB, Certifi, Colorama, Crypto, Decorator, H5py, Ipykernel, Ipython, Isapi, Jinja, Jupyter_core, markupsafe, matplotlib, monotonic, monti, mpi4py, networkx, numpy, packaging, paramiko, pexpect, pickleshare, pillow, pkgconfig, plumed, psutil, pupynere, pybtex, pycrypto, pygments, pymatgen, pymongo, pymysql, PyOpenGL, PyQt5, pythonwin, pytz, pywin32, pyyaml, pyzmq, qtconsole, requests, scandir, scipy, simplegeneric, singledispatch, sip, six, spglib, tornado, tabulate, traitlets, wcwidth, win_unicode_console, win32, win32com, zmq

立即试用 QuantumATK!