CN115859597A - 基于杂化泛函和第一性原理的分子动力学模拟方法和系统 - Google Patents
基于杂化泛函和第一性原理的分子动力学模拟方法和系统 Download PDFInfo
- Publication number
- CN115859597A CN115859597A CN202211483793.8A CN202211483793A CN115859597A CN 115859597 A CN115859597 A CN 115859597A CN 202211483793 A CN202211483793 A CN 202211483793A CN 115859597 A CN115859597 A CN 115859597A
- Authority
- CN
- China
- Prior art keywords
- molecular
- molecular system
- preset
- wave function
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了基于杂化泛函和第一性原理的分子动力学模拟方法,包括:基于密度泛函理论和第一性原理构造分子系统的哈密顿量;对分子系统的哈密顿量进行对角化处理,根据分子系统的本征电子波函数和本征能量,更新分子系统的电子波函数;利用预设的分子动力学计算加速模型计算交换关联势能,更新分子系统的总能量;根据更新后的总能量,计算分子系统的原子力信息,并根据原子力信息,利用预设的分子动力学求解模型,得到预设时长的原子的速度关联信息;根据预设时长的原子的速度关联信息,得到分子系统的结构信息;根据预设配置信息选择深度学习加速卡迭代执行上述操作,直到满足预设收敛条件,得到分子系统的结构信息和原子速度信息。
Description
技术领域
本发明涉及物理、化学、材料生物领域,特别涉及一种基于杂化泛函和第一性原理的分子动力学模拟方法、系统、电子设备和存储介质。
背景技术
目前分子动力学模拟方法主要分为两种,一种是基于经典力学的分子动力学模拟方法,即Molecular Mechanics Simulations:通过经验力场,在经典力学的框架下,给定初始位置和速度,对分子体系时间演化(分子动力学)进行模拟;另一种是基于量子力学的分子动力学模拟方法,即Quantuam Mechanics Simulations:通过第一性原理(ab init)的方法,从体系电子的薛定谔方程出发,从头计算出物理量,再用动力学的方法进行模拟。基于经典力学的分子动力学模拟方法运算速度快,能够模拟较大晶胞的体系,但是该方法对物理和化学过程的描述必须依赖采用从头算方法或实验值拟合的经验力场,因此该方法的适用场景和计算精度存等方面存在较多问题,如涉及众多化学键断裂和生成的含能材料分解过程是不能模拟的。基于量子力学的分子动力学模拟方法基于从头算理论,精度高,不靠经验参数,理论上适用于任何体系,能够准确的描述复杂的原子间化学键变化等复杂过程,但该方法存在计算过程复杂度高、计算速度慢等问题。
发明内容
鉴于现有技术中的上述问题,本发明提供了一种基于杂化泛函和第一性原理的分子动力学模拟方法、系统、电子设备以及存储介质,以期能够解决上述问题之一。
根据本发明的第一个方面,提供了一种基于杂化泛函和第一性原理的分子动力学模拟方法,包括:
步骤一,初始化分子系统的电荷密度和电子波函数,基于密度泛函理论和第一性原理构造分子系统的哈密顿量,并将分子系统的电荷密度、电子波函数和哈密顿量以矩阵的形式离散化存储在计算机内存上;
步骤二,基于薛定谔方程,利用自洽场迭代方法对存储在计算机内存上的所述分子系统的哈密顿量进行对角化处理,并根据对角化处理得到的所述分子系统的本征电子波函数和本征能量,更新所述分子系统的电子波函数,直到达到预设的自洽场迭代的收敛精度;
步骤三,利用预设的分子动力学计算加速模型计算分子系统的哈密顿量中杂化了电子波函数的交换关联势能,并根据更新后的分子系统的电子波函数和交换关联势能,更新分子系统的总能量;
步骤四,根据更新后的分子系统的总能量,利用海尔曼-费曼原理计算分子系统的原子力信息,并根据分子系统的原子力信息,利用冲量定理、牛顿第二定律以及预设的分子动力学求解模型,得到预设时长的分子系统中原子的速度关联信息;
步骤五,根据预设时长的分子系统中原子的速度关联信息,得到预设时长演化后的分子系统的结构信息,并利用预设的电子波函数拟合模型更新分子系统的电子波函数;
根据预设配置信息选择深度学习加速卡迭代执行步骤二至步骤五,直到满足预设收敛条件,得到分子系统的结构信息和分子系统的原子速度信息。
根据本发明的实施例,上述利用预设的分子动力学计算加速模型计算分子系统的哈密顿量中杂化了电子波函数的交换关联势能包括:
根据用户输入的基于第一性原理的分子系统的计算参数初始化预设的分子动力学计算加速模型,其中,用户输入的基于第一性原理的分子系统的计算参数包括预设的分子动力学计算加速模型的收敛精度、特征求解器的精度、迭代次数、用于控制所述预设的分子动力学计算加速模型的布尔型变量以及所述预设的分子动力学计算加速模型计算所需要的插值数量;
根据分子系统的哈密顿量,获取分子系统中的原子种类、原子数量和原子坐标并输入到预设的分子动力学计算加速模型中;
利用预设的分子动力学计算加速模型通过分子系统的电子波函数轨道地迭代计算得到分子系统的哈密顿量中杂化了电子波函数的交换关联势能,得到分子动力系统的交换关联势能。
根据本发明的实施例,上述预设的分子动力学求解模型包括VelocityVerlet求解模型和NoseHoover求解模型。
根据本发明的实施例,上述预设的电子波函数拟合模型包括XL-BOMD拟合模型和ASPC拟合模型。
根据本发明的实施例,上述根据预设配置信息选择深度学习加速卡迭代执行上述操作,直到满足预设收敛条件,得到分子系统的结构信息和分子系统的原子速度信息包括:
根据预设配置信息,选择进行分子动力学模拟的深度学习加速卡,并在选中的深度学习加速卡加载进行模拟计算的数学支持库,其中数学支持库包括BLAS和FFTW;
利用选中的深度学习加速卡迭代执行构造哈密顿量操作、对角化处理和电子波函数更新操作、分子系统总能量更新操作、速度关联信息获取操作以及分子结构获取操作和电子波函数重新拟合操作;
在满足预设收敛条件的情况下,将得到的分子系统的结构信息和分子系统的原子速度信息输出到预设格式的文件中并反馈给用户。
根据本发明的实施例,上述预设收敛条件包括预设时间步长、收敛精度以及特征求解器精度。
根据本发明的实施例,上述分子系统的结构信息包括漂移能量、结构坐标、原子位置以及原子速度。
根据本发明的第二个方面,提供了一种基于杂化泛函和第一性原理的分子动力学模拟系统,包括:
初始化和构造模块,用于执行步骤一,初始化分子系统的电荷密度和电子波函数,基于密度泛函理论和第一性原理构造分子系统的哈密顿量,并将分子系统的电荷密度、电子波函数和哈密顿量以矩阵的形式离散化存储在计算机内存上;
电子波函数更新模块,用于执行步骤二,基于薛定谔方程,利用自洽场迭代方法对存储在计算机内存上的分子系统的哈密顿量进行对角化处理,并根据对角化处理得到的分子系统的本征电子波函数和本征能量,更新分子系统的电子波函数,直到达到预设的自洽场迭代的收敛精度;
总能量更新模块,用于执行步骤三,利用预设的分子动力学计算加速模型计算分子系统的哈密顿量中杂化了电子波函数的交换关联势能,并根据更新后的分子系统的电子波函数和交换关联势能,更新分子系统的总能量;
速度关联信息计算模块,用于执行步骤四,根据更新后的分子系统的总能量,利用海尔曼-费曼原理计算分子系统的原子力信息,并根据分子系统的原子力信息,利用冲量定理、牛顿第二定律以及预设的分子动力学求解模型,得到预设时长的分子系统中原子的速度关联信息;
结构计算和拟合模块,用于执行步骤五,根据预设时长的分子系统中原子的速度关联信息,得到分子系统的结构信息,并利用预设的电子波函数拟合模型更新分子系统的电子波函数;
深度处理器模块,用于根据预设配置信息选择深度处理器迭代执行步骤二至步骤五,直到满足预设收敛条件,得到分子系统的结构信息和分子系统的原子速度信息。
根据本发明的第三个方面,提供了一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
其中,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器执行基于杂化泛函和第一性原理的分子动力学模拟方法。
根据本发明的第四个方面,提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行基于杂化泛函和第一性原理的分子动力学模拟方法。
本发明提供的基于杂化泛函和第一性原理的分子动力学模拟方法,通过预设的分子动力学计算加速模型能够大大提高带有杂化泛函交换项的分子系统的总势能量计算,减少了计算的迭代次数和内存消耗,大大节约了分子系统的结构信息和原子速度信息的计算时间;同时本发明提供的基于杂化泛函和第一性原理的分子动力学模拟方法不依赖于国外深度学习加速卡。
附图说明
图1是根据本发明实施例的计算化学中的雅克布天梯的示意图;
图2是根据本发明实施例的基于杂化泛函和第一性原理的分子动力学模拟方法的流程图;
图3是根据本发明实施例的获取分子系统中交换关联势能的流程图;
图4是根据本发明实施例的得到分子系统的结构信息和分子系统的原子速度信息的流程图;
图5是根据本发明实施例的基于杂化泛函和第一性原理的分子动力加速计算框架示意图;
图6是根据本发明实施例的基于杂化泛函和第一性原理的分子动力学模拟系统的结构示意图;
图7是根据本发明实施例的分子动力学模拟方法验证图;
图8是根据本发明实施例的分子动力学强标度示意图;
图9是根据本发明实施例的分子系统的电荷密度示意图;
图10示意性示出了根据本发明实施例的适于实现基于杂化泛函和第一性原理的分子动力学模拟方法的电子设备的方框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明作进一步的详细说明。
现有技术中,基于第一性原理的分子动力(AIMD)学模拟方法采用的是低精度的局域密度近似(Local-Density Approximation,LDA)与广义梯度近似(GeneralizedGradient Approximations,GGA);图1是根据本发明实施例的计算化学中的雅克布天梯的示意图,如图1所示,随着人们对精度日益增长的高需求,需要更复杂的泛函,即发展杂化泛函(Hybrid functional),例如,在含有带隙的钙钛矿体系,如果一开始的第一性原理部分就算错了,低估了带隙,那么后续算皮秒级的分子动力学,整个势能面用的全都是错误的,从源头就开始错了,后面就无法正确地去计算光谱等信息,但是在实际计算过程中,杂化泛函带来的计算代价是非常高的,例如美国能源中心,每次利用1024核(约32节点),计算372个原子,每皮秒需要5天。由于杂化泛函包含了Hartree-Fock(哈特里-福克方程)的exact-exchange项,其需要不仅仅是密度,更需要波函数的信息,因此包含HF(哈特里-福克方程)方法的计算,对内存、算力都有极高的需求;内存无法负担其巨大的计算量,计算速度慢到不可接受是该方法的问题,因此该方法的实际应用过程中仍然面临巨大的困难。
此外,国内科研人员面临着无法获取国际先进高端深度学习加速卡的困局,因此非常有必要发展新的分子动力学模拟方法以解决现有技术中的问题并同时支持国产高端深度学习加速卡。
本发明提供的基于杂化泛函和第一性原理的分子动力学模拟方法和系统,旨在解决现有的技术方案存在内存耗费大、计算速度慢、不支持国产高端深度学习加速卡等问题。
图2是根据本发明实施例的基于杂化泛函和第一性原理的分子动力学模拟方法的流程图。
如图2所示,上述基于杂化泛函和第一性原理的分子动力学模拟方法,包括操作S210~操作S260。
在操作S210,初始化分子系统的电荷密度和电子波函数,基于密度泛函理论和第一性原理构造分子系统的哈密顿量,并将分子系统的电荷密度、电子波函数和哈密顿量以矩阵的形式离散化存储在计算机内存上。
上述哈密顿量由公式(1)表示:
其中,H表示分子系统中的哈密顿量,由分子系统的总动能和总势能构成;是拉普拉斯算符,用于表示分子系统的总动能;Vion表示分子系统中原子与电子相互作用的势能;VH[*]是哈特里势能,用于表示电子之间相互作用所形成的势能;ρ表示分子系统中的电荷密度;Vxc[*]表述分子系统中的交换关联势能;φi表示分子系统中的电子波函数。
本发明的所有操作均在计算设备上进行,通过计算设备对分子动力学模拟方法所需要的数据进行预处理,并利用各种加速算法或模型改进对现有技术中分子动力学模拟的数据处理流程,从而达到节省计算设备内存并提高计算效率的目的。
上述操作S210将分子系统的电荷密度、电子波函数和哈密顿量以矩阵的形式离散化存储在计算机内存上既可以节省计算设备的内存,又可以提高后续各种加速算法的模拟的效率。
在操作S220,基于薛定谔方程,利用自洽场迭代方法对存储在计算机内存上的所述分子系统的哈密顿量进行对角化处理,并根据对角化处理得到的所述分子系统的本征电子波函数和本征能量,更新所述分子系统的电子波函数,直到达到预设的自洽场迭代的收敛精度。
在操作S230,利用预设的分子动力学计算加速模型计算分子系统的哈密顿量中杂化了电子波函数的交换关联势能,并根据更新后的分子系统的电子波函数和交换关联势能,更新分子系统的总能量。
上述操作S230,预设的分子动力学计算加速模型包括基于最小二乘法的拟合本征电子波函数计算加速算法、基于低秩分解技术的哈密顿量中交换算符的重构加速算法以及基于插值拟合算法的电子轨道对计算加速算法。
基于最小二乘法的拟合本征电子波函数计算加速算法用于控制拟波函数的数量和波函数,利用线性组合操作S220多个迭代步骤得到的本征波电子函数,通过哈密顿量与投影波函数的对易子构造残差,使用最小二乘法计算最优拟合系数,通过多步本征波函数的拟合提高输入波函数的信息质量,从而减小对角化的步数,加速整体分子动力学系统/模型的计算。
基于低秩分解技术的哈密顿量中交换算符的重构加速算法重新构造的哈密顿量中的低秩的交换算符,减少计算设备的内存消耗,从而加速计算。
基于插值拟合算法的电子轨道对计算加速算法根据插值数量、电子的本征波函数及给定的一组电子轨道波函数通过机器学习多类聚合(K-means)及最小二乘法构造新的插值轨道对,将操作S220中每步自洽场迭代中需要求解的电子个数的平方个泊松方程减少为所输入的插值数量个,减少计算设备的内存消耗,进而加速计算。
在操作S240,根据更新后的分子系统的总能量,利用海尔曼-费曼原理计算分子系统的原子力信息,并根据分子系统的原子力信息,利用冲量定理、牛顿第二定律以及预设的分子动力学求解模型,得到预设时长的分子系统中原子的速度关联信息。
上述海尔曼-费曼(Hellmann-Feynman)原理根据公式(2)确定:
其中,F(*)表示进行分子动力学模拟所需要的分子系统中的原子力信息;RI(t)表示分子系统中第I个原子在t时刻的坐标;ψ0表示分子系统中的基态的电子波函数;H表示分子系统中的哈密顿量。
上述海尔曼-费曼原理用于根据分子系统的总能量信息计算分子系统中的原子力信息。
在操作S250,根据预设时长的分子系统中原子的速度关联信息,得到预设时长演化后的分子系统的结构信息,并利用预设的电子波函数拟合模型更新分子系统的电子波函数。
上述预设时长演化后的分子系统的结构信息表示本发明所提供的模拟方法能够提供一定时间内分子系统的结构信息,如电子波函数的状态、预设时间(两个时间点之间)内电子的速度关联信息、电子的位置信息等。
在操作S260,根据预设配置信息选择深度学习加速卡迭代执行上述操作S220~操作S250,直到满足预设收敛条件,得到分子系统的结构信息和分子系统的原子速度信息。
被选中的深度学习加速卡可以是国外深度学习处理器也可以是国产深度学习处理器,例如中科曙光自主研发的国产深度处理器DCU。
本发明提供的基于杂化泛函和第一性原理的分子动力学模拟方法,通过预设的分子动力学计算加速模型能够大大提高带有杂化泛函交换项的分子系统的总势能量计算,减少了计算的迭代次数和内存消耗,大大节约了分子系统的结构信息和原子速度信息的计算时间;同时本发明提供的基于杂化泛函和第一性原理的分子动力学模拟方法不依赖于国外深度学习加速卡。
图3是根据本发明实施例的获取分子系统中交换关联势能的流程图。
如图3所示,上述利用预设的分子动力学计算加速模型计算分子系统的哈密顿量中杂化了电子波函数的交换关联势能包括操作S310~操作S330。
在操作S310,根据用户输入的基于第一性原理的分子系统的计算参数初始化预设的分子动力学计算加速模型,其中,用户输入的基于第一性原理的分子系统的计算参数包括预设的分子动力学计算加速模型的收敛精度、特征求解器的精度、迭代次数、用于控制预设的分子动力学计算加速模型的布尔型变量以及预设的分子动力学计算加速模型计算所需要的插值数量。
在操作S320,根据分子系统的哈密顿量,获取分子系统中的原子种类、原子数量和原子坐标并输入到预设的分子动力学计算加速模型中。
在操作S330,利用预设的分子动力学计算加速模型通过分子系统的电子波函数轨道地迭代计算得到分子系统的哈密顿量中杂化了电子波函数的交换关联势能,得到分子动力系统的交换关联势能。
上述哈密顿量中杂化了电子波函数的交换关联势能的计算过程由公式(3)和(4)确定:
Vxc[{φi}]=Vx[{φi}]+Vc[ρ] (3),
其中,φ表示分子系统的电子波函数,x表示交换项(exchange),c表示关联项(correlation)。
公式(4)是交换关联项的具体形式,从中可以看出,自由度由3增加为了3N,因此一旦使用,会增加极大的计算压力。必须利用改进的分子动力学计算加速模型,才能解决计算慢的问题。
根据本发明的实施例,上述预设的分子动力学求解模型包括VelocityVerlet求解模型和NoseHoover求解模型。
根据本发明的实施例,上述预设的电子波函数拟合模型包括XL-BOMD拟合模型和ASPC拟合模型。
XL-BOMD拟合模型是Extended-Lagrangian Born-Oppenheimer MoleculeDynamics;而ASPC拟合模型是Always Stable Predictor-Corrector。
图4是根据本发明实施例的得到分子系统的结构信息和分子系统的原子速度信息的流程图。
如图4所示,上述根据预设配置信息选择深度学习加速卡迭代执行上述操作,直到满足预设收敛条件,得到分子系统的结构信息和分子系统的原子速度信息包括操作S410~操作S430。
在操作S410,根据预设配置信息,选择进行分子动力学模拟的深度学习加速卡,并在选中的深度学习加速卡加载进行模拟计算的数学支持库,其中,数学支持库包括BLAS和FFTW。
BLAS(Basic Linear Algebra Subprograms,即基础线性代数子程序库)包括GEMM,GEMM表示通用矩阵乘(General Matrix Multiplication)的数学库,用于对数据进行卷积和全连接计算等。
上述FFTW(the Faster Fourier Transform in the West)是快速计算离散傅立叶变换的数学库,用于计算一维度或多维实和复数据以及任意规模的离散傅立叶变换。
同时加速卡中还可以加载物理模型的核函数,用于计算特征空间之间的映射;还可以加载根据物理模型重写的核函数,用于实现对应物理模型计算的加速。
在操作S420,利用选中的深度学习加速卡迭代执行构造哈密顿量操作、对角化处理和电子波函数更新操作、分子系统总能量更新操作、速度关联信息获取操作以及分子结构获取操作和电子波函数重新拟合操作。
在操作S430,在满足预设收敛条件的情况下,将得到的分子系统的结构信息和分子系统的原子速度信息输出到预设格式的文件中并反馈给用户。
上述操作S410~操作S430中被选中的深度学习加速卡,可以根据加速卡硬件架构的不同对物理模型中的代码进行重新编写、测试以及编译,从而对优化对上述操作的执行过程。
上述操作S410~操作S430中被选中的深度学习加速卡可以是国产高端深度学习加速卡,例如中科曙光自主知识产权的DCU。
根据本发明的实施例,上述预设收敛条件包括预设时间步长、收敛精度以及特征求解器精度。
根据本发明的实施例,上述分子系统的结构信息包括漂移能量、结构坐标、原子位置以及原子速度。
图5是根据本发明实施例的基于杂化泛函和第一性原理的分子动力加速计算框架示意图。
下面结合图5对本发明提供的上述方法作进一步详细的说明。
如图5所示,首先根据用户输入的电荷密度和波函数,基于密度泛函理论和第一性原理构建待模拟的分子系统的哈密顿量;然后根据薛定谔方程,利用预设的分子动力学计算加速模型对待模拟的分子系统的哈密顿量进行对角化,得到待模拟的分子系统的本征电子波函数和本征总能量;其次,根据得到的本征电子波函数和本征总能量,利用预设的分子动力学计算加速模型更新待模拟的分子系统的电荷密度,并更新哈密顿量中除杂化了电子波函数的交换关联势能项外其他所有的能量项,在哈密顿量的总能量收敛的情况下,根据预设的判断条件判断哈密顿量中交换关联势能是否收敛,如果交换关联势能不收敛,则重新构造哈密顿量并重新进行计算;在交换关联势能收敛的情况下且为满足用户指定的时间步长的情况下,进行分子动力学计算。
在分子系统的结构信息和速度信息计算过程中,首先根据哈密顿量,利用哈密顿正则方程组计算分子系统中原子的广义动量,如公式(5)所示:
然后转换为笛卡尔坐标系,即进行如公式(6)和(7)的计算,可得到公式(8)和(9)确定的分子系统的总势能。
表示第k个原子(或粒子)的速度,即(p=mv)动量表达式,公式(7)中的/>表示第k个原子(或粒子)动量对时间的求导,/>表示第k个原子(或粒子)势能对坐标的求导,fk表示第k个原子(或粒子)的力信息,从而可得到经典分子动力学方法就是求解3N个二阶微分方程或6N个一阶微分方程,N个粒子的动能和势能如公式(8)和(9)所示,T表示分子系统的总动能,V表示分子系统的总势能。
在从头算得到的势能面,获得原子力之后,采用多种求解算法包括VelocityVerlet算法及Nose-Hover算法等,以最常用的VelocityVerlet算法,即速度表示下的维尔莱算法为例,牛顿第二定律方程如公式(10)所示:
一般情况下,速度表示下的韦尔莱算法更为常用,它可以给出同一时间变量下的速度和位置。它实际上与基本的韦尔莱算法等价,精度相同。
首先根据牛顿第二定律方程对分子系统中原子的位置进行Taylor展开,如公式(11)和公式(12)所示:
其中,f表示力,r表示位置,v表示速度,m表示质量,t表示时间。
将公式(11)和(12)进行相减,得到公式(13):
将公式(11)中的t换成t+Δt可得到公式(14):
并将公式(14)代入公式(13)中得到公式(15):
公式(15)即分子系统中原子在预设时长下的速度关联信息。
图6是根据本发明实施例的基于杂化泛函和第一性原理的分子动力学模拟系统的结构示意图。
如图6所示,上述基于杂化泛函和第一性原理的分子动力学模拟系统600包括初始化和构造模块610,电子波函数更新模块620,总能量更新模块630,速度关联信息计算模块640,结构计算和拟合模块650以及深度处理器模块660。
初始化和构造模块610,用于执行操作S210,初始化分子系统的电荷密度和电子波函数,基于密度泛函理论和第一性原理构造分子系统的哈密顿量,并将分子系统的电荷密度、电子波函数和哈密顿量以矩阵的形式离散化存储在计算机内存上;
电子波函数更新模块620,用于基于薛定谔方程,对分子系统的哈密顿量进行对角化处理,根据对角化处理得到的分子系统的本征电子波函数和本征能量,更新分子系统的电子波函数;
总能量更新模块630,用于利用预设的分子动力学计算加速模型计算分子系统的哈密顿量中杂化了电子波函数的交换关联势能,并根据更新后的分子系统的电子波函数和交换关联势能,更新分子系统的总能量;
速度关联信息计算模块640,用于根据更新后的分子系统的总能量,利用海尔曼-费曼原理计算分子系统的原子力信息,并根据分子系统的原子力信息,利用冲量定理、牛顿第二定律以及预设的分子动力学求解模型,得到预设时长的分子系统中原子的速度关联信息;
结构计算和拟合模块650,用于根据预设时长的分子系统中原子的速度关联信息,得到分子系统的结构信息,并利用预设的电子波函数拟合模型更新分子系统的电子波函数;
深度处理器模块660,用于根据预设配置信息选择深度处理器迭代执行上述操作,直到满足预设收敛条件,得到分子系统的结构信息和分子系统的原子速度信息。
根据本发明的实施例,上述系统中的任意多个模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。例如上述模块610和模块620可以合并成第一性原理电子结构计算模块,以便得到分子动力学计算所需要的势能面信息;上述模块630和模块640可以合并成高精度杂化泛函计算模块以便利用相关加速算法提高对杂化泛函项的计算并减少计算设备的内存消耗;模块650可以改成动力学模拟计算模块,用于在获得原子力之后,采用多种求解算法计算步长之间的速度关系;深度处理器模块660可以直接使用国产深度处理器硬件支撑模块,在对软件代码进行重构后,可以对国产深度处理器进行支持。根据本发明的实施例,系统中的各个模块至少一个可以至少被部分地实现为硬件电路,或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。
为了更好地说明本发明提供的上述方法,下面结合具体实验对本发明所提供的上述方法作进一步的解释和验证。
图7是根据本发明实施例的分子动力学模拟方法验证图。
图8是根据本发明实施例的分子动力学强标度示意图。
目前现有的技术,由于杂化泛函交换项带来的极大的内存负担,本发明创造自研加速算法,减少了计算步数以及内存消耗,即图6所体现的accelerate版本,同时依赖国产深度计算处理器的硬件加持,能够完成上千原子体系的内存需求,并且将月级能够完成的计算减少为几天完成,百原子体系分子动力学模拟更是仅需数秒即可完成1步计算。
从图7中可以看出,针对目前现有的技术,由于杂化泛函交换项带来的极大的内存负担,本发明创造自研加速算法,减少了计算步数以及内存消耗,即图7中所体现的accelerate版本,同时依赖国产深度计算处理器的硬件加持,能够完成上千原子体系的内存需求,并且将月级能够完成的计算减少为几天完成,百原子体系分子动力学模拟更是仅需数秒即可完成1步计算。
在动力学方面,以计算机强标度为指标与国外知名软件VASP做对比,如公式(16)所示:
其中,根据公式(16)计算的0.4以上的结果,要远远高于VASP动力学0.25的结果;在不同计算资源下,根据公式(16)计算的本发明的强标度值如表1所示:
表1基于杂化泛函和第一性原理的不同资源对应的强标度值
DCU_accel | DCU | CPU_accel | CPU | |
8 | 1 | 1 | 1 | 1 |
16 | 0.909264 | 0.951935 | 0.976901 | 0.611262 |
32 | 0.773421 | 0.834137 | 0.915695 | 0.54323 |
64 | 0.635329 | 0.72365 | 0.869981 | 0.510722 |
128 | 0.406646 | 0.52005 | 0.73539 | 0.65432 |
而如图8(a)所示,根据公式(16)可以计算第5个方块点的值:4/(128/8)=0.25,是现有商业软件VASP的强标度计算结果,而图8(b)是本发明的强标度结果示意图,其中的数据与表1对应,可与VASP的结果对比,结合表1、图8(a)、(b)可以看出,应用了本发明提供的所提的上述模拟方法,其实际的模拟效果优于现有技术的方案。
在实际运行本发明提供的上述基于杂化泛函和第一性原理的分子动力学模拟方法的过程中,首先编译可执行程序aimd_hf,即修改对应的编译文件,即make.inc,其中包括修改aimd软件包的路径,使用外部库libxc,fftw,mkl以及mpi的路径等,分别进到字文件夹内进行make操作,最终进入examples文件夹编译aimd.cpp文件,形成aimd可执行程序以及编译中途出错,可检查哪一部分的编译错误;其次编写输入文件,即1.计算输入需求文件,包括详细的计算参数,如计算温度、计算步数、收敛判据、原子结构等,计算赝势所需文件,可由代码中的HGH.m文件根据对应的元素序号生成对应的二进制文件,以.bin格式结尾以及作业脚本文件,即根据计算机集群或者超算的方式,通过裸跑或作业系统调度如PBS系统、Slurm系统进行作业提交排队计算。计算完成后,可根据输出文件中的数据对动力学基态能量、漂移能量、原子力等性质进行分析,也使用第三方分析软件进行电荷密度等的进一步分析。
图9是根据本发明实施例的分子系统的电荷密度示意图。
如图9所示,将待模拟的分子系统经过本发明提供的上述分子动力学模拟方法处理后,得到关于待模拟的分子动力系统的结构信息;根据上述分子动力系统的结构信息,利用第三方软件可以绘制出待模拟的分子动力系统的电荷密度等以便相关科研人员对待模拟的分子动力系统有更加直观的感受进而方便相关科研人员进行研究。
本发明提供的上述方法,支持国产深度计算处理器的杂化泛函动力学模拟软件适用范围包括材料、固体、化学、分子等可以以原子为最小单位建模的任何系统,可以使用的硬件架构包括Intel或者AMD架构CPU,以Intel(R)Xeon(R)Gold 5218CPU@2.30GHz、Intel(R)Xeon(R)CPU E5-2620 v3@2.40GHz等为例。NVIDIA机器学习、深度学习用加速训练卡,以A100、V100为例。国产自主深度处理器,如国产DCU同样可以应用本发明进行分子动力学模拟。
图10示意性示出了根据本发明实施例的适于实现基于杂化泛函和第一性原理的分子动力学模拟方法的电子设备的方框图。
如图10所示,根据本发明实施例的电子设备1000包括处理器1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储部分1008加载到随机访问存储器(RAM)1003中的程序而执行各种适当的动作和处理。处理器1001例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC))等等。处理器1001还可以包括用于缓存用途的板载存储器。处理器1001可以包括用于执行根据本发明实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 1003中,存储有电子设备1000操作所需的各种程序和数据。处理器1001、ROM 1002以及RAM 1003通过总线1004彼此相连。处理器1001通过执行ROM 1002和/或RAM1003中的程序来执行根据本发明实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM1002和RAM 1003以外的一个或多个存储器中。处理器1001也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本发明实施例的方法流程的各种操作。
根据本发明的实施例,电子设备1000还可以包括输入/输出(I/O)接口1005,输入/输出(I/O)接口1005也连接至总线1004。电子设备1000还可以包括连接至I/O接口1005的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至I/O接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
本发明还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本发明实施例的方法。
根据本发明的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本发明的实施例,计算机可读存储介质可以包括上文描述的ROM 1002和/或RAM 1003和/或ROM 1002和RAM 1003以外的一个或多个存储器。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于杂化泛函和第一性原理的分子动力学模拟方法,包括:
步骤一,初始化分子系统的电荷密度和电子波函数,基于密度泛函理论和第一性原理构造所述分子系统的哈密顿量,并将所述分子系统的电荷密度、电子波函数和哈密顿量以矩阵的形式离散化存储在计算机内存上;
步骤二,基于薛定谔方程,利用自洽场迭代方法对存储在计算机内存上的所述分子系统的哈密顿量进行对角化处理,并根据对角化处理得到的所述分子系统的本征电子波函数和本征能量,更新所述分子系统的电子波函数,直到达到预设的自洽场迭代的收敛精度;
步骤三,利用预设的分子动力学计算加速模型计算所述分子系统的哈密顿量中杂化了电子波函数的交换关联势能,并根据更新后的分子系统的电子波函数和所述交换关联势能,更新所述分子系统的总能量;
步骤四,根据更新后的分子系统的总能量,利用海尔曼-费曼原理计算所述分子系统的原子力信息,并根据所述分子系统的原子力信息,利用冲量定理、牛顿第二定律以及预设的分子动力学求解模型,得到预设时长的所述分子系统中原子的速度关联信息;
步骤五,根据所述预设时长的所述分子系统中原子的速度关联信息,得到所述预设时长演化后的分子系统的结构信息,并利用预设的电子波函数拟合模型更新所述分子系统的电子波函数;
根据预设配置信息选择深度学习加速卡迭代执行步骤二至步骤五,直到满足预设收敛条件,得到所述分子系统的结构信息和所述分子系统的原子速度信息。
2.根据权利要求1所述的方法,其中,所述利用预设的分子动力学计算加速模型计算所述分子系统的哈密顿量中杂化了电子波函数的交换关联势能包括:
根据用户输入的基于第一性原理的分子系统的计算参数初始化所述预设的分子动力学计算加速模型,其中,所述用户输入的基于第一性原理的分子系统的计算参数包括所述预设的分子动力学计算加速模型的收敛精度、特征求解器的精度、迭代次数、用于控制所述预设的分子动力学计算加速模型的布尔型变量以及所述预设的分子动力学计算加速模型计算所需要的插值数量;
根据所述分子系统的哈密顿量,获取所述分子系统中的原子种类、原子数量和原子坐标并输入到所述预设的分子动力学计算加速模型中;
利用所述预设的分子动力学计算加速模型通过所述分子系统的电子波函数轨道地迭代计算得到所述分子系统的哈密顿量中杂化了电子波函数的交换关联势能,得到所述分子动力系统的交换关联势能。
3.根据权利要求1所述的方法,其中,所述预设的分子动力学求解模型包括VelocityVerlet求解模型和NoseHoover求解模型。
4.根据权利要求1所述的方法,其中,所述预设的电子波函数拟合模型包括XL-BOMD拟合模型和ASPC拟合模型。
5.根据权利要求1所述的方法,其中,所述根据预设配置信息选择深度学习加速卡迭代执行上述操作,直到满足预设收敛条件,得到所述分子系统的结构信息和所述分子系统的原子速度信息包括:
根据预设配置信息,选择进行分子动力学模拟的深度学习加速卡,并在选中的深度学习加速卡中加载进行分子动力学模拟计算的数学支持库,其中,所述数学支持库包括BLAS和FFTW;
利用所述选中的深度学习加速卡迭代执行构造哈密顿量操作、对角化处理和电子波函数更新操作、分子系统总能量更新操作、速度关联信息获取操作以及分子结构获取操作和电子波函数重新拟合操作;
在满足预设收敛条件的情况下,将得到的分子系统的结构信息和分子系统的原子速度信息输出到预设格式的文件中并反馈给用户。
6.根据权利要求1所述的方法,其中,所述预设收敛条件包括预设时间步长、收敛精度以及特征求解器精度。
7.根据权利要求1所述的方法,其中,所述分子系统的结构信息包括漂移能量、结构坐标、原子位置以及原子速度。
8.一种基于杂化泛函和第一性原理的分子动力学模拟系统,包括:
初始化和构造模块,用于执行步骤一,初始化分子系统的电荷密度和电子波函数,基于密度泛函理论和第一性原理构造所述分子系统的哈密顿量,并将所述分子系统的电荷密度、电子波函数和哈密顿量以矩阵的形式离散化存储在计算机内存上;
电子波函数更新模块,用于执行步骤二,基于薛定谔方程,利用自洽场迭代方法对存储在计算机内存上的所述分子系统的哈密顿量进行对角化处理,并根据对角化处理得到的所述分子系统的本征电子波函数和本征能量,更新所述分子系统的电子波函数,直到达到预设的自洽场迭代的收敛精度;
总能量更新模块,用于执行步骤三,利用预设的分子动力学计算加速模型计算所述分子系统的哈密顿量中杂化了电子波函数的交换关联势能,并根据更新后的分子系统的电子波函数和所述交换关联势能,更新所述分子系统的总能量;
速度关联信息计算模块,用于执行步骤四,根据更新后的分子系统的总能量,利用海尔曼-费曼原理计算所述分子系统的原子力信息,并根据所述分子系统的原子力信息,利用冲量定理、牛顿第二定律以及预设的分子动力学求解模型,得到预设时长的所述分子系统中原子的速度关联信息;
结构计算和拟合模块,用于执行步骤五,根据所述预设时长的所述分子系统中原子的速度关联信息,得到所述分子系统的结构信息,并利用预设的电子波函数拟合模型更新所述分子系统的电子波函数;
深度处理器模块,用于根据预设配置信息选择深度处理器迭代执行步骤二至步骤五,直到满足预设收敛条件,得到所述分子系统的结构信息和所述分子系统的原子速度信息。
9.一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求1~7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行根据权利要求1~7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211483793.8A CN115859597B (zh) | 2022-11-24 | 2022-11-24 | 基于杂化泛函和第一性原理的分子动力学模拟方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211483793.8A CN115859597B (zh) | 2022-11-24 | 2022-11-24 | 基于杂化泛函和第一性原理的分子动力学模拟方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115859597A true CN115859597A (zh) | 2023-03-28 |
CN115859597B CN115859597B (zh) | 2023-07-14 |
Family
ID=85665965
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211483793.8A Active CN115859597B (zh) | 2022-11-24 | 2022-11-24 | 基于杂化泛函和第一性原理的分子动力学模拟方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115859597B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006062095A1 (ja) * | 2004-12-06 | 2006-06-15 | Waseda University | 分子動力学シミュレーション装置、そのシミュレーション方法、及びシミュレーションプログラムを格納した記録媒体 |
GB0715659D0 (en) * | 2007-08-10 | 2007-09-19 | Fujitsu Ltd | Method, apparatus and computer program for molecular simulation |
US20110313741A1 (en) * | 2010-06-21 | 2011-12-22 | Spectral Associates, Llc | Methodology and its computational implementation for quantitative first-principles quantum-mechanical predictions of the structures and properties of matter |
WO2012023563A1 (ja) * | 2010-08-18 | 2012-02-23 | 国立大学法人大阪大学 | 電子状態計算方法、電子状態計算装置及びコンピュータプログラム |
CN105787273A (zh) * | 2016-02-26 | 2016-07-20 | 重庆邮电大学 | 含能材料冲击起爆的计算机模拟方法 |
CN111710375A (zh) * | 2020-05-13 | 2020-09-25 | 中国科学院计算机网络信息中心 | 一种分子性质预测方法及系统 |
WO2021054402A1 (ja) * | 2019-09-20 | 2021-03-25 | 株式会社 Preferred Networks | 推定装置、訓練装置、推定方法及び訓練方法 |
CN113710609A (zh) * | 2019-07-08 | 2021-11-26 | 腾讯美国有限责任公司 | 用于模拟量子系统的量子变分方法、装置及存储介质 |
CN113935193A (zh) * | 2021-11-05 | 2022-01-14 | 电子科技大学 | 一种铁基合金磁性材料的电子性质及应变调控规律的预测方法 |
CN115169565A (zh) * | 2022-09-09 | 2022-10-11 | 之江实验室 | 一种小分子化学体系的哈密顿量模拟方法和装置 |
-
2022
- 2022-11-24 CN CN202211483793.8A patent/CN115859597B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006062095A1 (ja) * | 2004-12-06 | 2006-06-15 | Waseda University | 分子動力学シミュレーション装置、そのシミュレーション方法、及びシミュレーションプログラムを格納した記録媒体 |
GB0715659D0 (en) * | 2007-08-10 | 2007-09-19 | Fujitsu Ltd | Method, apparatus and computer program for molecular simulation |
US20110313741A1 (en) * | 2010-06-21 | 2011-12-22 | Spectral Associates, Llc | Methodology and its computational implementation for quantitative first-principles quantum-mechanical predictions of the structures and properties of matter |
WO2012023563A1 (ja) * | 2010-08-18 | 2012-02-23 | 国立大学法人大阪大学 | 電子状態計算方法、電子状態計算装置及びコンピュータプログラム |
CN105787273A (zh) * | 2016-02-26 | 2016-07-20 | 重庆邮电大学 | 含能材料冲击起爆的计算机模拟方法 |
CN113710609A (zh) * | 2019-07-08 | 2021-11-26 | 腾讯美国有限责任公司 | 用于模拟量子系统的量子变分方法、装置及存储介质 |
WO2021054402A1 (ja) * | 2019-09-20 | 2021-03-25 | 株式会社 Preferred Networks | 推定装置、訓練装置、推定方法及び訓練方法 |
CN111710375A (zh) * | 2020-05-13 | 2020-09-25 | 中国科学院计算机网络信息中心 | 一种分子性质预测方法及系统 |
CN113935193A (zh) * | 2021-11-05 | 2022-01-14 | 电子科技大学 | 一种铁基合金磁性材料的电子性质及应变调控规律的预测方法 |
CN115169565A (zh) * | 2022-09-09 | 2022-10-11 | 之江实验室 | 一种小分子化学体系的哈密顿量模拟方法和装置 |
Non-Patent Citations (4)
Title |
---|
刘晓辉;陈默涵;李鹏飞;沈瑜;任新国;郭光灿;何力新;: "基于数值原子轨道基组的第一性原理计算软件ABACUS", 物理学报, no. 18 * |
杜世萱;高鸿钧;: "功能分子结构的组装和单分子物性:基于密度泛函理论的第一性原理计算与扫描隧道显微学(I)", 物理学进展, no. 02 * |
胡史奇;廉超;关梦雪;孟胜;: "发展动量分辨的含时密度泛函理论,实时模拟石墨烯纳米带的激发态", 科研信息化技术与应用, no. 02 * |
赵素;李金富;周尧和;: "分子动力学模拟及其在材料科学中的应用", 材料导报, no. 04 * |
Also Published As
Publication number | Publication date |
---|---|
CN115859597B (zh) | 2023-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Knoll et al. | Jacobian-free Newton–Krylov methods: a survey of approaches and applications | |
Childs et al. | Hamiltonian simulation using linear combinations of unitary operations | |
US11809959B2 (en) | Hamiltonian simulation in the interaction picture | |
Szilágyi et al. | Graphical processing unit (GPU) acceleration for numerical solution of population balance models using high resolution finite volume algorithm | |
Hadizadeh et al. | Relativistic three-body bound state in a 3D formulation | |
Deliyannis et al. | Improving quantum simulation efficiency of final state radiation with dynamic quantum circuits | |
CN115859597B (zh) | 基于杂化泛函和第一性原理的分子动力学模拟方法和系统 | |
Dabaghi et al. | A hybrid parareal Monte Carlo algorithm for parabolic problems | |
US10599879B2 (en) | Optimal pressure-projection method for incompressible transient and steady-state navier-stokes equations | |
Jun et al. | Memory (and time) efficient sequential Monte Carlo | |
van Kesteren et al. | Structural equation models as computation graphs | |
Xiao et al. | Efficient numerical simulation of Cahn-Hilliard type models by a dimension splitting method | |
Duminil et al. | Reduced rank extrapolation applied to electronic structure computations | |
Steiger et al. | Using automatic differentiation to compute derivatives for a quantum-chemical computer program | |
Janssen et al. | Enabling new capabilities and insights from quantum chemistry by using component architectures | |
Harbrecht et al. | A scalable H-matrix approach for the solution of boundary integral equations on multi-GPU clusters | |
Ryabinkin et al. | Efficient construction of involutory linear combinations of anticommuting pauli generators for large-scale iterative qubit coupled cluster calculations | |
Butchers et al. | Numerical evaluation of inflationary 3-point functions on curved field space | |
Nandi et al. | Combining state-of-the-art quantum chemistry and machine learning make gold standard potential energy surfaces accessible for medium-sized molecules | |
Štrumbelj et al. | Past, Present and Future of Software for Bayesian Inference | |
Hayes et al. | A fast shadowing algorithm for high-dimensional ODE systems | |
Hayes | Efficient shadowing of high dimensional chaotic systems with the large astrophysical N-body problem as an example. | |
Romero et al. | A parallel implementation of the Jacobi-Davidson eigensolver and its application in a plasma turbulence code | |
Kuźnik et al. | Grammar based multi-frontal solver for isogeometric analysis in 1d | |
Lelièvre et al. | Parareal computation of stochastic differential equations with time-scale separation: a numerical study |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |