计算化学公社

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

[NWChem] 记录一下NWChem7.0.0的初次安装和使用(自旋轨道耦合SOC计算--SODFT)

[复制链接 Copy URL]

294

帖子

1

威望

2557

eV
积分
2871

科音成员

本帖最后由 helpme 于 2020-5-5 21:46 编辑

为了计算金团簇的自旋轨道耦合,经sob大神建议(感谢!),尝试NWChem,具体参考http://sobereva.com/368

这里简单列出过程,供其他初学者参考。第一次使用,没有经验,有错误不当之处还请多多指正。

安装,下载最新版的(7.0)以后,在服务器上解压,解压得到的文件存于目录 /home/soft/nwchem7。
Linux下依次输入一下命令:
export NWCHEM_TOP=/home/soft/nwchem7
export NWCHEM_TARGET=LINUX64
export NWCHEM_MODULES=all
export USE_MPI=y
export USE_INTERNALBLAS=y
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/mpich2/lib/
export PATH=$PATH:/usr/lib64/mpich2/bin/
make
静等----------------很长时间,安装完成。(不同系统安装可能会因为并行环境不同等有所差异。)
把可执行文件nwchem所在的目录加到PATH里面,
export PATH=$PATH:/home/soft/nwchem7/bin/LINUX64/   (例如在用户的.bashrc里面改)
或者把nwchem文件拷贝到某个可执行文件目录下,例如/usr/local/bin下。
以后就可以直接使用命令 nwchem来运行程序了。


评分 Rate

参与人数
Participants 5
eV +23 收起 理由
Reason
qczgzly + 4 不明觉厉
thanhtam + 4
yflchx + 5
冰释之川 + 5 谢谢
plus + 5 赞!

查看全部评分 View all ratings

华北电力大学数理学院,理论与计算化学,团簇、表面的结构与反应机理。(招第一性原理计算,量子化学计算方向的教师、硕士/博士研究生)

294

帖子

1

威望

2557

eV
积分
2871

科音成员

2#
 楼主 Author| 发表于 Post on 2020-5-4 13:40:21 | 只看该作者 Only view this author
本帖最后由 helpme 于 2020-5-4 13:44 编辑

http://www.cosmologic-services.de/basis-sets/basissets.php下载Au的dhf-tzvp-2c基组,选择Tubromole格式的基组下载,手动改为NWChem格式。构建NWChem输入文件Au2.nw如下:

start
PRINT low
geometry noautosym
Au     0.00000      0.00000     0.00000
Au     0.00000      0.00000     2.484826
end
basis "ao basis" spherical
  Au  s
  30.000000000      0.20199617249
  27.000000000     -0.32928957373
  14.746824331      0.40585528600
  Au  s
  5.6091587912       1.0000000000
  Au  s
  1.3643634132       1.0000000000
  Au  s
0.61656895887       1.0000000000
  Au  s
0.13995954313       1.0000000000
  Au  s
0.49334580278E-01   1.0000000000
  Au  p
  24.708233346     -0.61870876857E-02
  12.351765722      0.86828980159E-01
  6.4227368205     -0.30464846393
  Au  p
  1.6582165111       1.0000000000
  Au  p
0.78113181540       1.0000000000
  Au  p
0.33105069878       1.0000000000
  Au  p
0.45000000000E-01   1.0000000000
  Au  d
  10.620604032      0.20561850202E-01
  7.0985987156     -0.69876065811E-01
  1.7746496789      0.30533062224
0.79960541055      0.44810704955
  Au  d
0.33293576596       1.0000000000
  Au  d
0.12447224161       1.0000000000
  Au  f
     0.72482           1.0
  Au  p
  17.6710          -0.0748
   8.0323           0.5285
  Au  p
   3.6510          -0.8456
  Au  d
   3.8000000000        1.0000000000
END
ECP
Au nelec 60
Au ul
           2      1.00000000  0.00000000
Au s
           2     13.5232180  426.6418670
           2      6.2643840   36.8006680
Au p
           2     11.4138670   87.0020910
           2     10.3292150  174.0043700
           2      5.7074240    8.8706100
           2      4.8281650   17.9024380
Au d
           2      7.4309630   49.8836550
           2      8.3219900   74.6845490
           2      4.6096420    6.4862270
           2      3.5115070    9.5468210
Au f
           2      3.0846390    8.7916400
           2      3.0247430   11.6584560
Au g
           2      3.9784420   -5.2343370
           2      4.0114910   -6.7381420
