MatCloud+材料云:高通量多尺度全流程的国产材料集成设计工业软件

2023-01-08 14:09杨小渝马新杰许立芳郝德博孛志尧昌志成
软件导刊 2022年10期
关键词:第一性高通量尺度

杨小渝,马新杰,许立芳,郝德博,孛志尧,昌志成

(1.中国科学院计算机网络信息中心,北京 100190;2.中国科学院大学,北京 100049;3.北京迈高材云科技有限公司,北京 100190)

0 引言

新材料数字化研发能有效降低研发成本、缩短研发周期。借助于如今不断强大且成本不断降低的高性能计算算力、数据传输能力、数据存储能力等,通过大数据、云计算、人工智能技术以及日益增多的针对材料设计和性能预测的各种智能算法和模型,开展计算、数据、AI、实验四位一体的“理论设计在前,实验验证在后”的材料数字化研究,从而对仅基于“试错法”实验的传统单一研发手段进行变革,进而有效降低成本、提高研发效率。例如,美国知名的新材料数字化研发公司QuesTek Innovations(简称QuesTek)提出“材料理性设计”(Materials By Design)理念,将材料快速设计、测试、表征、定性及服役使用融为一体。其通过计算、数据、AI 驱动的方法还为美国海军设计了两种用于飞机的材料:M54 钢和S53 钢。其中,M54 钢从成分设计到取得应用资格,时间仅为6 年,S53 从成分设计到取得应用资格为8年,相比传统方法的15 年,研发周期分别缩短了53%和47%[1]。

然而,我国在新材料设计工业软件领域与国外差距很大,无论是单一尺度的计算模拟程序(如量子力学第一性原理计算程序VASP、分子动力学程序LAMMPS)、微尺度材料集成计算软件(如Materials Studio、MAPS)、宏观尺度的材料和器件有限元模拟仿真软件(如ANSYS、ABAQUS)等,均被国外垄断。例如,微尺度材料集成计算工业软件基本被某国外软件所垄断,而且目前已对我国涉及军工的单位禁用,对我国新材料研发关键领域构成威胁。

为此,经过近10 年的努力,在国家自然科学基金和国家重点研发计划的资助下,本文研发了高通量多尺度材料集成计算和数据管理云平台MatCloud,并最早于2015 年上线运行。MatCloud 也是我国“十三五”材料基因工程专项“材料基因工程关键技术和支撑平台”的代表性成果之一[2],取得的一系列研究及应用成果相继在Scientific Data(Nature 子刊)、Computational Material Science(IF3.3,JCR Q1)、Nanoscale(IF 7.79,JCR Q2)、Electrochim Acta(IF 6.901,JCR Q2)、Carbon(IF 9.593,JCR Q1)、Chinese Physics B(1.494/Q3)等多个国际国内知名期刊发表。

MatCloud 提出云端高通量、多尺度、自动化流程的材料计算模拟体系架构,将MatCloud 直接连接千核/万核高性能计算集群,实现了云端高通量多尺度材料计算模拟、自动调整和纠错;通过软件定义材料计算模拟,将模型搭建、高通量建模、各任务间数据流动(如几何优化、静态计算)、参数设置、赝势处理/势函数匹配、计算数据后处理、计算数据持久化及机器学习等关键环节图形化、组件化,便于用户通过鼠标拖拽方式,实现高通量筛选逻辑的“自组装”;通过“建模→计算→数据→AI”的云端自动化全流程,解决了材料计算参数设置复杂、赝势处理繁琐、数据后处理易出错、计算数据易丢失等问题,帮助实现材料自动化发现。计算模拟一旦结束,自动形成材料计算数据库。

尤其是该成果将应用基础研究与产业化应用很好地结合,于2018 年成功实现了成果转化(MatCloud+材料云)。经过迈高科技4~5 年的全面重构和持续迭代研发,Mat-Cloud+材料云基本具备国外同类微尺度材料集成设计软件90%的核心功能,且100%落地。与国外软件相比,Mat-Cloud+材料云的最大特点在于“软件定义材料计算”及“AI+材料计算SaaS 化”,将材料“建模→计算→数据→AI”的全流程操作置于云端,用户无需下载安装任何软件,通过网页浏览器登录/注册即可使用,并向社会广大用户开放(www.matcloudplus.com)。截止撰文时注册用户接近5 000,涵盖300 多家高校、科研院所和企业,覆盖10 多个国家和地区,已举办线上线下培训近100 场,培训用户数累计近3 500 人次,取得了较好的社会与经济效益,并同时得到北京科委的高度重视。

本文重点介绍MatCloud+底层架构、数据库架构,以及自主研发、自主可控、面向“云原生”的第一性原理计算程序包,并以4个案例介绍了MatCloud+如何支持高通量多尺度材料计算,以及带给用户计算效率的提升。

1 国内外研究现状与趋势

1.1 新材料设计制造工业软件分类

对新材料数字化研发的理解可分为广义和狭义。广义上的新材料数字化研发是指材料整个生命周期各阶段的数字化,主要包括材料设计、工程分析(如强度、刚度等)、加工制造、服役使用及回收利用等。狭义上的新材料数字化研发主要包括材料设计、工程分析、加工制造等从材料设计到制造3 个核心阶段的数字化。因此,新材料数字化研发软件又可分为新材料设计和新材料制造工业软件,涵盖材料设计、工程分析、加工制造3 个阶段,主要涉及计算机辅助设计(CAD)、计算机辅助工程(CAE)以及计算机辅助制造(CAM)。

1.2 多尺度定义

目前业界对多尺度计算模拟有着不同的时空尺度划分和定义,一般分为3 类或4 类,但其核心理念基本相同。TMS 将多尺度计算模拟主要分为3 类:①量子和原子空间尺度;②微观尺度的材料结构演化;③宏观尺度的计算模拟[3]。

本文认为,Gooneie 等[4]对不同时空尺度给出了一个较好定义,将多尺度模拟清晰地分为4 个尺度,分别为:①量子尺度;②原子尺度;③介观尺度;④宏观尺度。量子尺度和原子尺度一般被称为微观尺度。

