计算化学公社

 找回密码 Forget password
 注册 Register
Views: 16299|回复 Reply: 4
打印 Print 上一主题 Last thread 下一主题 Next thread

[辅助/分析程序] 最小能量路径搜索软件MEPsearcher

[复制链接 Copy URL]

96

帖子

1

威望

551

eV
积分
669

Level 4 (黑子)

本帖最后由 chenxin199261 于 2016-2-19 16:01 编辑

简介
MEPsearcher基于string计算方法,用于搜索二维全局离散势能面上的能量最小路径Mminimun Energy Path(MEP),通常MEP可以完整揭示反应机理。过渡态、活化能等信息可以从MEP中获取。能量最低路径的搜索可以利用于蛋白质折叠、化学反应、相变等过程的机理研究。
下载地址:  https://github.com/chenxin199261/MEPSearcher
具体信息: http://chen-xin.tk/blog/index.php/archives/44/

string方法简介
在势能面 V(x) 上,假设路径 γ 连接极小值点a、b,γ 满足如下关系。

(∇V)⊥(γ)=0

寻找MEP,首先定义N个珠子(beads、images),{φi,i=0,1,2,…,n}


,分别对N个beads进行优化。


φ˙i=−∇V(φi)

优化过程同时将beads均匀分布。采用“Parametrization by equal arc length”方法
原理很简单,简单一句话:

将一些珠子放在势能面山坡上.松开珠子,珠子都会进入能量最低点.
如果们将珠子用线穿起来,那么珠子稳定状态下就是在能量最低路径上.

技术细节
MEPsearcher采用python开发,核心数值计算部分调用ALGlib数学库。
当前版本只支持最速下降优化方法(DS),未来版本考虑加入共轭梯度,准牛顿等方法。
插值算法采用三次样条插值(cubic spline)。ALGlib提供很多插值方法,作者并未尝试,希望大家对着手册换换其它的插值算法。

使用方法
1. 准备文件
你只需要准备两个输入文件,势能面文件PES.data,初猜生成文件guess.data。
  • 势能面文件写成三列X Y Energy即可。可参考test文件夹中PES.data格式
  • 准备初始猜测需要对势能面有一定的直观感觉,给出起始点、终止点以及初猜珠子(beads)的个数。
2.参数设定需要进入MEPsearcher.py中对参数进行设定,只有三个参数需要测定,分别是最大迭代次数,收敛限以及优化步长。
  • 最大迭代次数,Max_iter默认1000步,可以根据具体需要调大或者调小。
  • 收敛限,用与上次优化结果的距离差加和表示。Tol默认1e-5,beads过多,可以适当调小、调大这个值。
  • 优化步长值,h,是最速下降优化方法一个必需参数。这个值的设定麻烦些。过小导致优化缓慢,过大导致直接优化到势能面错误的区域。需要使用者反复调试。希望在下一个版本中,能启用其它不需要步长的优化方法。
3.运行赋予MEPsearch.py执行权限
  1. chmod +x MEPsearcher.py
复制代码

直接运行
  1. ./MEPsearcher.py
复制代码

计算过程每隔50步迭代,会打印在屏幕上。
运行结束后,产生out.data文件。
这个文件存储了MEP的最终结果。分三列表示,分别为:
X Y Energy

测试结果




评分 Rate

参与人数
Participants 5
威望 +1 eV +18 收起 理由
Reason
ysss + 3 谢谢分享
一个用户名 + 5 好物!
丁越 + 5 好物!
elpa + 5 赞!
sobereva + 1

查看全部评分 View all ratings

292

帖子

8

威望

1696

eV
积分
2148

Level 5 (御坂)

2#
发表于 Post on 2016-2-19 23:40:45 | 只看该作者 Only view this author
本帖最后由 smutao 于 2016-2-19 23:42 编辑

高维的版本有没有 ?
比如要找电子密度分布的Maximum Electron Density Path我猜Sob的Multiwfn里应该有这个功能

6万

帖子

99

威望

5万

eV
积分
120141

管理员

公社社长

3#
发表于 Post on 2016-2-20 01:31:45 | 只看该作者 Only view this author
smutao 发表于 2016-2-19 23:40
高维的版本有没有 ?
比如要找电子密度分布的Maximum Electron Density Path我猜Sob的Multiwfn里应该有这 ...

那个是Multiwfn的产生键径。
具体来说是先用牛顿法根据初猜搜索到鞍点,然后由此跟踪密度下降最快路径。这类似于高斯等程序产生IRC的算法。LZ的则类似于第一性原理程序支持较多的NEB方法,已知极小点,一下子就得到IRC,原理上可以用于任意维。
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办极高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入北京科音微信公众号获取北京科音培训的最新消息,并避免错过网上有价值的计算化学文章!
欢迎加入人气极高、专业性特别强的理论与计算化学综合交流群思想家公社QQ群(群号见此链接),合计达一万多人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大、极为流行的量子化学波函数分析程序)
Google Scholar:https://scholar.google.com/citations?user=tiKE0qkAAAAJ
ResearchGate:https://www.researchgate.net/profile/Tian_Lu

96

帖子

1

威望

551

eV
积分
669

Level 4 (黑子)

4#
 楼主 Author| 发表于 Post on 2016-2-20 12:42:26 | 只看该作者 Only view this author
sobereva 发表于 2016-2-20 01:31
那个是Multiwfn的产生键径。
具体来说是先用牛顿法根据初猜搜索到鞍点,然后由此跟踪密度下降最快路径。 ...

我的不用找到极值点也可以得到那个路径,比我我初猜的那样,给出一条线。这个是string方法的一个好处。
NEB好像必须锁定两个极小值点。

96

帖子

1

威望

551

eV
积分
669

Level 4 (黑子)

5#
 楼主 Author| 发表于 Post on 2016-2-20 12:44:35 | 只看该作者 Only view this author
smutao 发表于 2016-2-19 23:40
高维的版本有没有 ?
比如要找电子密度分布的Maximum Electron Density Path我猜Sob的Multiwfn里应该有这 ...

高维的暂时没有,很容易改的。可以用一个二维数组存X,Y,Z,而不是我那样分别对X,Y操作。
我没做高维的,因为高维的路径无法可视化,意义不大。

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2025-8-15 21:58 , Processed in 0.173398 second(s), 24 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list