END
SO           ////////////注意必须包含这个的基组,才可以计算SOC
Au p
    2    11.413867 -174.004182
    2    10.329215  174.004370
    2     5.707424  -17.741219
    2     4.828165   17.902438
Au d
    2     7.430963  -49.883655
    2     8.321990   49.789700
    2     4.609642   -6.486227
    2     3.511507    6.364547
Au f
    2     3.084639   -5.861094
    2     3.024743    5.829228
Au g
    2     3.978442    2.617169
    2     4.011491   -2.695257
END
charge 0
dft
mult 1  //这里的自旋多重度1和上面的charge 0都是默认值,都可以删除不写。
xc xtpss03 ctpss03   //xctpssh, b3lyp, etc,... 不会写名称的话可以故意瞎写一个出错,输出文件里面就会列出可选的泛函了
interations 100 //默认SCF循环次数太少,有时会导致不收敛。
end
task sodft  //改为dft就会忽略SOC计算,此时基组部分SO是否去掉不影响

注:以上输入文件的//注释部分需要删除。以上仅供参考。

运行:
nohup mpirun -np 8 nwchem Au2.nw >out.Au2 &
输出文件out.Au2中可以看到SOC校正后的能量。
华北电力大学数理学院,理论与计算化学,团簇、表面的结构与反应机理。(招第一性原理计算,量子化学计算方向的教师、硕士/博士研究生)

1102

帖子

18

威望

6643

eV
积分
8105

Level 6 (一方通行)

計算化学の社畜

3#
发表于 Post on 2020-5-4 18:03:28 | 只看该作者 Only view this author
谢谢丁老师分享
Stand on the shoulders of giants

220

帖子

0

威望

5712

eV
积分
5932

Level 6 (一方通行)

跳跳猪

4#
发表于 Post on 2020-5-4 21:40:24 | 只看该作者 Only view this author

Here is a script I use which uses intel compier. It will take a while.
  1. #!/bin/bash -l

  2. echo " "

  3. export NWCHEM_TOP=$PWD

  4. # load intel compiler
  5. module load intel/2018/release mkl/2018/release impi/2018/release_multithread

  6. cd $NWCHEM_TOP/src

  7. export NWCHEM_TARGET=LINUX64

  8. # Set ARMCI_NETWORK, comment out this part if you don't need
  9. export ARMCI_NETWORK=OPENIB
  10. export IB_LIB=/usr/lib64
  11. export IB_INCLUDE=/usr/include
  12. export IB_LIB_NAME="-libverbs"

  13. export USE_MPI=y
  14. export USE_MPIF=y
  15. export USE_MPIF4=y

  16. export USE_SCALAPACK=y
  17. export MKL_INCLUDE="$MKLROOT/include"
  18. export SCALAPACK="-L$MKLROOT/lib/intel64 -lmkl_scalapack_ilp64 -lmkl_intel_ilp64 -lmkl_blacs_intelmpi_ilp64 -lmkl_core -lmkl_sequential -lpthread -lm"
  19. export SCALAPACK_LIB="$SCALAPACK"
  20. export SCALAPACK_SIZE=8
  21. export BLASOPT="-L$MKLROOT/lib/intel64 -lmkl_intel_ilp64 -lmkl_core -lmkl_sequential -lpthread -lm"
  22. export BLAS_SIZE=8
  23. export LAPACK_LIB="$SCALAPACK"
  24. export USE_NOIO=y
  25. export CRAYPE_LINK_TYPE=dynamic

  26. export LARGE_FILES=true
  27. export NWCHEM_MODULES=all

  28. export F77=ifort
  29. export F90=ifort
  30. export FC=ifort
  31. export FL=ifort
  32. export CC=icc
  33. export CXX=icpc

  34. make nwchem_config
  35. make
复制代码


流年似水,浮生如梦。

294

帖子

1

威望

2557

eV
积分
2871

科音成员

5#
 楼主 Author| 发表于 Post on 2020-5-4 21:49:13 | 只看该作者 Only view this author
本帖最后由 helpme 于 2020-5-4 22:34 编辑

谢谢分享。上面这种详细配置的,编译出来的版本应该会更快一些。
我只是偶尔用一下,先将就着了。后面nwchem使用不会的,还要多请教大家。
请教一个nwchem的计算问题。不考虑SOC,计算得到的Au2键能是2.257eV,很合理。引入包含SOC的基组后计算键能,得到的是4.983 eV,明显不合理。所用输入输出文件打包给出。
麻烦高手指点一下错误。谢谢!