(1)量子尺度(Quantum Scale,~10-10m,~10-12s)。在量子尺度下,原子核和电子是被关注的两种粒子,主要通过量子力学方法研究其状态。其用于研究化学键形成和断裂相关现象的可能性、电子构型的变化及其它类似现象等,这是量子尺度计算模拟最具优势的地方。

(2)原子尺度(Atomistic Scale,~10-9m,~10-9-10-6s)。在原子尺度下,所有原子或多组原子都由单个位点表示和处理。系统的势能使用许多不同的相互作用来估计,这些相互作用被统称为力场。典型的相互作用包括键合和非键合相互作用。

(3)介观尺度(Mesoscopic Scale,~10-6m,~10-6-10-3s)。在介观尺度下,分子通常用场或被称为珠子的微观颗粒来描述。通过该方式,分子细节被隐含地引入,提供了在更长时间上模拟现象的机会,而原子尺度的计算模拟很难达到这样空间和时间尺度。一个基于场的(field-based)聚合物体系描述的典型例子就是混合自由能的Flory-Huggins模型,其中体系的细节在模型参数中进行汇总。在基于粒子的模型(particle-based)中,颗粒集合通过粗粒化程序积聚珠子间的相互作用用于表征该体系。目前已开发了各种方法研究聚合物系统中的介观结构,包括耗散颗粒动力学(Dissipative Particle Dynamics,DPD)、布朗动力学(Brownian Dynamics,BD)、格玻尔兹曼(Lattice Boltzmann,LB)、动态密度泛函理论(Dynamic Density Functional Theory,DDFT)以及依赖于时间的金茨堡—朗道(Time-Dependent Ginzburg-Landau,TDGL)理论等。

(4)宏观尺度(Macroscale,~10-3m,~1s)。在宏观尺度下,系统被视为连续介质,原子和分子的离散特性则被忽略。这种系统的行为受到本构定律的约束,本构定律通常与守恒定律相结合以模拟各种现象。除用于分隔连续性区域的有限位置数外,所有函数(如速度和应力分量)都是连续的。宏观尺度计算模拟的基本假设是用等效的均质模型代替材料中的异构性。最重要的用于模拟该尺度体系的方法是有限差分法(Finite Difference Method,FDM)、有限元法(Finite Element Method,FEM)和有限体积法(Finite Volume Method,FVM)。

1.3 材料设计软件分类及国内外软件比较

新材料设计软件可按以下方式进行分类:

(1)按不同空间尺度划分,可分为量子尺度、原子尺度、介观尺度和宏观尺度。

(2)按集成度划分,可分为单一尺度的计算模拟程序和材料集成设计软件。

(3)按软件呈现方式划分,可分为传统软件和SaaS 化软件(即云端计算软件)。

(4)按通用性划分,可分为通用材料软件/程序包和专业材料软件/程序包。专业材料软件/程序包主要针对不同的材料体系,如:辅助半导体软件设计的NextNano 软件、用于热电材料的BoltzTrap 软件等。

按照上述分类方式,本文对国内外主要的材料计算设计工业软件进行比较,如图1 所示。软件选择的准则包括:①具有世界知名度以及国际用户;②注册或使用用户数不少于1 000;③软件已商业化。

比较维度主要包括:①单一尺度的程序包/软件包;②安装或部署在本地的微介观多尺度软件;③支持建模→高通量→多尺度→数据库→AI 的全流程一体化云端材料计算基础设施。

Fig.1 Comparison of main material softwares form domestic and abroad图1 国内外主要材料软件比较

从图1 可以看到,在单一尺度的材料软件或程序包方面,尽管我国有一些国产的量子尺度、原子尺度和宏观尺度的计算模拟软件,但相比于VASP、ANSYS、ABAQUS 等软件,从世界范围的使用人数及普及程度来看,我国的形势还是比较严峻的;在需要部署或安装到本地才能运行的微介观多尺度软件方面,目前国内使用较多的是Materials Studio[5]等,Materials Studio 本身不支持建模→高通量→多尺度→数据库→AI 的全流程自动化,而MatCloud+已可全部支持,尽管在功能模块上较为欠缺,但是总体上呈现良好的追赶态势;在建模→高通量→多尺度→数据库→AI全流程一体化的云端材料集成计算基础设施方面,目前国际上主要有美国的Mat3ra[6]和韩国的Materials Square[7],而中国主要为MatCloud+材料云,且MatCloud+材料云在一些功能上已超过了Mat3ra和Materials Square。

1.4 材料设计软件发展趋势

材料集成设计工业软件主要相对于单一尺度的计算模拟代码或程序,是指利用系统化、工程化方法,将不同时空尺度的计算模拟软件、材料数据库等通过先进的信息技术(如无代码理念、云计算架构、大数据驱动、AI赋能)集成于辅助材料设计的软件或云平台。

目前的微介观多尺度材料集成设计工业软件大多有10 年以上的研发历史,都是基于传统的Client-Server 架构,需要安装到本地才能使用。在云计算、大数据、新一代人工智能、高速网络及高性能计算等新一代计算机技术不断进步的情况下,出现了材料基因组倡导的“理论、模拟、数据、实验”紧密融合、协同创新的新需求,而上述传统软件的架构以及新材料设计理念都不能很好地满足新材料数字化研发的新需求。例如,SaaS 化趋势(如ANSYS 已推出ANSYS 云)、高度集成化、高通量计算筛选、与材料数据库紧密融合、自动化流程的跨尺度以及与AI 技术(如机器学习、图像处理、自然语言处理、深度学习等)紧密融合等特点,都未能很好地体现在上述传统微尺度材料集成设计工业软件中,需要提出新的材料智能化设计新理念、新模式与新方法。

基于此考虑,本文提出云端高通量、多尺度、自动化流程的材料计算模拟体系架构,直接连接千核/万核高性能计算集群,实现了云端高通量多尺度材料计算模拟、数据库构建和AI等功能。

2 MatCloud+底层架构

2.1 核心模块

