用户工具

站点工具

本页面的其他翻译:
  • zh

adf:onlyatomscompleted

故障:只完成原子计算,不进行分子计算

前言

ADF的计算过程是:首先用Slater基组计算原子,得到原子的轨道,用原子的轨道作为基组,计算整个分子。因此在logfile里面,可以看到,先完成原子的计算,然后列出分子的坐标,然后计算整个分子。具体如下:

问题检测

检查生成的logfile文件,正常的logfile文件可以看出结构大致如下:

<Oct07-2014> <16:46:45>  ADF 2014  RunTime: Oct07-2014 16:46:45  Nodes: 1  Procs: 1
<Oct07-2014> <16:46:45>  Hydrogen (DZ)
<Oct07-2014> <16:46:45>  RunType   : CREATE
<Oct07-2014> <16:46:45>  Net Charge: 0 (Nuclei minus Electrons)
<Oct07-2014> <16:46:45>  Symmetry  : ATOM
 Coordinates
 Atom         X           Y           Z   (Angstrom)
 1.H         0.000000    0.000000    0.000000
……
<Oct07-2014> <16:46:45>  NORMAL TERMINATION
<Oct07-2014> <16:46:45>  END

这是一个原子的计算结束,体系中包含多少种元素,就需要如此计算多少次,例如本例中计算了H原子,如果是水分子,则还需要计算O 原子,内容与上面类似。

原子计算结束后,开始计算整个分子。正常的情况应该是出现类似如下信息(本例是进行结构优化):

<Oct07-2014> <16:46:59>  ADF 2014  RunTime: Oct07-2014 16:46:59  Nodes: 1  Procs: 4
<Oct07-2014> <16:47:00>  *** (NO TITLE) ***
<Oct07-2014> <16:47:00>  RunType   : GEOMETRY OPTIMIZATION
<Oct07-2014> <16:47:00>  Net Charge: 0 (Nuclei minus Electrons)
<Oct07-2014> <16:47:00>  Symmetry  : NOSYM
<Oct07-2014> <16:47:00>  >>>> FRAGM
 Coordinates in Geometry Cycle 1
 Atom         X           Y           Z   (Angstrom)
 1.O         1.284562    0.324947    0.006385
 2.H         1.441312   -0.581801   -0.267179
 3.H         0.814314    0.329950    0.843309

这里列出了要计算的整个分子的坐标,之后开始了分子的计算。

但如果这部分内容一直不能开始,也检查不到adf.exe的进程,那么这很可能是由于无密码通讯设置不完善造成。

对于Linux:

一般在集群或单个服务器(联网或不联网都是如此),在节点间切换,例如从node01节点切换到node02节点,可以在node01的命令行输入ssh node02回车。然后就会登陆到node02节点,正常情况下,是不需要输入密码的,系统管理员一般而言,已经完成了免密码登录的配置;如果是单个服务器,例如ip是192.168.1.100,那么自己切换到自己,应该是不需要输入密码的——即如果当前在192.168.1.100服务器上,在命令行执行ssh 192.168.1.100回车,之后是不需要输入密码的。

倘若这种设置没有完善,在节点切换时,需要输入密码,那么就会导致计算不能进行(能够完成原子计算部分,而分子计算部分则一直不开始,也不结束,无论等多久都没有任何反应)。

对于Windows:

往往是杀毒软件把ADF并行计算禁止了,这在安装过程中,防火墙会弹出提示,如果不理会,则会自动禁止。WSASocket failed, error 10060报错,就是由于防火墙引起的,关闭防火墙就正常工作了。或者把AMS进程加入到白名单。

解决方式(Linux系统)

对于这种情况,完成免密码登录的配置即可解决——这一般由系统管理员或维护人员完成。

如果自己就是管理员,或者没有其他专业人员帮忙,可以参考如下步骤(范例中是对root用户,普通用户类似,只是普通用户的主目录不是/root,通过执行cd ~即进入主目录,生成的.ssh文件夹也是在该目录下),范例为两个节点,名为node01和node02.如果是一个节点,也是类似的:

1、更改/etc/hosts文件
#vi /etc/hosts   打开hosts文件,更改如下:   
node01的IP node01
node02的IP node02   
2、在node01生成SSH秘钥对.
#ssh-keygen -t rsa  一路回车即可 产生.ssh文件,
#ls -a   查看是否有.ssh文件夹
3、进入.ssh目录
#cd .ssh
4、生成authorized_keys文件
#cp id_rsa.pub authorized_keys
5、退出到root目录
#cd ..
6、建立本身的信任连接
#ssh node01     按提示输入yes(三个字母要打全)
7、设置node02(node02的root目录下)
#ssh-keygen -t rsa     生成.ssh文件夹
#scp node01的IP:/root/.ssh/* /root/.ssh    拷贝node01上的.ssh文件夹覆盖本地的
#scp node01的IP:/etc/hosts /etc/hosts      拷贝node01上的hosts文件覆盖本地的
#ssh node01  提示处输入yes回车
8、确认2台机器的信任连接已建立 对每个节点执行:
#ssh node01                                                
#ssh node02

在提示处输入yes回车,最后确定无需输入密码并且没有任何提示信息即可登陆。

如果有多于两个节点的话,其余节点按node02类似设置

解决方式(Windows)

对于Windows系统,这种情况很可能是防火墙和杀毒软件引起的,也就是并行进程被不小心列入防火墙禁止名单里面了。应该将其从禁止名单里面删除。或者卸载,重新安装,安装的过程中,留意防火墙的提示,应允许ADF所有操作。

adf/onlyatomscompleted.txt · 最后更改: 2020/10/17 19:06 由 liu.jun

© 2014-2022 费米科技(京ICP备14023855号