Au2-bondenergy.tar.gz

6.8 KB, 下载次数 Times of downloads: 15

华北电力大学数理学院,理论与计算化学,团簇、表面的结构与反应机理。(招第一性原理计算,量子化学计算方向的教师、硕士/博士研究生)

1102

帖子

18

威望

6643

eV
积分
8105

Level 6 (一方通行)

計算化学の社畜

6#
发表于 Post on 2020-5-4 23:07:58 | 只看该作者 Only view this author
本帖最后由 冰释之川 于 2020-5-4 23:09 编辑
helpme 发表于 2020-5-4 21:49
谢谢分享。上面这种详细配置的,编译出来的版本应该会更快一些。
我只是偶尔用一下,先将就着了。后面nwch ...

你那Au2团簇有没有优化过?  距离正好是2.5埃?


Stand on the shoulders of giants

294

帖子

1

威望

2557

eV
积分
2871

科音成员

7#
 楼主 Author| 发表于 Post on 2020-5-4 23:46:34 | 只看该作者 Only view this author
谢谢讨论!
使用实验键长以后,非SOC 和 SOC 的键能分别是 2.243 eV和4.971eV (原来分别是2.257eV,4.983 eV),有变化,但不大。应该还是我哪里弄错了。

没做优化的原因是暂时还用不到(还不会用)。
华北电力大学数理学院,理论与计算化学,团簇、表面的结构与反应机理。(招第一性原理计算,量子化学计算方向的教师、硕士/博士研究生)

294

帖子

1

威望

2557

eV
积分
2871

科音成员

8#
 楼主 Author| 发表于 Post on 2020-5-4 23:57:51 | 只看该作者 Only view this author
为了方便检查错误,我把网站上下载的TURBOMOLE格式的基组信息也贴一下。

dhf-TZVP-2c Basis set for Au in TURBOMOLE-format
$basis
*
au dhf-TZVP-2c
*
   3  s
  30.000000000      0.20199617249
  27.000000000     -0.32928957373
  14.746824331      0.40585528600
   1  s
  5.6091587912       1.0000000000
   1  s
  1.3643634132       1.0000000000
   1  s
0.61656895887       1.0000000000
   1  s
0.13995954313       1.0000000000
   1  s
0.49334580278E-01   1.0000000000
   3  p
  24.708233346     -0.61870876857E-02
  12.351765722      0.86828980159E-01
  6.4227368205     -0.30464846393
   1  p
  1.6582165111       1.0000000000
   1  p
0.78113181540       1.0000000000
   1  p
0.33105069878       1.0000000000
   1  p
0.45000000000E-01   1.0000000000
   4  d
  10.620604032      0.20561850202E-01
  7.0985987156     -0.69876065811E-01
  1.7746496789      0.30533062224
0.79960541055      0.44810704955
   1  d
0.33293576596       1.0000000000
   1  d
0.12447224161       1.0000000000
   1  f
     0.72482           1.0
   2  p
  17.6710          -0.0748
   8.0323           0.5285
   1  p
   3.6510          -0.8456
   1  d   
   3.8000000000        1.0000000000
*
# F. Weigend, A. Baldes; J. Chem. Phys. 133, 174102 (2010).
$ecp
*
au dhf-ecp-2c
*
   ncore =  60   lmax = 5    lsomax=4
h
      0.0000000        2      1.0000000
s-h
    426.6418670        2     13.5232180
     36.8006680        2      6.2643840
p-h
     87.0020910        2     11.4138670
    174.0043700        2     10.3292150
      8.8706100        2      5.7074240
     17.9024380        2      4.8281650
d-h
     49.8836550        2      7.4309630
     74.6845490        2      8.3219900
      6.4862270        2      4.6096420
      9.5468210        2      3.5115070
f-h
      8.7916400        2      3.0846390
     11.6584560        2      3.0247430
g-h
     -5.2343370        2      3.9784420
     -6.7381420        2      4.0114910
*
p
-174.004182      2    11.413867
  174.004370      2    10.329215
  -17.741219      2     5.707424
   17.902438      2     4.828165
d
  -49.883655      2     7.430963
   49.789700      2     8.321990
   -6.486227      2     4.609642
    6.364547      2     3.511507
f
   -5.861094      2     3.084639
    5.829228      2     3.024743
g
    2.617169      2     3.978442
   -2.695257      2     4.011491