图2 揭示了MatCloud+的主要技术模块及其之间的有机协同工作关系。主要的核心技术模块包括:①高通量作业生成器;②工作流系统;③作业调度器;④核心引擎;⑤自动调整与纠错引擎;⑥可动态修改的计算任务列表和任务引擎;⑦计算材料信息库;⑧机器学习;⑨报告生成器;⑩可视化引擎等。此外,MatCloud+在求解程序端还包括自主可控的MatCloud-QE 量子力学程序包和MatCloud-MD 分子动力学程序包。

MatCloud+各模块之间的关系包含控制流、数据流和交互流,各模块主要功能如下:

Fig.2 Core modules and their interaction of MatCloud+图2 MatCloud+核心模块与交互

(1)结构建模。该模块负责在线生成高通量模拟仿真所需的一系列输入文件,主要包括两部分:动态图形界面生成器和结构构造器。以晶体建模为例,动态图形界面生成器负责动态地生成计算不同物性数据所要求的参数输入图形界面。用户通过Web 页面加载基质晶体或化合物的CIF 文件(CIF 文件为晶体结构的标准化表示文件),以及通过该动态产生的图形界面输入各种参数。一旦获得这些数据,工作流将调用结构构造器生成该材料计算软件(如MatCloud-QE、VASP)所需的一个或多个模拟仿真输入文件。但是高通量结构建模面临的主要问题是:如何针对不同的计算类型(如本征、掺杂、表面)进行材料计算的建模以统一地生成作业,这是需要解决的一个关键性技术问题。

(2)材料计算信息库。材料计算信息库由材料数据库和材料文件库组成。不同于其它的一些材料计算框架,该项目除建立材料计算的数据库外,还将建立材料计算的文件库。该文件库用于存储计算过程中产生的仿真输入数据、中间过程数据、仿真输出数据及出错信息数据。尤其是出错信息数据,其往往能提供一些有用信息。这些材料计算数据、晶体结构性能数据、实验数据及经验数据便构成了材料大数据。通过对材料大数据的挖掘,可帮助寻找材料结构、组份与性能的关系,以及计算处理本身(如不同CPU 核数)对材料计算数据不确定性的影响规律等。

(3)跨平台/集群调度/元调度。元调度(Metaschedule)是指在一个计算集群容器中根据一定的算法选择合适的计算节点进行作业提交。当合适的计算节点选择好后,作业调度则负责作业的排队、提交和监控等(但通常元调度与作业调度被集成在一起)。因此,将对元调度器/作业调度器进行微服务封装,并集成于工作流中用于计算作业的自动提交与监控。

(4)高通量平行计算作业自动纠错引擎。自动纠错引擎主要负责高通量并行计算作业的纠错。由于交换关联泛函、赝势、初始自选态、能量截断、k 点网格等参数的选择或设置不同往往会引起计算不收敛或中断的情况,使高通量平行计算作业不能正常完成。自动纠错引擎必须能根据故障原因自动地进行参数设置或修改,并在断点附近重新启动作业。为此,该项目将建立围绕MatCloud-QE 材料计算软件有关错误故障原因与交换关联泛函、赝势、初始自选态、能量截断、k 点网格等参数关联的一个知识库,并建立规则库以帮助自动提出修正参数。

2.2 工作流系统

工作流系统负责高通量材料计算的“端到端”集成,即材料计算生命周期过程中涉及的主要子任务,如从生成仿真输入文件、元调度、作业自动提交和监控、各类计算数据自动归档、材料物性数据计算,到材料数据的自动入库、用户通知等,都由工作流自动协同完成,开发的材料计算软件本体将提供语义解释,整个流程无需人工干预。

一个工作流系统由工作流引擎、工作流设计客户端和工作流3 部分组成。工作流在运行过程中能够自动调用并识别语义,自动协同各模块的工作。材料计算软件本体是工作流系统的一个核心组成,该本体提供生成仿真输入文件过程中及解析仿真输出所需的围绕材料计算软件(如MatCloud-QE)的语义解释。如在线计算材料的不同性能时,要求用户提供的参数类别可能不同,因此系统需要动态提供的参数图形输入界面类别也会不同,此时需要该本体提供这些不同性能参数的语义解释。在解析计算输出的文件时,需要本体提供该材料计算软件所定义的名词、术语或元数据的语义解释,以便机器能准确地解析它们。材料计算软件本体是支持自动完成高通量材料计算的核心要素,也往往是材料信息学研究的重点内容。

2.3 材料计算数据库

材料数据稀缺且分布零散,材料数据库对加快新材料研发起着重要的支撑作用。通过高通量计算驱动引擎,一次性计算即可产生大量的计算结果文件(如OUTCAR)。如何从这些文件中提取关键的材料物化性质数据,还需要进行较为繁琐的处理。为此,美国杜克大学开发了基于VASP(一种第一性原理材料计算软件)的高通量密度泛函材料计算框架AFLOW(Automatic Flow),并建立了基于AFLOW 的材料数据库(aflowlib.org),用于存储通过AFLOW 计算产生的材料物性数据。可存储的物性数据包括相图、电子结构和磁性数据等。该数据库是在对大量不同组份和结构的物质进行筛选与计算后得到的,包括3 000 多万种化合物以及5 亿多条计算的物化性质数据。在该数据库的基础上,杜克大学和法国CEA 研究机构合作,利用高通量材料计算方法,基于ICSD 晶体结构数据库,从AFLOW 材料物性数据库中抽取了2 500 多种烧结化合物,并进一步计算了其热电性能,发现有大功率因数期望值的烧结化合物倾向于呈现出大的带隙、重的载流子质量以及每个晶胞含有很多原子等特征。MatCloud+第一原理计算数据库构建方法与技术路线如图3所示。

Fig.3 The first principle Computing database Construction method and technical route of MatCloud+图3 MatCloud+第一原理计算数据库构建方法与技术路线

