计算化学公社
标题: 使用Multiwfn非常便利地创建CP2K程序的输入文件 [打印本页]
作者Author: sobereva 时间: 2021-2-22 22:25
标题: 使用Multiwfn非常便利地创建CP2K程序的输入文件
使用Multiwfn非常便利地创建CP2K程序的输入文件
Using Multiwfn to very conveniently create input file of CP2K
文/Sobereva@北京科音 First release: 2021-Feb-22 Last update: 2023-Nov-7
1 前言
CP2K(https://www.cp2k.org)是速度超级快,功能又非常全面的第一性原理程序,受到越来越多的重视,有很多无可替代的重要价值。CP2K的一个问题是输入文件写起来极其繁琐,一个简单的任务的输入文件就要动辄上百行。而且有时用户还需要了解很多算法和数值实现细节、查阅繁复的手册,甚至还要google半天、参考不少自带测试文件才能最终写出能用的输入文件。这些问题使得CP2K这个优秀的程序不容易普及开来,初学者往往看到其极度复杂的输入文件就打退堂鼓了。
笔者的Multiwfn程序(主页&下载:http://sobereva.com/multiwfn)的主功能100的子功能2能产生大量量子化学程序的输入文件,诸如其中产生ORCA输入文件的功能在此文专门介绍过《详谈Multiwfn产生ORCA量子化学程序的输入文件的功能》(http://sobereva.com/490),给很多人带来了极大便利。为了让CP2K这个利器对于常见计算问题用起来尽可能方便、尽可能把手动挡变得像自动挡、令使用门槛尽可能低,使之能更充分地发挥其巨大价值,笔者在Multiwfn里加入了产生CP2K输入文件的功能,在此文将进行简要介绍。这个功能虽然注定不可能让完全零基础的CP2K用户毫无压力地使用CP2K,但至少已经把使用难度和复杂度降到极限了,用户只需要选择干什么、怎么干,即可产生一个完成度>95%的输入文件,之后一些必须根据实际情况调整的地方,比如平面波截断能大小等,再自行改一下即可,这使得CP2K用户得到了极大的解放!
如果Multiwfn的这个功能对你的研究产生了实际帮助,请在写文章时顺带提及输入文件是借助Multiwfn产生的(比如写the CP2K input files were generated with help of Multiwfn program),并按程序启动时显示的要求恰当引用Multiwfn。
Multiwfn产生CP2K输入文件的流程是:
1 启动Multiwfn,载入一个Multiwfn可以识别的至少含有结构信息的文件
2 进入主功能100的子功能2,选择产生CP2K输入文件(即选项25)。也可以直接在Multiwfn主菜单里输入cp2k进入此功能
3 输入要产生的CP2K输入文件的路径
4 通过各种选项设置如何进行计算
5 选择0,得到CP2K输入文件
下面第2节先说载入到Multiwfn的输入文件的要求。第3节给出一些例子演示产生CP2K输入文件的过程。Multiwfn的这个功能始终不断打磨并且迎合CP2K最新版本的改变,本文内容对应Multiwfn官网上最新版本的Multiwfn(不是今天刚下载的就不要觉得是最新的),一定不要用老版本!Multiwfn产生CP2K输入文件的功能在未来还会不断扩展,尽量做到更强大更完美,并且尽量迎合未来版本CP2K发生的各种变化,届时本文也会相应地修改。
一定要注意,尽管靠Multiwfn创建CP2K输入文件非常方便,也绝对绝对不能把CP2K当黑箱用!!!因为正确、准确、高效率地使用CP2K做计算需要掌握的理论背景知识实在是超级多!CP2K是一个手动挡而非自动挡的程序,千万不能以为自己刚会用Multiwfn敲几下键盘能创建出CP2K输入文件就等于会用CP2K了。北京科音CP2K第一性原理计算培训班是从头一次性系统、完整学习第一性原理计算和CP2K程序的最佳途径,培训介绍见http://www.keinsci.com/workshop/KFP_content.html,里面讲的东西对合理使用CP2K至关重要!不参加过一遍的话,用户根本意识不到使用CP2K居然有那么多关键细节和要点需要掌握,而且其中有很多东西和关键技巧,若不去仔细研究算法、啃CP2K开发者的相关论文乃至源代码、花精力做各种测试都是无从知晓的。因此北京科音CP2K第一性原理计算培训班是从头开始用CP2K一定要参加一次的培训,毫不夸张地说其重要性相当于CP2K驾校,而纯靠自己收集零七八碎的资料自学的话真的会走无数弯路、在试错上白浪费巨量时间(PS:我每天在网上回答大量CP2K问题,绝大部分人遇到的困难、犯的低级错误都是由于缺乏此培训里讲的这些关键性知识导致的,不具备这些知识一定会各种胡算瞎算)。培训内容涵盖面极广,ppt多达2200多页,讲义等同于CP2K使用圣经,对不同研究主题都给了精心准备的大量例子使得学员能举一反三。其中讲解利用CP2K做各类问题的研究时都会使用Multiwfn创建输入文件,学员从中会深切体会到Multiwfn对于CP2K的使用起到的重要价值。
2 给Multiwfn用的输入文件
Multiwfn支持什么输入文件这里都详细说了:《详谈Multiwfn支持的输入文件类型、产生方法以及相互转换》(http://sobereva.com/379)。对于产生CP2K的输入文件,显然载入到Multiwfn的文件中必须含有体系的结构才行。对于此类目的,Multiwfn支持一大波格式,如pdb/gro/xyz/mol/mol2/mwfn/wfn/wfx/molden/fch/cub/gjf/gro等等等等。
如果载入到Multiwfn的文件不包含晶胞信息,那么Multiwfn会默认将此体系视为孤立体系来设置CP2K里的计算参数,CP2K输入文件里的晶胞信息是在分子周围做一定距离的延展来得到的。
多数情况CP2K都是拿来算周期性体系的。若想让Multiwfn产生的CP2K输入文件里有实际的晶胞信息,载入到Multiwfn的文件里就必须有晶胞信息。用以下格式作为输入文件时,Multiwfn会既读取原子坐标也读取晶胞信息。
(1)cif文件
(2)含有CRYST1字段的pdb或pqr文件
(3)CP2K的输入文件(必须以.inp或.restart为后缀)
(4)GROMACS的gro文件
(5)含有@<TRIPOS>CRYSIN字段的mol2文件
(6)含有Ndim且其数值>0的mwfn文件(mwfn是Multiwfn私有的波函数文件格式,专门留出了字段记录晶胞信息,见mwfn介绍文章https://doi.org/10.26434/chemrxiv.11872524)
(7)带有Tv(平移矢量)信息的Gaussian输入文件,即Gaussian做PBC任务的输入文件,可以通过GaussView直接创建
(8)Gaussian做PBC任务产生的fch/fchk文件
(9)含有晶胞信息的xyz文件。这是我自己定义的,如果xyz文件的注释行(第二行)包含诸如以下形式的内容(以埃为单位的平移矢量),就会被Multiwfn读取
Tv_1: 7.426 0.0 0.0 Tv_2: 3.6 6 6.40 0.0 Tv_3: 0.0 0.0 10.0
也可以按照extended xyz格式的方式在xyz文件的第二行记录晶胞信息,例如:
Lattice="7.426 0.0 0.0 -3.66 6.40 0.0 0.0 0.0 10.0"
(10)含有[Cell]字段的molden文件。此字段是我对molden格式做的扩展,这使得记录波函数的molden文件也能记录晶胞信息。大家可以直接手动往已有的molden文件里插入[Cell]信息,详见《详谈使用CP2K产生给Multiwfn用的molden格式的波函数文件》(http://sobereva.com/651)
(11)VASP的POSCAR文件(文件名里必须包含POSCAR字样才能识别)
(12)Quantum ESPRESSO的输入文件
3 产生CP2K输入文件的一些例子
下面就通过不同体系、不同类型计算演示一下Multiwfn产生CP2K输入文件的功能,这些例子也可以作为CP2K入门例子。这些例子只用到了一部分Multiwfn提供的选项,其它的请自行尝试,选项的含义都非常易于理解所以就不一一说了。下文用到的文件都在http://sobereva.com/attach/587/file.zip中提供了。笔者假定读者已经以正当方式安装了CP2K,安装方法见《CP2K第一性原理程序在CentOS中的简易安装方法》(http://sobereva.com/586)。
3.1 做COF(共价有机框架)化合物的单点任务
本文文件包里COF_12000N2.cif是个COF的晶体结构文件,本例用Multiwfn对它产生一个最简单的任务的输入文件,即PBE泛函结合DZVP-MOLOPT-SR-GTH基组做单点计算。
启动Multiwfn,然后依次输入
COF_12000N2.cif //写实际的路径。也可以把此文件拖到Multiwfn文本窗口里自动产生路径,省得手动输入了
cp2k //进入产生CP2K输入文件的功能
[按回车] //新产生的CP2K输入文件将为当前目录下的COF_12000N2.inp。也可以自己输入路径
0 //直接生成输入文件
现在COF_12000N2.inp就在当前目录下出现了,可以直接用CP2K跑了。这样在默认设置下产生的输入文件对应PBE/DZVP-MOLOPT-SR-GTH算单点,只考虑gamma点。可以打开.inp看一下有哪些自己需要改的,一般来说自己根据实际需要改的也就是影响精度的设置,比如影响平面波部分计算精度的&MGRID里的CUTOFF和REL_CUTOFF、控制密度矩阵收敛限的&SCF里的EPS_SCF,这些问题本文就不多说了。
Multiwfn产生的CP2K输入文件里面有很多注释,即#后面的内容,这有助于对CP2K还不是特别熟的人了解选项的含义、明白怎么设置。输入文件里有些选项的值是根据我的使用经验和习惯设的,也有一些设置虽然是默认的,却也出现在了输入文件里,这个考虑是便于大家之后自己手动修改(要不然想改一个默认设置的话还得照着手册写一堆字段实在太费事了)。
下面再用COF举个例子,使用B97M-rV泛函结合6-31G*基组做GAPW形式的单点计算,并且要求算完后产生记录此体系波函数的.molden文件,可用于之后在Multiwfn中做波函数分析,见比如《使用IRI方法图形化考察化学体系中的化学键和弱相互作用》(http://sobereva.com/598)和《使用Multiwfn结合CP2K通过NCI和IGM方法图形化考察固体和表面的弱相互作用》(http://sobereva.com/588)。关于molden文件更多信息见《详谈使用CP2K产生给Multiwfn用的molden格式的波函数文件》(http://sobereva.com/651)。本例用较小的基组仅作为演示目的,对精度有要求的计算至少用6-311G**。值得一提的是,在纯泛函中,B97M-rV是对有机体系能量相关问题计算得最好之一,并且这个泛函自带rVV10色散校正。
启动Multiwfn后依次输入
COF_12000N2.cif
cp2k
COF_GAPW.inp
1 //设置理论方法
11 //B97M-rV(通过libxc库实现)
2 //设置基组
10 //6-31G*
-2 //要求产生.molden文件
0 //产生输入文件
现在当前目录下就有了COF_GAPW.inp,直接就可以跑了。跑完之后当前目录下会出现COF_GAPW-MOS-1_0.molden。
顺带一提,在Multiwfn的主功能0里可以直接看体系的结构和晶胞,由此可以确认一下结构和晶胞信息有没有被Multiwfn从输入的文件里正常载入。启动Multiwfn并载入COF_12000N2.cif后,选0,就会进入图形界面。关闭标签和坐标轴,并且点击菜单栏的Other settings里的Toggle showing cell frame,当前窗口将为下图所示的状态。可见原子位置和晶胞都正确。点击Save picture按钮可以在当前目录下得到线条明显更平滑的大尺寸图像文件。
(, 下载次数 Times of downloads: 171)
也可以用Multiwfn载入CP2K的.inp输入文件或者CP2K计算过程中产生的.restart文件,在主功能0里可以看其中的结构是什么样。还可以载入它们后,进入主功能100的子功能2,选择导出gjf文件,这样得到的gjf文件里会有Tv描述的晶胞信息,可以放到GaussView里进行观看和编辑修改。还可以用主功能100的子功能2里的一堆选项转换成其它一大堆常见格式、一大堆计算程序的输入文件(包括Quantum ESPRESSO、VASP的POSCAR),贼灵活。
3.2 对SiC超胞做结构优化
这一节演示对SiC的3*3*3超胞用PBE/DZVP-MOLOPT-SR-GTH做晶胞参数不变的结构优化,并且开OT。
启动Multiwfn后输入
SiC.cif //在本文文件包里
cp2k
[按回车] //产生的输入文件名为默认的SiC.inp
-1 //选择任务
3 //结构优化(不变胞)
-11 //进入几何操作界面。这个界面有丰富的功能,见《Multiwfn中非常实用的几何操作和坐标变换功能介绍》(http://sobereva.com/610)
19 //构建超胞
3 //方向1为原先的3倍
3 //方向2为原先的3倍
3 //方向3为原先的3倍
如果你想看一下当前结构的话,可以选0进入图形界面,会看到下图,可见结构没问题
(, 下载次数 Times of downloads: 60)
接着输入
-10 //返回到之前创建CP2K输入文件的界面
4 //开启OT
0 //产生输入文件
现在当前目录下的SiC.inp就可以直接跑了。
实际上,还有一种等价的创建SiC 3*3*3超胞输入文件的做法。进入Multiwfn的CP2K输入文件创建界面后,输入
4 //开启OT
-1 //选择任务
3 //结构优化(不变胞)
-9 //其它设置
3 //设置三个方向晶胞重复次数
3,3,3
0 //返回
0 //产生输入文件
在得到的输入文件中可以看到坐标部分只记录了原胞,但有两处MULTIPLE_UNIT_CELL 3 3 3,体现出是对3*3*3超胞进行计算。
3.3 优化Cu的晶胞
这一节创建的输入文件对应于在PBEsol/DZVP-MOLOPT-SR-GTH级别下对Cu晶体做原子坐标和晶胞的优化。由于是导体,所以用了smearing。由于用的是原胞算的,所以此例设了k点。
启动Multiwfn后依次输入
Cu.cif //在本文文件包里,是铜晶体的cif文件
cp2k
Cu_cellopt.inp //在当前目录下产生Cu_cellopt.inp
1 //设置理论方法
-3 //PBEsol,很适合算固体晶格常数的泛函
8 //设置k点
3,3,3
-1 //设置任务
4 //优化原子坐标和晶胞
6 //使用占据数smearing
0 //产生输入文件
现在得到的Cu_cellopt.inp就可以直接算了。
3.4 氧化石墨烯+水分子的结构优化
这一节我们做一个氧化石墨烯+水分子的结构优化。具体来说,是在单层石墨烯的一个C-C键上加一个氧桥,然后放一个水分子到合适位置,与氧桥形成氢键。构建这个初始结构可以利用GaussView之类的程序。由于文字+图片方式表达起来太费事,我把GaussView里的操作录了个短小的视频:http://sobereva.com/attach/587/gview_build.mp4,其中旋转水分子的时候按住alt键,平移水分子的时候按住alt+shift键。按照视频建模完毕后,保存成gjf文件,就是此文文件包里的graphite_oxide_H2O.gjf,可见里面有Tv(平移矢量)信息。
此例的计算将使用PBE-D3(BJ)/TZVP-MOLOPT-GTH完成。由于当前体系有弱相互作用,所以加了DFT-D3(BJ)校正,相关知识见《谈谈“计算时是否需要加DFT-D3色散校正?”》(http://sobereva.com/413)。
启动Multiwfn,然后依次输入
graphite_oxide_H2O.gjf
cp2k
opt.inp //新产生的文件名
-1 //设置任务
3 //优化结构(晶胞尺寸不变)
3 //设置色散校正
2 //DFT-D3(BJ)
2 //设置基组
3 //TZVP-MOLOPT-GTH
-7 //设置周期性
XY //当前体系是XY周期性,Z方向不考虑周期性
0 //产生输入文件
之后就可以直接跑了。
顺带一提,在CP2K输入文件生成界面里选择优化任务后,可以通过选项9设置对哪些原子坐标进行冻结,可以通过诸如1,5,9-12,14-18形式方便地输入。这种选择语句还可以在GaussView里方便地生成,即把某些原子选中成黄色后,在Tools - Atom selection界面里就可以直接拷出来粘贴到Multiwfn窗口里。另外,Multiwfn让你输入被冻结的原子序号时若输入optH还可以直接实现冻结重原子而只优化氢原子的目的。
3.5 用GFN1-xTB方法跑含有216个水的盒子的动力学
GROMACS程序自带了一个做NPT动力学预平衡好的含有216个水的结构文件spc216.gro,在本文文件包里也给了。此例基于这个文件,创建一个用GFN1-xTB级别做NVT系综的从头算动力学的输入文件。GFN1-xTB是半经验层面的DFT,简要介绍见《盘点Grimme迄今对理论化学的贡献》(http://sobereva.com/388)和《将Gaussian与Grimme的xtb程序联用搜索过渡态、产生IRC、做振动分析》(http://sobereva.com/421)。
启动Multiwfn然后输入
spc216.gro
cp2k
spc216_AIMD.inp
-1 //设置任务
6 //分子动力学
10 //设置热浴
2 //CSVR热浴,亦即GROMACS里的V-rescale
1 //设置理论方法
30 //GFN1-xTB
0 //创建输入文件
在得到的spc216_AIMD.inp中,应结合注释根据实际需要做恰当修改,比如控制模拟步数的&MD里的STEPS、控制初始温度和控温温度的TEMPERATURE。诸如此类直接就可以手动很容易地改的参数,在Multiwfn的CP2K输入文件创建界面里一般就没有留出相应的选项了,因为完全没必要。
注:实际上 GFN1-xTB模拟纯水效果很差,密度明显偏高。此例只不过是个例子而已。
值得一提的是,在CP2K输入文件创建界面里选择动力学任务后,会看到还有几个相关选项:
选项12:设置压浴
选项-5:设置动力学轨迹格式。不用控压时默认是xyz,用控压时默认是尺寸明显更小而且记录盒子信息的二进制格式dcd。也可以用pdb格式,记录盒子信息,文件尺寸很大
选项-6:设置每多少步把坐标写入一次轨迹文件
3.6 对HCN氢转移找过渡态、做振动分析
此例对HCN->NCH氢转移用dimer方法优化过渡态,之后再做个振动分析考察虚频情况。此例只是做个演示,对这种分子体系找过渡态的问题CP2K远远不如Gaussian,又不好用效率又极低。
首先用GaussView创建个看上去像这个异构化反应的过渡态的结构,保存为H2CO_TS.gjf。然后启动Multiwfn,输入
H2CO_TS.gjf
cp2k
dimer.inp
-1 //选择任务
7 //搜索过渡态
0 //产生输入文件
然后用CP2K运行产生的dimer.inp。算完后会看到有一个dimer-1.restart文件,这是CP2K输入文件,包含的是dimer任务最后一步的结构。基于这个结构,我们创建一个振动分析的输入文件。
启动Multiwfn,然后输入
dimer-1.restart
cp2k
freq.inp
-1 //选择任务
5 //振动分析
0 //产生输入文件
然后用CP2K运行产生的freq.inp。跑完之后可以看到有且只有一个虚频,目录下还出现了freq-VIBRATIONS-1.mol,里面用molden格式记录了振动矢量,可以用Molden程序观看振动模式。
3.7 计算氮化硼二维材料的REPEAT原子电荷
做涉及固体表面的经典力场的分子动力学模拟,需要有固体部分的原子电荷,REPEAT电荷对于这个目的是不错的选择,对于拟合固体表面的原子电荷比RESP更理想。此例创建一个CP2K算氮化硼板的REPEAT电荷计算的输入文件。
本文文件包里有个氮化硼晶胞文件BN.cif,用GaussView打开,删掉两层BN中的任意一层,并把盒子Z方向尺寸设为10埃(真空区不够大的话会令REPEAT电荷不合理),之后保存为BN.gjf。
启动Multiwfn,然后输入
BN.gjf
cp2k
BN_REPEAT.inp
-4 //输出原子电荷
7 //REPEAT
8 //设置k点
6,6,6
0 //产生输入文件
为了让结果更好,手动打开.inp文件,把ELEMENT N那行下面的基组改为TZV2P-MOLOPT-GTH。这个基组对B没有定义,所以对B还是用原先默认的DZVP-MOLOPT-SR-GTH。
然后用CP2K运行得到的BN_REPEAT.inp即可,算完后会得到一个.resp后缀的文件,里面就是各个原子的电荷值。B为0.478,很合理。当前目录下还有个.xyz文件,拖入VMD里可以看拟合点的分布。Multiwfn产生的CP2K算REPEAT电荷的拟合点分布设置是根据我的经验已调整到了比较合理的情况,一般不需要再做修改。
注意不要乱用REPEAT电荷,居然有人算体相致密晶体也试图用REPEAT电荷,这是绝对不行的,根本都没地方放拟合点怎么可能计算。应仔细看《一篇深入浅出、完整全面介绍原子电荷的综述文章已发表!》(http://sobereva.com/714)里介绍的我写的综述文章了解包括REPEAT电荷在内的各种原子电荷的原理和特点。并且务必看《使用Multiwfn对周期性体系计算Hirshfeld(-I)、CM5和MBIS原子电荷》(http://sobereva.com/712)了解周期性体系原子电荷计算的更多知识和操作方法。
3.8 用TDDFT算激发态
请看专门的文章:《使用CP2K结合Multiwfn对周期性体系模拟UV-Vis光谱和考察电子激发态》(http://sobereva.com/634)。
3.9 做杂化泛函计算
请看专门的文章《CP2K做杂化泛函计算的关键要点和简单例子》(http://sobereva.com/690)。此文不是可看可不看,而是必须要看,否则>99%的概率会犯严重错误!!!CP2K的杂化泛函计算功能绝对不能当黑箱用!
4 总结
Multiwfn创建CP2K输入文件的功能使得的CP2K程序使用变得相当简单,大大降低了使用门槛,不用再照着手册和例子一个输入文件写半天(而且还很容易写错、写得不合理),而只需要在Multiwfn里敲几下键盘就可以产生出一个基本能用的输入文件,而且借助此功能还可以通过GaussView方便地为CP2K计算来建模。这个功能也很有助于初学者学习CP2K的输入文件的编写。
Multiwfn创建CP2K输入文件的界面在未来还会加入更丰富的选项、让CP2K的更多的功能用起来变得更简单。在发表文章时提及输入文件是借助Multiwfn创建的并恰当引用Multiwfn程序原文,是对Multiwfn这个功能继续开发最好的鼓励与支持。Multiwfn创建CP2K输入文件能做的任务远远不止上面演示的那些,还有NEB、NMR、路径积分分子动力学、X吸收光谱,支持的方法还有MP2、双杂化、GW、分子力场等等,在北京科音CP2K第一性原理计算培训班(http://www.keinsci.com/workshop/KFP_content.html)里都有非常全面深入讲解。
作者Author: ghifi37 时间: 2021-2-23 00:11
太好了,希望能代替好久没更新的pycp2k!
作者Author: gog 时间: 2021-2-23 18:33
看个人习惯,习惯pycp2k的话,可能觉得那个更好用。
作者Author: sobereva 时间: 2021-2-23 18:48
pycp2k和Multiwfn的这个功能没有可比性
pycp2k只不过是以Python脚本的方式创建CP2K输入文件而已,给CP2K输入文件套了个Python的壳,把字段-子字段-关键词方式的输入改成了对象和成员方式的定义而已,没有做更多的抽象化,而CP2K原本使用上复杂的地方依然复杂,初学者犯难的地方照样犯难,而且pycp2k也不会帮助用户根据实际计算需求恰当设置选项以合理地完成计算任务。此文介绍的Multiwfn的这个功能是真正意义上的CP2K傻瓜式输入文件创建工具,只要用户提供结构文件便可简单地从零创建出能用的输入文件,直接就把CP2K使用上的很多坑都填平了,让初学者用起来顺畅无压力,甚至都不需要用户事先会写任何CP2K的关键词,关键的。单纯从一般的CP2K输入文件创建的便利性来说,Multiwfn的这个功能已经做到了极限了。
对比pycp2k的页面(https://github.com/SINGROUP/pycp2k)里的介绍就很容易体会到差异了。pycp2k主要只是给那些已经把CP2K用得较熟、知道有哪些关键词且什么时候该用的人在手写输入文件时在文本编辑层面上提供便利而已。Multiwfn的这个功能与之出发点完全不同。
作者Author: wuzhiyi 时间: 2021-2-23 21:15
期待也可以加入QM/MM的功能 虽然感觉输入文件的读取上可能会有问题。
作者Author: sobereva 时间: 2021-2-24 12:11
我也有此打算,以后视情况会加入
作者Author: 量化小菜鸡 时间: 2021-2-24 13:30
请问对于CP2K输出有没有什么好的GUI来看?比如想看优化过程中结构的变化。
作者Author: archer 时间: 2021-2-24 16:54
我记得输出的是XYZ格式吧,VMD,JMOL可以看
作者Author: jiangning198511 时间: 2021-2-25 15:47
楼主,3.8版本里面没有例子3.4中所说的-7选项
作者Author: snljty 时间: 2021-2-25 16:08
(, 下载次数 Times of downloads: 136)
作者Author: jiangning198511 时间: 2021-2-25 17:28
作者Author: sobereva 时间: 2021-2-26 14:40
我一般都用VMD
作者Author: djjj148 时间: 2021-2-28 15:35
CP2K有做激发态计算的TDDFPT的section,不知卢老师是否会考虑将其相关的预/后处理纳入到Multiwfn中呢?
作者Author: adong 时间: 2021-2-28 15:58
sob老师,我从Multiwfn官网上面下载最新的软件,下载的是Development version: 3.8 Last update: 2021-Feb-25下方的连接;下载下来打开后却是Version 3.8(dev), release date: 2021-Jan-29,没有CP2K功能
作者Author: sobereva 时间: 2021-2-28 16:07
你的网有问题(大概率是老版本文件被网络服务商的服务器缓存了,以前有其他人遇到过)。
用手机流量下载,或者让使用其他网络的人下完了传给你,或者**上网从Multiwfn download页面的MEGA网盘下载。
作者Author: sobereva 时间: 2021-2-28 16:08
这在计划之内,以后会考虑加入
作者Author: adong 时间: 2021-2-28 16:08
好的,谢谢老师
作者Author: djjj148 时间: 2021-2-28 16:09
我之前也遇到了,用手机流量进入Multiwfn主页进行下载。
作者Author: Dr.Kean 时间: 2021-3-1 01:11
VMD就可以了,和orca一样的xyz文件,其他的如电荷密度之类的我更喜欢用VESTA
作者Author: dfterok 时间: 2021-3-1 12:27
Multiwfn越来越棒了!
作者Author: jiangning198511 时间: 2021-3-1 14:52
全电子就表明没有用赝势,所以没有什么参数要设置,你可以试试生成个简单的输入例子看看如何定义
作者Author: sobereva 时间: 2021-3-1 16:12
没有需要再提供其它文件的地方。Multiwfn产生的GAPW输入文件本身就已经明确指定了相应的全核势对应的文件,不需要用户操心,初学者也不会因为事先不知道这点而犯错误:
...略
&KIND H
ELEMENT H
BASIS_SET 6-31G*
POTENTIAL ALL
&END KIND
&END SUBSYS
&DFT
BASIS_SET_FILE_NAME EMSL_BASIS_SETS
POTENTIAL_FILE_NAME POTENTIAL
...略
作者Author: sobereva 时间: 2021-3-2 01:19
怎么合理安装CP2K在下文已经明确说了,以这样方式安装的用户用预编译版就不会遇到没有data文件夹的问题,所以不需要提醒用户什么
CP2K第一性原理程序在CentOS中的简易安装方法
http://sobereva.com/586(http://bbs.keinsci.com/thread-21608-1-1.html)
其它元素用赝势基组做GPW计算就完了。全核势没相应元素定义的时候CP2K会直接报错,不会在不正确的情况下错误地计算,所以也不需要刻意提醒用户。
作者Author: jiangning198511 时间: 2021-3-2 09:35
你可以去CP2K的官方论坛里面咨询一下,不过一般第五周期以后的元素通常都是结合赝势来计算的
作者Author: wuzhiyi 时间: 2021-3-3 21:56
想问题下sob老师,cp2k的基组文件里说https://github.com/misteliy/cp2k ... sts/QS/BASIS_MOLOPT
# Usage hint : 'NGRIDS 5' (section &MGRID) will deal more efficiently (2x speedup) with the diffuse nature of the basis.
但我用Multiwfn生成使用BLYP-D3(BJ)/DZVP-MOLOPT-SR-GTH的输入文件的时候,发现NGRIDS并不会被定义。
我的理解是这种情况NGRIDS会取默认值4
https://manual.cp2k.org/trunk/CP ... ID.html#list_NGRIDS
想问一下,sob老师的意见。
作者Author: sobereva 时间: 2021-3-4 00:47
那个说的是不带SR的情况,带SR版的基组弥散程度低多了,没必要用这个
我已经更新了Multiwfn,把使用不带SR情况的MOLOPT基组自动加上了NGRID=5设置。
作者Author: Penson 时间: 2021-3-5 00:54
请问社长,我用Multiwfn创建输入文件,计算金属锌切面的单点能,加入隐式溶剂模型计算(SCCS),选用pob-TZVP基组,但还是完全没法收敛,应该如何进一步调整呢?
作者Author: wuzhiyi 时间: 2021-3-5 01:48
不知道是不是我输入文件的问题,我想开启压浴,然后选项是这样的。
-7 Set direction(s) of applying periodic boundary condition, current: XYZ
-6 Set frequency of writing molecular dynamics trajectory, current: 1
-5 Choose molecular dynamics format, current: xyz
-4 Calculate atomic charges, current: None
-3 Set exporting cube file, current: None
-2 Toggle exporting .molden file for Multiwfn, current: No
-1 Choose task, current: Molecular dynamics
0 Generate input file now!
1 Choose theoretical method, current: PBE
2 Choose basis set and pseudopotential, current: DZVP-MOLOPT-SR-GTH
3 Set dispersion correction, current: DFT-D3(BJ)
4 Switching between diagonalization and OT, current: OT
7 Toggle using self-consistent continuum solvation (SCCS), current: No
8 Set k-points, current: GAMMA only
9 Set atom position constraint, current: None
10 Set thermostat, current: Canonical sampling through velocity rescaling
11 Set region for the thermostat, current: All atoms
12 Set barostat, current: Yes, flexible cell
但是发现barostat那一块是这样的
&BAROSTAT
PRESSURE 0.0 #Initial and maintained pressure (bar)
VIRIAL XYZ #Relax the cell along which cartesian axes
&END BAROSTAT
想问一下是不是用一个大气压就把这里设置成PRESSURE 1.0?
以及是不是默认值就写1.0比较好?
作者Author: sobereva 时间: 2021-3-5 02:59
下次更新时会改成1.01325(即1 atm,常压)
作者Author: djjj148 时间: 2021-3-5 12:49
我也是,试了好几个体系,直接跑SCCS的单点收敛极慢,慢到都几乎看不出有收敛趋势的那种。不过尝试先不加SCCS得到收敛的波函数做初猜,再跑的话就可以一步收敛,如果不能一步收敛后面基本就又落入"收敛极慢"的死循环了,此时只能把不加SCCS时的收敛限进一步设严(如1E-7),给SCCS做初猜并把收敛限降低一点(如1E-6),基本就可以了。
上述只是自己的尝试经验,按照这个经验来看CP2K无法在SCCS下做优化,只能算单点,否则按照这个scf收敛速度,跑一个离子步得几天。
作者Author: Penson 时间: 2021-3-5 21:32
这么神奇,感谢!我晚点试试看
作者Author: sobereva 时间: 2021-3-16 09:42
适当降低默认的RHO_MAX和RHO_MIN也往往奏效,但是降得太低的话结果会明显不合理
作者Author: Penson 时间: 2021-3-16 23:40
好的,谢谢社长
作者Author: 九月九 时间: 2021-3-18 17:28
社长好,选择K点后提交任务报错,错误信息:k-points need FULL_GRID currently. Reduced grids not yet working,加入关键词FULL_GRID后才可以正常运行。望改进这个小问题。
作者Author: sobereva 时间: 2021-3-19 18:19
一般情况用k点是绝对不需要写FULL_GRID的,至少对于CP2K 8.1而言
如果你就是用的CP2K 8.1,那你的情况很特殊,没有你的输入文件没法判断
作者Author: tjuptz 时间: 2021-3-19 20:21
社长在第一性原理上好像倾向cp2k 多于qe了,主要出于功能和速度考虑吗
作者Author: alonewolfyang 时间: 2021-3-19 21:24
老师,是不是以后讲第一性的话,您打算主要以CP2K进行讲解
作者Author: sobereva 时间: 2021-3-20 21:17
CP2K为主,有些做得不理想的地方再考虑QE补充
作者Author: sobereva 时间: 2021-3-20 21:17
又快又好用
作者Author: tjuptz 时间: 2021-3-20 22:31
期待科音的培训班
作者Author: 九月九 时间: 2021-3-26 18:20
那可能是我的cp2k版本的原因,我用的是5.0
作者Author: sobereva 时间: 2021-3-26 19:31
5.0也太老了
k点都是CP2K近些年才开始完善的,和当前版本差异大了去了
作者Author: sobereva 时间: 2021-3-29 20:08
今天更新的Multiwfn支持了POSCAR作为输入文件,因此VASP用户可以轻松使用Multiwfn把原有的输入文件转换成CP2K文件、体会CP2K在速度上的极大优越性
作者Author: gog 时间: 2021-4-1 09:22
win10, firefox火狐浏览器,教育网。下载250kb/s
作者Author: coolrainbow 时间: 2021-4-6 12:41
CP2K的固体计算功能十分强大,但是由于历史原因其输入文件十分的恶心。要是能简化输入过程的话那可就太好了。
CP2K是GTO+平面波基组,因此计算孤立小分子时非常慢,但是对于周期性体系则比纯GTO快的多。国内(其实国际上也差不多)的CP2K用户比起VASP等等还是少很多的,CP2K最常用的就是PBE做AIMD了,其它功能用的相对少。
最近倒是有不少用纯GTO计算固体的工作出现,甚至Turbomol、pymol都已经有了可用的代码。但是单点其计算速度还是无法和CP2K的相比,更不用提跑AIMD了。
作者Author: 卡开发发 时间: 2021-4-6 13:38
pymol?pyscf?我印象中pyscf算PBC不是纯GTO的框架。纯PBC的程序是Crystal和Turbomol。
AO+平面波的程序倒是不止CP2K一个,例如SIESTA和OpenMX、GPAW以及ABACUS的LCAO基本上也是这样的框架。SIESTA测试下来速度也不错,遗憾的是赝势和基组太糟糕,功能也偏弱一些。计算有时候也不能光看速度,赝势基组的可靠性也是不容忽视的问题。PLATO那个组他们的文献还是提到,一般还是球型的积分网格可能会更快点,我不是很看好FFT解Poisson方程这样的框架。
作者Author: renj864878110 时间: 2021-4-9 15:50
to USE the blacs environment you need the blacs/scalapack library : recompile with -D__SCALAPACK (and link scalapack and blacs); sobereva老师,我在提交一个任务时出现这个错误,该怎么处理呢?谢谢!
作者Author: 喵星大佬 时间: 2021-4-9 16:37
本帖最后由 喵星大佬 于 2021-4-9 18:49 编辑
纯PBC的程序是Crystal和Turbomol。
是纯GTO吧。。。。。。当然还有高斯emmmmm
Crystal和Turbomol应该都是0-3维周期性都可以的
作者Author: 卡开发发 时间: 2021-4-9 19:25
瞥了一下手册,有FFTDF、AFTDF的框架,需要给定kinetic energy cutoff;GDF应该是纯GTO的框架。
Crystal和Turbomol都可以。Gaussian计算PBC这件事大概还是忘记他比较好
作者Author: 喵星大佬 时间: 2021-4-9 19:42
我的意思是字打错了
纯PBC(纯GTO)
作者Author: renj864878110 时间: 2021-4-10 18:07
弱弱的问一下,我输入的结构是周期性的222模型,优化后是xyz文件(没有了周期性),这该怎么办?
作者Author: djjj148 时间: 2021-4-10 18:22
用Multiwfn把cp2k-1.restart转换成cif文件即可,具体看sob老师帖子中的说明。
作者Author: renj864878110 时间: 2021-4-10 19:10
谢谢!刚开始用它!
作者Author: sobereva 时间: 2021-4-12 08:33
编译的问题
严格照下文编译,不会出现这种问题
CP2K第一性原理程序在CentOS中的简易安装方法
http://sobereva.com/586(http://bbs.keinsci.com/thread-21608-1-1.html)
作者Author: sobereva 时间: 2021-4-12 08:35
我不清楚你的目的是什么
原本的xyz格式并不记录盒子信息
Multiwfn载入restart文件后导出的xyz文件是包含盒子信息的(在注释行)
作者Author: ShuangfeiZhu 时间: 2021-4-13 16:34
老师我想请问下,用CP2K做有机固体的AIMD计算,1000个原子的体系算的了么?我用gfn0-xtb发现算的不准确。用PBE/SZV-MOLOPT-SR-GTH?
作者Author: 喵星大佬 时间: 2021-4-13 19:13
一般来说算不动。。。。
gfn1-xtb应该可以,用纯泛函算有机体系也不是啥好选择,但是杂化泛函更算不动
作者Author: sobereva 时间: 2021-4-14 07:20
你算一步单点看看耗时,乘以你要跑的步数便知
作者Author: liqhua 时间: 2021-4-27 23:53
sob老师,我用CP2K跑spc216.gro会有警告,警告内容是【WARNING in qs_kind_types.F:2026 :: Information provided in the input file regarding BASIS for KIND <H> will be ignored! 】。我用GFN1-xTB方法跑其他体系也会有这种警告。请问老师这是什么意思?谢谢
作者Author: sobereva 时间: 2021-4-28 00:14
不用管,无害
作者Author: 丁越 时间: 2021-6-18 08:24
sob老师给出的建议:若要用原胞设置k点计算,原则上要做k点收敛性测试,不做测试的话,各个晶格矢方向的k点与相应晶胞长度的乘积不低于
d族金属:30埃
其它金属:25埃
半导体:20埃
绝缘体:15埃
若晶胞尺寸很大,gamma点就够了
作者Author: cj4566 时间: 2021-7-8 23:18
请问您用cp2k做过激发态优化吗?能发个例子参考一下吗?谢谢!
作者Author: wuzhiyi 时间: 2021-8-3 19:17
发现好像如果用Set barostat, current: Yes, isotropic cell的话并不会自动设置压强?
需要手动添加
&BAROSTAT
PRESSURE 1.01325
&END BAROSTAT
作者Author: 一条君 时间: 2021-8-5 20:41
老师好,请问对于3.4氧化石墨烯+水分子的结构优化,如果是MD也会考虑Z方向周期性吧,为什么DFT不考虑了呢?(XY //当前体系是XY周期性,Z方向不考虑周期性),谢谢
作者Author: sobereva 时间: 2021-8-6 07:46
当前是优化,水也不会在Z方向跑到无穷远去,本来就没有任何理由要考虑Z方向周期性
作者Author: 一条君 时间: 2021-8-11 17:41
“3.3 优化Cu的晶胞——由于用的是原胞算的,所以此例设了k点”
请问老师cp2k什么时候需要设置k点呢(帖子只有这个例子设置了),有文献或教程介绍吗,谢谢~
作者Author: sobereva 时间: 2021-8-12 01:56
晶胞比较小就需要考虑k点,如果比较大,只需要考虑gamma点就够了
看本帖64L
作者Author: 一条君 时间: 2021-8-12 13:16
请问老师MD压浴中flexible cell和isotropic cell的区别,各项同性控压不改变晶胞尺寸吗?
发现iso没有BAROSTAT section,fle中提示#Relax the cell along which cartesian axes,谢谢~
作者Author: sobereva 时间: 2021-8-12 22:31
当然改变,要不然怎么控压。只不过isotropic是各个方向相同幅度方式变化
作者Author: 一条君 时间: 2021-8-22 19:00
请问老师,cp2k/6.1-plumed2-icc版,提交超算后(3.5 用GFN1-xTB方法)显示invalid value for enumeration xTB,是哪里的原因呢,谢谢~
作者Author: sobereva 时间: 2021-8-23 04:57
CP2K太老
作者Author: annaqz 时间: 2021-11-20 16:39
社长,Multiwfn 3.8,windows下使用。VASP的POSCAR文件,文件名里有POSCAR,然后拖入Multiwfn,输入cp2k,点击enter后闪退了。请问是什么原因呢?
作者Author: sobereva 时间: 2021-11-21 06:08
确保用的是官网上最新的Multiwfn。如果确保是最新的,上传POSCAR我看看。
作者Author: annaqz 时间: 2021-11-22 13:57
好的,我再确认一下,谢谢社长!
作者Author: nianbin 时间: 2021-12-8 10:02
看看说明呀,怎么用,Multiwfn写的很清楚了http://sobereva.com/587
作者Author: annaqz 时间: 2021-12-8 10:52
嗯,我研究了。感谢回复。
作者Author: lilf 时间: 2021-12-16 11:10
社长,能给Multiwfn增加个功能实现Gromacs输入文件的自动制作吗,这样会非常方便
作者Author: sobereva 时间: 2021-12-16 14:44
这没必要,本来mdp也不难写,而且在模板文件基础上修改也很简单(诸如北京科音分子动力学与GROMACS培训班http://www.keinsci.com/workshop/KGMX_content.html里对常见几类问题都给了mdp,通常实际计算时候改几行即可)
作者Author: annaqz 时间: 2021-12-16 19:59
社长,请教一下,要是想对基底的下层原子进行固定,在Multiwfn创建输入文件时应该怎么操作呢?
作者Author: 丁越 时间: 2021-12-17 08:55
进行opt任务的时候选项9就是设置原子坐标固定啊
作者Author: annaqz 时间: 2021-12-17 11:39
哦哦。好的,明白了。我去研究一下,非常感谢!!!
作者Author: 一条君 时间: 2022-1-5 09:52
<用GFN1-xTB方法跑含有216个水的盒子的动力学>
请问老师,为什么跑出来的xyz轨迹文件在VMD中不显示盒子和周期性呢,pbc box 和 periodic都无效,谢谢老师
作者Author: sobereva 时间: 2022-1-5 10:02
xyz里本来就不含盒子信息,看此文了解格式定义
谈谈记录化学体系结构的xyz文件
http://sobereva.com/477
作者Author: Quantum198907 时间: 2022-1-5 13:34
试试:
pbc set {a b c} -all
pbc box
pbc wrap -all
作者Author: sobereva 时间: 2022-3-1 03:23
本文介绍的Multiwfn产生CP2K输入文件的功能已经支持了TDDFT算激发态,见《使用CP2K结合Multiwfn对周期性体系模拟UV-Vis光谱和考察电子激发态》(http://sobereva.com/634)
作者Author: liudong123 时间: 2022-3-6 22:25
老师,Multiwfn创建CP2K输入文件中,Run type没有Band这个选项么?
作者Author: sobereva 时间: 2022-3-6 23:40
目前没有,以后可能加入。支持的任务类型以后会越来越多。
作者Author: sobereva 时间: 2022-3-8 08:59
今日更新的Multiwfn的CP2K输入文件创建功能新支持了产生BSSE任务的输入文件
任务类型里选BSSE,按提示输入即可
作者Author: captain 时间: 2022-4-28 16:30
本帖最后由 captain 于 2022-4-28 16:32 编辑
请问大神,我借助Multiwfn产生的CP2K输入文件如下:
&CELL
ABC 26.000 26.000 41.000
PERIODIC NONE #Direction of applied PBC (geometry aspect)
&END CELL
想进行周期性计算,而这里的cell比我的体系的尺寸大一些(15*15*30),需要再修改一下ABC后面的数值吗?
另外,PERIODIC 后面的NONE(以及下面的 &POISSON PERIODIC NONE #Direction(s) of PBC for calculating electrostatics)应该也相应地根据情况修改为如XY、XYZ等吧?
作者Author: sobereva 时间: 2022-4-29 08:38
如果你载入的输入文件里本身就有盒子信息,Multiwfn产生的CP2K输入文件的盒子信息将和输入文件一致,并且默认的PERIODIC就是实际的周期性
如果输入文件没有盒子信息,程序会认为这是个孤立体系,自动往各个方向扩展一个距离来定义盒子,且默认PERIODIC NONE
作者Author: captain 时间: 2022-4-29 08:44
明白了,多谢大神指点!
作者Author: 西麦西麦 时间: 2022-5-8 17:18
请问sob老师,用multiwfn生成cp2k输入文件的时候,比如CuOx,怎么调校U值和enforce_occupation的参数,另外现在的cp2k的版本k点和+U的功能是否仍然冲突?有没有调节的方法?
作者Author: annaqz 时间: 2022-5-16 09:23
cp2k优化晶胞参数可以固定 xy 方向只优化 z 方向吗?需要在输入文件中怎么设置呢?
作者Author: sobereva 时间: 2022-5-17 02:10
只能自己手动输入,调校不是Multiwfn的事
仍然冲突
作者Author: sobereva 时间: 2022-5-17 02:12
用Multiwfn产生结构优化且开启原子位置约束的任务的输入文件,然后手动修改输入文件里COMPONENTS_TO_FIX后面的内容
作者Author: annaqz 时间: 2022-5-17 09:30
好的,那我试试。谢谢社长!
作者Author: sobereva 时间: 2022-5-18 18:48
今日更新的Multiwfn保存CP2K文件时,如果用的是MOLOPT系列基组,或者DZVP-GTH等老的结合GTH的赝势基组,在得到的CP2K输入文件中会看到基组名后面已经带了诸如-q5这样的价电子数。这样便于用户使用Multiwfn基于CP2K的molden文件进行分析之前在molden文件里插入[Nval]字段设置元素的价电子数(此字段里的内容应当对应-q后面的数字)
作者Author: wth1219 时间: 2022-7-14 12:56
卢老师好,最新版本CP2K 2022.1删除了&XC_FUNCTIONAL中的&LibXC,将交换相关泛函作为独立的模块,可能需要您稍微调整一下Multiwfn中涉及到的输入文件模板了。
(吐槽:CP2K此前一向重视向下兼容的,怎么感觉也开始和ORCA学了……)
例如SCAN泛函原先的输入格式为:
&XC_FUNCTIONAL
&LIBXC
FUNCTIONAL MGGA_X_SCAN
&END LIBXC
&LIBXC
FUNCTIONAL MGGA_C_SCAN
&END LIBXC
&END XC_FUNCTIONAL
使用2022.1版本的输入格式为:
&XC_FUNCTIONAL
&MGGA_X_SCAN
&END MGGA_X_SCAN
&MGGA_C_SCAN
&END MGGA_C_SCAN
&END XC_FUNCTIONAL
作者Author: sobereva 时间: 2022-7-15 10:15
这种交替的时候很麻烦,改成兼容2022.1,1000%又一堆用<=9.1的人问怎么输入文件跑不了
作者Author: wth1219 时间: 2022-7-15 11:06
方才查了一下CP2K的Reference Manual,最近三个版本(8.2、9.1、2022.1)的&XC_FUNCTIONAL部分均补入了大量先前必须依靠&LibXC定义的泛函(包括SCAN、B97M-V。),上面那种新的定义方式是适用的。因此最简单粗暴的解决方案是直接说明部分输入文件仅适用于8.2及之后版本。正常应该像您生成ORCA输入文件那样做一个版本选择,但是正如您所说估计还是会有人直接忽略了。
欢迎光临 计算化学公社 (http://bbs.keinsci.com/) |
Powered by Discuz! X3.3 |