代码位置
https://github.com/jxzhangcc/PIO
使用步骤
对于PIO3
Gaussian计算部分
在高斯关键词部分加入pop=nbo6read
在高斯输入文件的最后一行加入:
1
$nbo FILENAME=CH4 AONAO=W33 FNAO=W61 DMNAO=W71 $end
通过formchk将chk转换成fchk,然后
1
2formchk xx.chk xx.fchk
cat *33 *61 *71 > *49
PIO部分
1 | conda activate |
注意:如果计算的是开壳层,需要手动将输出的pio和pimo中的fchk文件中泛函部分的ROXXXX改成UXXXX,这样Multiwfn和Jmol等软件才能有两套轨道。
以下内容主要是基于之前的pio
Gaussian计算部分
在高斯关键词部分加入pop=nbo6read
- nboread调用的是高斯自带的NBO3,要用NBO6得到.49,否则格式会有问题。格式修改见博文。
在高斯输入文件的最后一行加入:
1 $NBO AONAO=W49 FNAO=W49 DMNAO=W49 SKIPBO file=XXX $END
- 中XXX应与之后生成的 .fchk 文件名一致
- PIO_v3可能会报错,需要49文件的名字为大写的
通过formchk将chk转换成fchk
1 formchk xxx.chk xxx.fchkpio部分
此时应当有 .fchk 文件以及 NBO 生成的 .49 文件
pio命令一般在在/home/scicons/bin下,将其添加至环境变量即可。此时执行
1 pio ${FILENAME}.fchk {碎片1 的原子序号} {碎片2 的原子序号}
- 碎片可以是
xx-xx
这样的格式如果报错,看体系是否是开壳层的,如果是开壳层,需要对.49文件进行一点修改
开壳层,通过一下命令检查,会出现SPIN出现的行数,会发现默认顺序是aabb,正确的顺序应该是abab
1 grep -n 'SPIN' XXX.49
在NAO密度矩阵部分只有alpha,结束之后紧跟的是NAO的Fock矩阵,而第一个beta实际上是NAO密度矩阵的部分,将这部分移动到alpha密度矩阵的后面即可。
利用vim命令进行调换即可,调换方法:
1
2
3
4
:129075,154831d
p
结果分析部分
- pio对结果在生成的txt文件中,pio对的轨道在pio.fchk文件中,而PIMOs的记过在pimo.fchk中
- pio_v3还有raw文件,pio_v4已经删除
- 轨道如果通过pio_v4分析得到,用Multiwfn或者Jmol打开转换得到的molden文件,能量都是0,要避免可以用pio_v3
Windows下运行
需要下载python2和anaconda配置python2的运行环境
打开Anaconda的命令行,输入
1
conda activate py27
执行命令:
1
python PIO.py FILENAME.FChk
输入原子:
1
1-5,8,13 6-7,9-12