通过将计算数据与实验数据进行比对,以方便检验理论模型,提供新的实验思路。其中涉及到面向材料基础数据的知识挖掘技术(如研究化合物的热力学及化学稳定性问题等),以及非结构化文本(如文本、图表信息)挖掘技术等。最终面向基础研究人员、材料学家、材料设计开发企业等提供多样化的材料查找方法,从数万种材料中智能地推荐同类材料,以拓宽材料开发人员的视野。因此,通过第一性原理计算构建第一性原理计算数据库有着重要意义。

以第一原理计算为例,基于高通量计算驱动引擎,MatCloud+提出第一原理计算数据库构建方法和技术,如图4所示。

Fig.4 A workflow template of phono calculation图4 一个声子计算的工作流模板

为保证数据质量和精度,数据库包括初始第一性原理计算数据库和校验后的第一性原理计算数据库。其中,计算精度设置、泛函选择、截断能选取、计算过程是否收敛等都会影响计算精度和误差。第一性原理计算所得材料的各种物理化学性质应该得到存储,标准化、规范化的信息存储有利于实现自动查询、自动分析与数据挖掘。Mat-Cloud+提供了一种构建第一性原理计算数据库的方法,通过高通量计算驱动引擎,允许用户大批量地开展计算或高通量筛选,自动对计算结果进行数据提取和规范化加工,衍生出更多物理化学性质。目前MatCloud+主要支持结构弛豫、态密度、能带、弹性常数、介电常数、磁矩等基本性质计算,也支持声子谱计算、团簇展开的复杂计算等。此外,MatCloud+还针对不同材料,如锂电材料、催化材料、半导体材料、热电材料等开发了各种工作流模板。无论是基本性质计算、复杂性质计算都是以一种工作流的方式实现所有步骤的自动流程化。复杂性质的计算也是通过工作流模板进行的,如图4所示的声子谱计算工作流模板。

MatCloud+材料数据库包括晶体结构库、分子结构库与计算物性库。本文以晶体结构库和计算物性库为例进行说明,分子结构库的建设理念与晶体结构库相同。

(1)晶体结构库。MatCloud+的晶体结构库包含晶体空间群、原子种类、原子位置等信息,可能的数据来源包括:①文献录入和爬虫抓取。文献中的信息分散不集中,类似于搜索引擎,从网络抓取可参考springer materials 等,需要标记数据源;②理论计算优化。通过高通量第一性原理计算产生大量计算数据,高通量第一性原理计算理论优化后的数值同样需要标记数据源,给出计算中使用的关键参数,如交换关联势、k 点取样密度、赝势(全势)等;③从其它数据库获取。可参考ICSD、Pauling File 等,这些数据库均为商业数据库,此外也有一些开源的晶体结构数据库,如COD 等;④用户愿意公开的晶体结构数据。对于用户不愿公开的晶体结构数据(包括性质数据),用户可选择暂不公开,或一段时间(如2 年、3 年)后再公开。对于用户愿意公开的数据,MatCloud+将在机时上给予优惠,甚至减免。

这里以Bi2Se3 为例,说明晶体结构数据库所存储的信息。部分晶体结构库数据信息如表1 所示。目前,Mat-Cloud+所记录的晶体结构信息远多于以下列举的,这里仅进行概要说明。

Table 1 Partial data information of crystal structure library表1 部分晶体结构库数据信息

(2)计算物性库。计算成功后得到的只是结果文件,尚需作进一步处理,才能到用户所关注的物化性质数据。MatCloud+能自动从计算结果文件中抽取关键的物化性质数据,这也是MatCloud+高通量计算平台的最大特点之一。这些存取的数据还可链接到存储计算数据的空间以供进一步分析,部分能量数据、电子数据及相关元数据列举如下:①总能量、原胞体积等(文本):通过SCF 计算即能直接获得;②能隙、布居数、磁矩(文本):通过常规的计算分析得到;③能带、态密度(图形);④赝势方法或全势方法,如果是赝势则给出赝势版本;⑤交换关联势(LDA、GGA、HSE等);⑥+U(实现版本及U、J 的数值);⑦基矢选取(平面波的Cutoff)。

3 MatCloud-QE量子力学程序包

MatCloud+不仅提供了高通量多尺度材料计算并融合数据库和AI 的集成框架,支持以低代码开发方式快速进行各类不同材料体系数字化、智能化研发平台的定制化开发,而且有自己独自研发、自主可控的量子力学程序包MatCloud-QE 和分子动力学程序包MatCloud-MD。这里重点介绍MatCloud-QE 量子力学程序包,MatCloud-MD 分子动力学程序包的研发理念与MatCloud-QE 类似。

MatCloud-QE 量子力学程序包主要基于Quantum ESPRESSO[8]内核(简称QE),是国内首个以云原生为特点的量子力学程序包,用户使用浏览器通过MatCloud+材料云即可在线开展第一性原理计算,以及数据的自动化采集与管理,可极大地方便用户开展第一性原理计算以及高通量计算筛选。云原生(Cloud Native)理念最早由Matt[9]提出,微软将其定义为“:云原生体系结构和技术是一种设计、构造与操作在云中构建,且充分利用了云计算模型的工作负载方法”[10]。除云原生的特点外,MatCloud-QE在QE 内核基础上,动态拓展了基础QE程序所不具备的计算功能(如发射率、断裂强度等)。通过MatCloud-QE 第一原理计算程序包与MatCloud+高通量多尺度材料集成计算材料云接口,实现了高通量第一性原理计算加速、参数智能推荐、自动前处理和后处理、功能组件化与使用图形化、云端拖拽式流程设计等功能,用户使用浏览器通过MatCloud+材料云即可在线进行计算以及数据的自动化采集和管理,极大地方便了用户开展第一性原理计算以及高通量计算筛选。

Quantum ESPRESSO 是一款开源的量子力学程序包,除具备常规的第一性原理计算功能外,还支持超导计算、电子能量损失谱、弹道输运等功能[8]。然而,当用户使用QE 计算时会遇到诸多困难。例如,计算模拟前用户需要熟悉QE 的输入文件格式与参数,以及Linux 的使用方式与提交命令;计算模拟结束后,用户需要明确如何从大量输出文件中找到自己想要的数据。另外,QE 本身虽然支持并行计算,但是无法很好地支持高通量计算。