*
# D. Figgen, G. Rauhut, M. Dolg, H. Stoll; Chem. Phys. 311, 227 (2005).
$end
华北电力大学数理学院,理论与计算化学,团簇、表面的结构与反应机理。(招第一性原理计算,量子化学计算方向的教师、硕士/博士研究生)

689

帖子

21

威望

5019

eV
积分
6128

Level 6 (一方通行)

9#
发表于 Post on 2020-5-5 00:29:38 | 只看该作者 Only view this author
把PRINT low去掉,然后检查占据轨道成分,你会发现Au的电子组态是5d9 6s2。这是激发态

评分 Rate

参与人数
Participants 2
eV +4 收起 理由
Reason
Stardust0831 + 2 GJ!
sobereva + 2

查看全部评分 View all ratings

294

帖子

1

威望

2557

eV
积分
2871

科音成员

10#
 楼主 Author| 发表于 Post on 2020-5-5 12:43:32 | 只看该作者 Only view this author
谢谢提醒!
查看了轨道占据,发现noSOC计算得到的是正确5d10 6s1,而SOC计算得到的是5d9 6s2。
Gaussian中可以guess=read,nwchem不会操作;尝试使用occup关键词,没有成功(可能是我操作有误)。
试出一种笨办法:
把原来输入文件的最后一行task sodft ,改为
task dft
task sodft
这样sodft就会读取前面dft计算的正确轨道占据了。得到了合理的包含SOC的Au2的解离能 2.305 eV。

其它:
1. 计算单重态Au2时,在dft字段定义odft,强制使用开壳层,结果一样。
2. SODFT计算时,列出的分子轨道,alpha和beta是混在一起给出的。
华北电力大学数理学院,理论与计算化学,团簇、表面的结构与反应机理。(招第一性原理计算,量子化学计算方向的教师、硕士/博士研究生)

294

帖子

1

威望

2557

eV
积分
2871

科音成员

11#
 楼主 Author| 发表于 Post on 2020-5-5 22:42:45 | 只看该作者 Only view this author
另外,Gaussian 16也可以做SODFT计算。验算了Au2的解离能,和上述结果基本一致。
详见 beefly大侠的帖子:http://bbs.keinsci.com/thread-17030-1-1.html
华北电力大学数理学院,理论与计算化学,团簇、表面的结构与反应机理。(招第一性原理计算,量子化学计算方向的教师、硕士/博士研究生)

62

帖子

0

威望

1123

eV
积分
1185

Level 4 (黑子)

12#
发表于 Post on 2020-10-10 16:03:58 | 只看该作者 Only view this author
本帖最后由 TDHFjiang 于 2020-10-11 10:41 编辑
helpme 发表于 2020-5-5 12:43
谢谢提醒!
查看了轨道占据,发现noSOC计算得到的是正确5d10 6s1,而SOC计算得到的是5d9 6s2。
Gaussian ...

vectors ouput  *.movecs, vectors input *.movecs

6

帖子

0

威望

137

eV
积分
143

Level 2 能力者

13#
发表于 Post on 2021-11-29 12:29:45 | 只看该作者 Only view this author
helpme 发表于 2020-5-5 12:43
谢谢提醒!
查看了轨道占据,发现noSOC计算得到的是正确5d10 6s1,而SOC计算得到的是5d9 6s2。
Gaussian ...

请问老师,sodft里轨道是怎样读取出它的电子占据是5d10 6s1的呢

1633

帖子

4

威望

4093

eV
积分
5806

Level 6 (一方通行)

喵星人

14#
发表于 Post on 2021-11-30 00:59:14 | 只看该作者 Only view this author
helpme 发表于 2020-5-5 22:42
另外,Gaussian 16也可以做SODFT计算。验算了Au2的解离能,和上述结果基本一致。
详见 beefly大侠的帖子: ...

nwchem和瓜丝干这事情最烦的都是要折腾旋轨势,就怕换格式给换错了

4

帖子

0

威望

23

eV
积分
27

Level 2 能力者

15#
发表于 Post on 2023-9-23 23:24:44 | 只看该作者 Only view this author
beefly 发表于 2020-5-5 00:29
把PRINT low去掉,然后检查占据轨道成分,你会发现Au的电子组态是5d9 6s2。这是激发态

SODFT下alpha电子和beta电子都混合起来,怎么确定5d96s2组态。

本版积分规则 Credits rule

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

GMT+8, 2024-11-26 12:18 , Processed in 0.211193 second(s), 30 queries , Gzip On.

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