计算化学公社

标题: 简易安装standalone版XMVB [打印本页]

作者
Author:
鬼隐    时间: 2022-5-11 13:54
标题: 简易安装standalone版XMVB
本帖最后由 鬼隐 于 2022-5-20 19:39 编辑

关于XMVB
价键理论(VBT)和分子轨道理论(MOT)是上世纪20年代波函数理论最初的两个原始分支,当时新的量子理论首次应用于分子。VB的起点是Heitler和London提出的双氢分子基态单重态的波函数式。此后,无数物理学家和有数理基础的化学家不断丰富理论。可惜VBT一直没有大的进展。
1940年后,相比于分子轨道理论,人们对大分子的兴趣也使价键方法无用武之地。虽然和我们在中文教科书上阅读到的只言片语不同,但是价键方法的确败了。值得强调的是,分子轨道理论方法胜过的是共振论,简单的价键形式,而不是价键理论。
当下值得我们研究、发展和使用的是现代价键理论(Modern Valence Bond Theory)。


目前已知的ab initio VB 软件有 TURTLE VB2000 CRUNCH XMVB。非常有趣的是,我们曾经非常抵触价键共振论,甚至为了绕开他发明了大键,如今价键理论做得最出彩的却是中国的XMVB团队。
下图可以看出XMVB有两版,一版是xmvb链接GAMESS,功能完善,但是可能需要修改部分源码添加一些编译选项和内容,才能正常编译,另一版是standalone的XMVB,不需要链接其他库。

我平时使用的是导师原位编译的GAMESS-XMVB,享受完整功能,但是郑州封闭期间,集群关闭,只能自行安装使用。因此做这个笔记。

XMVB安装前言
XMVB的安装颇为不易,单说standalone版XMVB,已知是在CentOs7上编译的,但是本人使用CentOs7却无法正常运行,通过Debian11和CentOS7上的报错信息可以知道,XMVB要求兼容GLIBC 2.2.7 GFORTRAN 1.0 1.4。这个还是蛮奇怪的,因为Centos7的GLIBC是2.17。
这并难不倒我,有两个思路:
我曾在arch上安装过chemsh-tcl,那时编译了无数版gcc才编译成功,更别说编译低版本gcc还需要编译gcc。glibc升级可能更加麻烦和危险,这是非常基础的库。
最终结合稀少的成功经验,找到一个最简易的安装方法。理论上支持Windows10+,Linux, docker。

安装
使用系统发行版是ubuntu18.04。

准备系统 环境
其可使用WSL2在微软商店下载,或者自行安装或者使用相关docker获取。得到基础系统之后。进去清华源-ubuntu换源(如果你在大陆)
依次执行
  1. sudo apt update
  2. sudo apt upgrade
  3. sudo apt install gfortran-5gfortran-5  gcc-5 cpp-5 vim wget git
  4. sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 40
  5. sudo update-alternatives --install /usr/bin/cpp cpp /usr/bin/cpp-5 40
  6. sudo update-alternatives --install /usr/bin/gfortran gfortran /usr/bin/gfortran-5 40
  7. sudo ln -s /usr/bin/gcc  /usr/bin/cc
复制代码
可以通过strings命令验证系统信息



获取XMVB
进入XMVB-official申请XMVB安装包,得到后复制到系统内,比如 /home/ansatz/soft
  1. mkdir xmvb
  2. cd xmvb

  3. mv ../xmvb3.0-linux-x86_64-gnu.tar.bz2 .
  4. tar -xjf xmvb3.0-linux-x86_64-gnu.tar.bz2
  5. ./post-install
复制代码



此时你的文件夹内容应该是

值得说的是,我得到的安装包缺少了data内容,我从以前的包里碎片组合了一下得到完整的包,如果出现缺少组件的情况,可能需要向XMVB团队反映。
  1. cd bin

  2. pwd

  3. vim ~/.bashr
复制代码

最终把bin文件夹的路径添加进PATH变量完成安装

测试
使用一例
tmp.input内容
  1. hf cc-pvtz
  2. 0 1
  3. F   0.0 0.0 0.0
  4. F   0.0 0.0 1.41
复制代码

F2.xmi内容
  1. F2
  2. $ctrl
  3. nstr=3 iscf=5 nae=2 nao=2 guess=mo
  4. iprint=2
  5. $end
  6. $str
  7. 1:8 9 10
  8. 1:8 9 9
  9. 1:8 10 10
  10. $end
  11. $orb
  12. 15*10
  13. 1-15
  14. 16-30
  15. 1-15
  16. 16-30
  17. 1-15
  18. 16-30
  19. 1-15
  20. 16-30
  21. 1-15
  22. 16-30
  23. $end
  24. $gus
  25. 1   1
  26. 2   1
  27. 3   3
  28. 4   3
  29. 5   6
  30. 6   6
  31. 7   5
  32. 8   5
  33. 9   7
  34. 10  7
  35. $end
复制代码

执行
  1. preint tmp.input #准备积分
  2. xmvb F2.xmi # 进行计算
复制代码




可以看到作业正常结束了

其实更推荐同时编译一个GAMESS,在计算之前单独算一个HF单点,这样可以可视化轨道,进而构建.xmi文件
同样可以自行配置符合要求的glibc gcc来安装XMVB-standalone,个人建议使用docker来运行。
GAMESSS-XMVB有空再讲如何链接。

本文首发于知乎专栏 软件安装&配置

作者
Author:
Legofan    时间: 2022-5-19 19:38
moldendat是结合.xdat画VB轨道图的,用GUESS=MO构建.xmi直接看GAMESS的输出就行
作者
Author:
morningya    时间: 2024-4-18 21:06
最近想用一下XMVB,但是输入文件部分的轨道信息没懂是怎么编辑的,能请教一下老师吗




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3