MatCloud-QE 量子力学程序包在QE 内核基础上,开发了高通量第一原理计算加速算法、参数智能推荐算法、输入结构统一算法、自动前处理后处理引擎、组件化引擎、图形化引擎以及工作流接口算法程序等,从而增加了QE基础程序所不支持的高通量第一原理计算加速、输入结构统一、全程图形化展示、智能参数推荐、数据自动提取并实时入库等功能,进一步降低了第一性原理计算门槛,提升了其使用效率。

MatCloud-QE 在QE 内核上的主要创新在于:通过AI实现了对大批量高通量第一原理计算作业处理的加速;通过软件定义材料计算模拟,将模型搭建、高通量建模、各任务间数据流动(如几何优化、静态计算)、参数设置、赝势处理、计算数据后处理、计算数据持久化以及机器学习等关键环节图形化与组件化,便于用户通过鼠标拖拽方式实现高通量筛选逻辑的“自组装”;通过“建模→计算→数据→AI”的云端自动化流程,解决了材料计算参数设置复杂、赝势处理繁琐、数据后处理易出错、计算数据易丢失等问题,计算模拟一旦结束,自动形成材料计算数据库。

3.1 基于AI的高通量第一原理计算加速算法

随着超级计算的普及和机时成本的下降,开展第一性原理计算的模式也不再停留在以往单一的第一性原理计算上,高通量计算筛选已成为一种新的模式和手段。高通量材料计算筛选是指对大量晶体或分子通过理论计算进行筛选,得到满足预定义筛选描述符的目标结构,也称高通量虚拟筛选。如何从大量候选结构空间中通过“筛选漏斗”快速筛选出目标结构,时效性和准确性这对矛盾体一直是高通量材料计算筛选一个最核心的问题。基于第一性原理计算筛选的时间短,但准确性会受到影响。若要提升准确性,筛选时间和计算成本也会增加。

为解决该问题,本文基于QE 内核开发了基于AI 的高通量第一性原理计算加速算法,采用与通过第一性原理计算获取物性具有等效作用的代理模型机制,以加快高通量计算筛选。也即是说,“筛选漏斗”中的筛选描述符值可由代理模型帮助获取。由于通过代理模型获取相关描述符值的速度相比直接通过QE 计算获取描述符值的速度有着量级的提升,因而可提高筛选效率。

3.2 参数智能推荐算法

不同元素种类、计算精度、K 点的选取,往往有着不同的第一性原理计算参数设置,或对计算核数、内存有不同要求。若选择不正确,往往会导致计算作业失败。对于初次开展第一性原理计算的用户,如何选取参数给其带来了很大困扰。因此,本文参照大量文献开发了QE参数智能推荐算法,能够针对常见的元素种类、计算精度、K点选取等,自动推荐一些最优参数,从而避免用户选择参数时的困扰。

3.3 结构模型统一算法

QE 输入文件中结构数据的获取需要涉及到模型搭建、结构文件转换和文件拆分3 个步骤,模型的搭建和结构转换通常需要借助第三方软件来实现,用户使用时非常不便。因此,基于QE 基础程序,本文开发了统一的结构导入算法,对结构进行了逻辑上的统一,令用户不再需要考虑文件格式,同时支持批量结构导入,并支持导入多种晶体结构文件作为QE 的输入结构。同时,该结构模型统一算法还提供了与MatCloud+材料云的接口,使之与Mat-Cloud+材料云的建模组件协同,实现了大部分结构调控功能。此外,MatCloud+材料云结构建模组件可让用户不再使用第三方建模软件,仅通过浏览器即可实现“模型搭建—计算—数据—AI”的端到端一体化。

3.4 后处理引擎

标准的QE 计算任务正常结束后,在传统情况下,用户需要利用后处理软件或脚本自行处理数据(如采用第三方的Origin 软件),处理得到的结果大多保存在本地电脑或各大云盘中,数据相互之间无关联,也不能直接进行计算结果的可视化(如能带、态密度、声子谱等)。一个课题组团队中,人员的流进流出往往导致数据丢失,后期想要复用数据难度极大。因此,在QE 标准程序的基础上,本文开发了后处理引擎,使得在标准QE 计算程序完成后,不仅可以自动提取输出文件中的关键数据,而且可以将得到的关键数据自动实时保存在云端数据库中。在保证数据安全的基础上,还可利用数据库对数据进行二次筛选和复用。

3.5 组件化引擎

QE 内核拥有十几个功能模块,而仅PWscf一个包就含有200 多个参数,对于初学者来说大部分都晦涩难懂。因此,在QE 内核基础上,本文开发了组件化引擎,其中包括组件库、组件参数设置与调用算法。根据QE 功能的不同,从QE 各个模块中抽取独立的功能形成QE 基础内核所不具备的组件库。同时开发了与MatCloud+材料云的量子力学服务接口,使其能呈现为一个个图形化组件。同时结合上述3.2 节中的参数智能推荐算法,可为每个组件推荐关键参数,用户使用时仅通过点选方式即可选择组件、设置参数。另外,为方便中文用户,组件化引擎还开发了中文参数库,给每个参数都提供了中文使用帮助,帮助用户了解参数的意义,从而方便地选择参数。

针对赝势及其内部参数获取繁琐的问题,组件化引擎将全种类赝势整合到每个组件中,用户仅需点选想要选择的赝势种类,即可为每个元素自动分配此类型的赝势,并结合元素和赝势种类自动给出推荐的截断能。LibXC是目前最全面、最强大的交换关联—泛函库,一直得到业界开源社区的维护。LibXC 泛函库包括各种泛函,如LDA、GGA、杂化泛函以及metaGGA等。为了让用户更加便捷地选择交换关联泛函,本文给组件库开发了专门接口,使其对LibXC提供全面的支持。

3.6 图形化引擎

在QE基础内核的基础上,本文开发了图形化引擎算法,其核心理念在于:基于软件定义的理念重新定义了第一性原理计算的操作,将模型搭建、高通量建模、各任务间数据流动(如几何优化、静态计算)、参数设置、赝势处理、计算数据后处理、计算数据持久化等关键环节进行图形化处理。此外,开发了图形化引擎与MatCloud+材料云的专门接口,可让用户通过灵活的拖拽方式实现计算任务的自组装。同时实现了QE高通量材料计算“建模—计算—数据—AI”的云端一体自动化流程,直接连接千核/万核集群,解决了材料计算参数设置复杂、赝势处理繁琐、数据后处理易出错、计算数据易丢失等问题。

3.7 物理化学性质计算

MatCloud-QE 除可进行基础QE 内核第一性原理计算所支持的物理化学性质计算外,还增加了基础QE 内核所不支持的一些物理化学性质计算(如发射率、断裂强度等),且所支持的计算类型还在不断增加。

3.8 MatCloud+材料云的API接口

仅使用QE基础内核,用户不仅需要购买计算集群,而且需要编译安装QE、准备提交脚本等,这就需要用户具备一定的Linux语言基础。为更好地利用MatCloud+材料云框架所提供的功能,MatCloud-QE第一性原理计算程序包专门提供了与MatCloud+材料云的接口,使得通过MatCloud+材料云可便捷地使用MatCloud-QE 第一性原理计算程序包。由于MatCloud+材料云本身直接对接国家超算中心,用户不需要考虑集群和软件配置环境的问题,而是直接通过浏览器进行结构建模、设计工作流程并选择超算,点击提交按钮即可开展第一性原理计算。计算一旦结束,数据直接进行可视化和入库,无需使用任何第三方软件。另外,基于该接口程序,用户可通过MatCloud+材料云拖拽式流程实现批量QE任务的提交,一次性可计算多个结构的多个性质,整个工作流程无需人工操作任何文件,各计算任务有效协同,不仅最大化利用了碎片化时间,而且杜绝了因误操作导致的各种问题。

4 应用与示范

4.1 示范案例1:高通量材料计算

基于MatCloud+材料云,以过渡态搜索和截断能收敛性计算为例,说明MatCloud+材料云的自动化、流程化与图形化特点。

4.1.1 过渡态搜索

化学反应通常伴随着热量的吸收与释放,而反应速率通常与反应需要克服的能量势垒直接相关。通过过渡态计算可得到从反应物到产物需要的最大能量、过渡态结构及整个反应的吸/放热量,从而解释粒子的扩散迁移及分解的难易程度。

过渡态搜索常用到的方法包括NEB方法和CI-NEB 方法。NEB(Nudged Elastic Band)方法是一种在已知反应物与产物之间寻找势能面上鞍点和最小能量路径的方法,该方法的工作原理是优化反应路径上的许多中间图像。每个图像都能找到尽可能低的点(能量),同时保持与相邻图像相等的间距。这种受约束的优化是通过在图像之间沿路径添加弹簧力,以及根据垂直于路径的潜在作用而投影出力的分量来完成的。不同于NEB 方法,CI-NEB 方法(Climbing Image Nudged Elastic Band,CI-NEB)是对前者的一个小修改,由于能量最高的图像被移动到鞍座点,并且其感觉不到弹簧力,相反,沿切线的此图像的真实力是反转的。通过该方式,图像试图最大化其沿路径的能量,并最小化所有其它方向上的能量。当此图像收敛时,其将位于确切的鞍点。

过渡态搜索的一个难点在于:基于上述算法的整个搜索过程如何自动化、流程化地完成。MatCloud+通过工作流技术解决了该难点问题。MatCloud+提供的一个过渡态自动化搜索工作流如图5所示。

Fig.5 Workflow of transition state auto search图5 过渡态自动化搜索工作流

初末态匹配组件用于上传初态结构和末态结构,并作相应的匹配处理。一旦参数设置完毕,启动该工作流,工作流就会在云端自动协调融合了CI-NEB 方法的第一性原理计算与基于Dimer 的过渡态优化。过渡态搜索结束后,点击“View Task”可直接查看过渡态能垒图(见图6),结果均自动保存在材料数据库中。

Fig.6 Transition state energy barrier plot by MatCloud+图6 MatCloud+计算过渡态能垒图

4.1.2 收敛性测试

截断能参数ENCUT 决定了包含平面波函数动能的极限,平面波相关设置直接关系到计算精度。因此,计算一个体系时有必要找到一个最优的ENCUT 值,以拟合所需精度,同时保证在计算成本上合理。收敛性测试的难点在于如何生成大量数据点,以及从中自动地找出最优点。

MatCloud+提供了收敛性测试功能,用于生成大量数据点,以及确定最优的截断能值、K 点值等。其理念在于不断增大对应参数的值,当连续两次计算的能量相差小于一定数值时即可认为收敛,此时的值即为一个较为合适的值。MatCloud+提供了自动进行参数收敛性测试计算的模板(如截断能、K 点)。一个确定截断能参数的收敛性工作流模板如图7所示。

Fig.7 Workflow templet that determines the cut-off energy values for convergence图7 确定截断能参数的收敛性工作流模板

生成截断能数据的核心参数设置如图8 所示,其中最小能量值为200eV,最大能量值为500eV,能量值间隔为100eV。

Fig.8 Core parameter setting图8 核心参数设置

参数设置完毕后启动工作流,工作流负责大量第一性原理计算作业的生成、提交和监控。计算完毕,截断能值的收敛性测试结果如图9 所示。从图中可以看到,选择截断能值为350应该会获得较好结果。

4.2 示范案例2:MatCloud+减少人工干预90%以上

以石墨为代表的层状电极材料在离子电池中得到了广泛研究与应用。对于二维层状电极材料,其层间距与电池性能表现有着直接关系。之前的实验和理论研究都关注于层状材料层间距扩大前后的性能对比上,而没有考虑层间距如何取值才能达到最佳效果,对于层状材料电极中层间距对性能的影响也缺乏深入的理论探索。

北京大学物理学院采用高通量计算筛选,系统研究了碱金属离子(Li+、Na+、K+)电池中层状材料电极性能对其层间距的依赖性。通过采用MatCloud+,人工干预减少了90%。通过综合考虑石墨/石墨烯电极随层间距连续变化过程中的结构、能量、电子学、离子学的性能表现,找到了石墨/石墨烯电极在不同碱金属离子电池中的最佳层间距,得到的研究结果也可扩展应用于其他类似的层状电极材料中,并指导实验选择合适的层间工程技术。

该研究利用不同碱金属离子(Li+、Na+、K+)电池中层状材料层间距对电极的影响,涉及“多结构、多性质”的计算,是一种典型的高通量计算筛选。MatCloud+在本研究中体现出的4 个明显优点在于:①自动化调控层间距,生成候选空间,减少人为重复劳动;②人工干预次数明显变少,大量工作通过工作流引擎自动流程完成,能够按流程与预定计划按部就班地自动进行计算;③计算出错后,部分错误能自动纠错,避免了重复计算,进一步提高了效率;④自动搜索所有高对称吸附位点,减少人工劳动力,同时避免遗漏。

Fig.9 Convergence test result of cut-off energy(ENCUT)图9 截断能ENCUT收敛测试结果

在研究中,迁移势垒计算涉及Li/Na/K 共9 个结构,吸附容量计算涉及Li/K 共6 个结构。在传统方法中,每个结构不仅需要分别进行计算,结构优化/静态计算/插点/势垒计算都需要分别提交计算作业,而且计算完毕后需要人工将计算结果下载下来进行手动处理,因此共计约有60 次人工作业提交以及60 次人工数据处理,共计120 次人工操作。而采用MatCloud+,针对迁移势垒的计算,通过工作流引擎,人工仅需对3 个碱金属计算操作2 次(共计6 次);针对吸附容量的计算,通过工作流引擎,人工仅需对2 个碱金属操作2 次(共计4 次),总计人工操作10 次,剩下的110次人工处理全部由MatCloud+帮助完成,人工干预减少了90%左右,极大地提高了效率(见图10)。对于高通量计算筛选而言,供筛选的结构越多,即候选空间越大,Mat-Cloud+效率提升越明显。而且筛选过程越复杂,MatCloud+效率提升越明显。

Fig.10 Comparison of manual intervention times between Mat-Cloud+and traditional methods图10 MatCloud+与传统方式人工干预次数比较

4.3 示范案例3:MatCloud+效率提升30%以上

本文以石墨烯吸附COOH 分子计算为例,比较传统方式与采用MatCloud+方式开展材料计算的优劣。

4.3.1 材料计算传统方式及步骤

假设一个对材料计算比较熟悉的用户知道如何开展计算,以及要采用哪些软件,概括起来为“4 个步骤,6 个软件”。4 个步骤分别为:①建模;②准备输入文件;③计算;④后处理。6 个软件分别为:VESTA、XShell、Xftp、P4vasp、vaspkit、Origin。

计算步骤如下:

(1)采用软件VESTA 进行建模(见图11),耗时4min。其中左图为利用VESTA 对石墨烯单胞进行括胞操作,右边为添加COOH 分子。具体步骤为:①首先对石墨烯单胞进行扩胞;②在石墨烯表面手动添加COOH 分子,移动COOH分子到不同的吸附位点;③将结构导出(POSCAR格式)。

Fig.11 Software VESTA modeling图11 软件VESTA建模

(2)准备输入文件。首先利用Xshell 软件登录到超算中心,然后输入文件准备(静态计算)(耗时4min),需要的软件为:XShell、Xftp、VESTA。文件包括:①POSCAR:将VESTA 软件导出的.vasp 文件通过Xftp 上传,并更改名字为POSCAR;②INCAR:设置控制计算的各个参数;③POTCAR:查看POSCAR 文件中包含的原子种类,在相应的赝势库中找到原子的赝势,新建为此结构的POTCAR 文件;④KPOINTS:手动写入;⑤作业提交脚本:手动编写作业提交脚本。

(3)提交任务进行计算(耗时3min)。首先输入文件准备(DOS 和能带计算,耗时1min),利用Linux 指令新建文件夹,命名为dos,并将CONTCAR、POTCAR、INCAR、KPOINTS、CHGCAR、脚本复制到文件夹中,修改INCAR 中的参数。然后提交任务进行静态计算、能带计算和态密度计算(耗时12min)。

(4)后处理(耗时5min)。采用P4vasp、vaspkit、Origin软件进行DOS 图、PDOS 图、能带图绘制。DOS 图绘制具体操作如下:①在Xftp 中将vasprun.xml 文件下载到本地;②打开P4vasp,点击绘制DOS 图;③在P4vasp 中输出dos.dat文件;④打开Origin,导入dos.dat,点击绘制线图;⑤调整各种显示以更好地表达图片。

上述过程总计耗时约30min。由于使用软件较多,人工干预也较多,步骤较为繁琐。

4.3.2 采用MatCloud+的方式与步骤

使用MatCloud+作上述同样的计算,计算步骤如下:①浏览器登录到MatCloud+,利用拖拽方式设计一个工作流(见图12);②导入结构;③利用吸附模块开展吸附操作;④设置能带计算和态密度计算参数;⑤提交作业,下载结果(计算完毕后,能带数据和态密度数据已在数据库中)。只需通过浏览器登录,不需要下载任何软件。其中建模、准备输入文件、计算、后处理4 个步骤分别耗时2min、2min、15min、0min,总共耗时19min。

Fig.12 Calculation work of molecule adsorption modelling-static calculation-energy band-density of states图12 吸附建模—静态计算—能带—态密度计算工作

4.3.3 分析比较

开展同样的材料计算,传统方式与采用MatCloud+的耗时对比如表2 所示。可以发现,相比于传统计算方法的30min,采用MatCloud+将时间缩短到19min,减少耗时11min,效率提高了36.6%(见图13)。

Table 2 Time consumption comparison of two approaches表2 两种方式耗时对比 min

Fig.13 Time consumption comparison of two approaches图13 耗时对比

4.4 示范案例4:密封圈材料抗老化性能研究

4.4.1 背景

丙烯腈—丁二烯橡胶(NBR)、偏氟乙烯系氟橡胶(FKM)、聚醚醚酮橡胶(PEEK)是目前密封圈的常用材料。这种类型的合成聚合物通常对油、燃料和其他化学品具有耐受性,因此广泛用于汽车、航空工业中的燃油处理软管、储氢罐密封件、索环等的制造。然而,聚合物材料在热、氧、光等条件下容易发生老化现象,导致其形状、颜色和拉伸强度发生不可逆的变化,严重了影响其长期使用性能。因此,有必要研究材料的老化机理,更合理地预测其使用寿命。

4.4.2 MatCloud+模拟3类材料抗老化性能

本文基于反应力场(ReaxFF)的分子反应动力学(Molecular Reaction Dynamics,MRD)模拟开展3类材料的抗老化研究。在ReaxFF中,原子是动态连接的,由原子键序的实时计算决定,因此可很好地描述键的形成和解离过程。ReaxFF已成功应用于各种反应系统,如聚合物、化石燃料、含能材料以及小分子燃烧和过渡金属催化过程。利用MatCloud+设计的基于LAMMPS的高通量计算工作流如图14所示。

Fig.14 A high-throughput LAMMPS simulation workflow图14 基于LAMMPS的高通量计算工作流

在该项研究中,MatCloud+与北京低碳研究院合作,利用MatCloud+设计了分子动力学工作流模板。通过高通量计算,模拟在无H2和有H2环境下,3 类材料在达到平衡状态后,以100K/ps 的加热速率从300K 加热到3 800K,持续时间为35ps。在3 类材料分别升温到3 800K 状态后,研究以下问题:①通过模拟产物随时间的变化,可得到分解过程中每种产物最开始产生、开始分解的温度以及最终产物是什么;②H2的加入对每种材料分解温度、分解过程、最终产物的影响;③对3 种材料耐高温性能以及对H2分子的敏感性作对比。通过“高通量+分子动力学”方式,开展3 类材料的分子动力学模拟,结果表明,该方式相比传统方式减少人工干预达到90%。

“高通量+分子动力学”模拟在有H(2上图)和无H(2下图)环境下,PEEK热解过程中产物随时间变化关系如图15所示。

Fig.15 Product change over time during PEEK pyrolysis with and without H2图15 在有H2与无H2环境下PEEK热解过程中产物随时间变化关系

5 未来发展方向及应用领域

MatCloud+材料云目前已实现了国产高通量多尺度全流程材料集成设计工业软件和云基础设施从0 到1 的突破,目前注册用户数已接近5 000,涵盖300 多家高校、科研院所和企业,覆盖10多个国家和地区,已进入了“用户使用—反馈—提高—再使用—再反馈—再提高”的良性循环。今后,MatCloud+材料云产品的拓展主要包括以下几个方面:①研发更多用于材料智能设计的人工智能算法和策略;②研发更多材料结构建模算法;③进一步研发自主的MatCloud-QE 和MatCloud-MD 量子力学与分子动力学程序包;④不断沉淀和积累材料计算数据;⑤朝着从理论计算到实验验证的新材料全流程、全尺度数字化研发拓展。

目前,微尺度材料集成设计工业软件不仅被国外软件所垄断,而且这些传统软件也不能很好地融入“云计算、高通量计算筛选、跨尺度自动化、材料数据库、AI 赋能”等新出现的材料研发理念和模式,影响了我国新材料数字化研发的普及与应用,也制约了国产材料设计制造工业软件开发。MatCloud+材料云可面向高校、科研院所提供基于公有云的材料计算、数据、AI 服务,用户通过浏览器即能使用。在面向企业级的新材料研发方面,我国新材料研发大多仍基于实验试错法,而缺乏将人工智能、计算仿真模拟、实验数据有机融合的材料协同创新新型研发范式,无法加速新材料的研发与工程化应用。MatCloud+材料云针对企业级新材料研发,不仅可提供私有化部署,还可以与迈高科技的MatFusion 技术融合,提供连接计算数据与实验数据的新材料智能设计范式,在新能源(包含锂电相关、储氢相关、光伏相关等)、化学化工(包含催化剂、石油化工、塑料&橡胶等)、航空航天(包含零部件制造、推进剂、复合材料、高温/耐火材料)、电子信息(包含半导体、显示材料、磁性材料)等新材料研发领域有着广泛应用。

6 结语

本文介绍了我国国产的集成量子力学与分子动力学微观多尺度材料集成计算工业软件MatCloud+材料云,将材料模型搭建、材料计算、计算流、材料数据库、计算集群、AI算法以及模型和工具一体化置于云端,用户仅需浏览器即可操作,无需进行任何下载和安装,打破了微观多尺度自动化流程材料计算工业软件被国外垄断的局面。其主要特点可概括为“高通量、多尺度、SaaS 化、流程化、智能化、自动化、图形化”。计算一旦结束,计算数据会被立即提取并存储于材料数据库中。在求解程序方面,基于QE第一原理计算内核进一步开发了高通量第一原理计算加速算法、参数智能推荐算法、输入结构统一算法、自动后处理引擎、组件化引擎、图形化引擎,以及更多的物性计算功能、MatCloud+接口等算法程序等,形成了具有“云原生”特点的第一原理计算程序包:MatCloud-QE。最后以4 个案例介绍了MatCloud+如何支持高通量多尺度材料计算,以及带给用户计算效率的提升,表明MatCloud+材料云在面向高校科研院所和企业级新材料研发方面有着广阔的应用前景。

猜你喜欢
第一性高通量尺度
高通量卫星网络及网络漫游关键技术
AuBe5型新相NdMgNi4-xCox的第一性原理研究
SO2和NO2在γ-Al2O3(110)表面吸附的第一性原理计算
高通量血液透析临床研究进展
财产的五大尺度和五重应对
Ka频段高通量卫星在铁路通信中的应用探讨
中国通信卫星开启高通量时代
W、Bi掺杂及(W、Bi)共掺锐钛矿TiO2的第一性原理计算
缺陷和硫掺杂黑磷的第一性原理计算
宇宙的尺度