13. Frequently Asked Questions (FAQs)¶
您有任何新的问题不在本文档中,欢迎您向我们反馈:QQ群:295488187,96259578
13.1. 续算相关¶
13.1.1. 如何续算?¶
假设CALYPSO的MaxStep=30, 即最大代数为30代,而在运行到第20代的时候由于断电或其他原因导致程序停掉,此时首先需要删除results目录中的pso_ini_20, pso_opt_20, 将input.dat中的pickstep设置为19,重新运行即可。
13.2. Python版本相关¶
13.2.1. CALYPSO运行出现以下报错改如何处理?¶
File "contcar.py", line 64, in <module>
icontcar('./')
File "contcar.py", line 50, in <module>
if linetmp[j] < 0.:
TypeError: 'map' object is not subscriptable
Traceback (most recent call last):
File "contcar.py", line 64, in <module>
icontcar('./')
File "contcar.py", line 50, in <module>
if linetmp[j] < 0.:
TypeError: 'map' object is not subscriptable
File "genenth.py", line 135
print enthalpy('./')
或者是
evo istruct= 177
evo istruct= 178
evo istruct= 179
evo istruct= 180
File "mpi.py", line 16
print '''Warning: multiprocessing is not found.\n'''
^
SyntaxError: Missing parentheses in call to 'print', Did you mean print('''Warning: multiprocessing is not found.\n''')
Step= 10
evo istruct= 181
CALYPSO在运行过程中会多次调用python脚本,而这些脚本使用的均为python2,因此您需要保证,在提交CALYPSO任务时,命令行当前的python环境为python2而非python3。(后续会对所有脚本进行升级)
2023年更新:目前CALYPSO全面支持Python3的环境,后续将只维护Python3版本。
13.2.2. cak.py如何安装?¶
下载CALYPSO_ANALYSIS_KIT安装包
tar xzvf CALYPSO_ANALYSIS_KIT.tar.gz
cd CALYPSO_ANALYSIS_KIT
修改
Makefile
中PYBIN=XXX
,将XXX改为自己的python路径make
13.3. VASP相关¶
13.3.1. KGRID参数无法产生K点文件?¶
该参数已失效,请在INCAR文件中通过KSPACING
参数指定。
13.3.2. 设置KSPACING后产生K点的方式是G方式还是M方式?¶
KGAMMA=True,为GAMMA;KGAMMA=False, 为M,KGAMMA默认为True
KSPACING is the smallest allowed spacing between k points in units of A^-1. The number of k points increases when the spacing is decreased. The number of k points in the direction of the first, second and third reciprocal lattice vectores \vecb_i \veca_j = 2pi\deltaij. The generated grid is either centred at the \gamma point, i.e., includes the \gamma point when (KGAMMA = .TRUE., or is shifted away from the \gamma point, as done for Monkhorst-Pack grids when (KGAMMA=.FALSE.. The default is to include the \gamma point.)
Warning: This implementation is not entirely consistent with the automatic k-point generation (Mode=A) used in the KPOINTS file.
if the k points are generated using the automatic mode in the KPOINTS file, N is calculated as N=max(1, |\vecbi|/(2pi*KSPACING)) and rounding is to the nearest integer. We recommend using the KSPACING tag in the INCAR file and avoiding the automatic mode via the KPOINTS file.
KGAMMA = [logical] Default: KGAMMA = .TRUE. Description: Determines whether the k points (specified by the KSPACING tag) include (KGAMMA=.TRUE.)
13.3.3. CALYPSO运行过程中VASP报错怎么办?¶
CALYPSO
的工作流程为:
产生随机(演化)结构
利用VASP(或其他结构优化软件)优化
如果VASP
报错只能说明该结构不合理或您的参数不合理,不合理的结构会被CALYPSO检测并将能量设置为610612509
,在使用cak.py
分析结果时甚至不会在Analysis_Output.dat
中显示,也不会影响CALYPSO
的正常运行。
Hint
如果遇到了VASP的报错不知道如何解决,您可以参考以下几个网站,他们提供了部分VASP报错的一些解决方案 :star: :
13.3.4. CALYPSO运行过程中出现如图所示问题该如何处理?¶
istruct= 19
istruct= 20
istruct= 21
istruct= 22
istruct= 23
istruct= 24
istruct= 25
run istruct= 1
grep: .//OUTCAR: 没有那个文件或目录
grep: .//OUTCAR: 没有那个文件或目录
run istruct= 2
...
说明VASP
(或其他结构优化软件)没有被正常调用,因此没有产生OUTCAR
,请检查submit.sh
中VASP
路径是否正确。
13.3.5. 关于正常模式(非split模式)submit.sh提交结构优化任务的一些解释¶
CALYPSO
软件通过读取input.dat
文件中sh command
参数,调用外部脚本进行结构优化,这里通常sh command=submit.sh
,所以CALYPSO
通过调用submit
中的命令进行结构优化,关于结构优化软件运行的环境,可在提交CALYPSO
的脚本中加载,也可在submit.sh
中加载(如:module load intelxxx
等)。
13.4. 机器学习势相关¶
13.4.1. 拟合GAP机器学习势中WeightOfAtoms改如何设置?¶
该参数在训练势函数中仅仅起到标记不用元素的作用,只需保证该参数的数目与元素种类相同,且不同元素权重不同即可,如:
一种元素:0
两种元素:0 1 (1 -1)等等
三种元素:-1 0 1( 2 3 4)等等以此类推
13.5. 其他¶
13.5.1. 为什么在计算目录会出现而很多CONTCAR_*、OSZICAR_*、OUTCAR_*等文件?¶
[mym@login8 2]$ ls
2.lsf getforce.py OUTCAR_14.bz2
caly.log gpid.py OUTCAR_15.bz2
calypso.x gulpt.py OUTCAR_16.bz2
CHG IBZKPT OUTCAR_17.bz2
CHGCAR INCAR OUTCAR_18.bz2
CONTCAR INCAR_1 OUTCAR_19.bz2
CONTCAR_10.bz2 INCAR_2 OUTCAR_1.bz2
CONTCAR_11.bz2 INCAR_3 OUTCAR_20.bz2
CONTCAR_12.bz2 input.dat OUTCAR_21.bz2
CONTCAR_13.bz2 mpidata.py OUTCAR_22.bz2
CONTCAR_14.bz2 mpi.py OUTCAR_23.bz2
CONTCAR_15.bz2 OSZICAR OUTCAR_24.bz2
CONTCAR_16.bz2 OSZICAR_10.bz2 OUTCAR_25.bz2
CONTCAR_17.bz2 OSZICAR_11.bz2 OUTCAR_26.bz2
CONTCAR_18.bz2 OSZICAR_12.bz2 OUTCAR_27.bz2
CONTCAR_19.bz2 OSZICAR_13.bz2 OUTCAR_28.bz2
CONTCAR_20.bz2 OSZICAR_14.bz2 OUTCAR_29.bz2
CONTCAR_21.bz2 OSZICAR_15.bz2 OUTCAR_2.bz2
CONTCAR_22.bz2 OSZICAR_16.bz2 OUTCAR_30.bz2
CONTCAR_23.bz2 OSZICAR_17.bz2 OUTCAR_31.bz2
CONTCAR_24.bz2 OSZICAR_18.bz2 OUTCAR_32.bz2
CONTCAR_25.bz2 OSZICAR_19.bz2 OUTCAR_33.bz2
CONTCAR_26.bz2 OSZICAR_1.bz2 OUTCAR_34.bz2
CONTCAR_27.bz2 OSZICAR_20.bz2 OUTCAR_35.bz2
CONTCAR_28.bz2 OSZICAR_21.bz2 OUTCAR_36.bz2
CONTCAR_29.bz2 OSZICAR_22.bz2 OUTCAR_37.bz2
CONTCAR_2.bz2 OSZICAR_23.bz2 OUTCAR_38.bz2
CONTCAR_30.bz2 OSZICAR_24.bz2 OUTCAR_39.bz2
CONTCAR_31.bz2 OSZICAR_25.bz2 OUTCAR_3.bz2
CONTCAR_32.bz2 OSZICAR_26.bz2 OUTCAR_40.bz2
CONTCAR_33.bz2 OSZICAR_27.bz2 OUTCAR_41.bz2
CONTCAR_34.bz2 OSZICAR_28.bz2 OUTCAR_42.bz2
CONTCAR_35.bz2 OSZICAR_29.bz2 OUTCAR_43.bz2
CONTCAR_36.bz2 OSZICAR_2.bz2 OUTCAR_44.bz2
CONTCAR_37.bz2 OSZICAR_30.bz2 OUTCAR_45.bz2
CONTCAR_38.bz2 OSZICAR_31.bz2 OUTCAR_46.bz2
CONTCAR_39.bz2 OSZICAR_32.bz2 OUTCAR_47.bz2
CONTCAR_3.bz2 OSZICAR_33.bz2 OUTCAR_4.bz2
CONTCAR_40.bz2 OSZICAR_34.bz2 OUTCAR_5.bz2
CONTCAR_41.bz2 OSZICAR_35.bz2 OUTCAR_6.bz2
CONTCAR_42.bz2 OSZICAR_36.bz2 OUTCAR_7.bz2
CONTCAR_43.bz2 OSZICAR_37.bz2 OUTCAR_8.bz2
CONTCAR_44.bz2 OSZICAR_38.bz2 OUTCAR_9.bz2
CONTCAR_45.bz2 OSZICAR_39.bz2 PCDAT
CONTCAR_46.bz2 OSZICAR_3.bz2 pos2find.py
CONTCAR_47.bz2 OSZICAR_40.bz2 POSCAR
CONTCAR_48.bz2 OSZICAR_41.bz2 POSCAR.bak
CONTCAR_4.bz2 OSZICAR_42.bz2 poscar.py
CONTCAR_5.bz2 OSZICAR_43.bz2 POTCAR
CONTCAR_6.bz2 OSZICAR_44.bz2 pwscf.py
CONTCAR_7.bz2 OSZICAR_45.bz2 readcell.py
CONTCAR_8.bz2 OSZICAR_46.bz2 read_lammps.py
CONTCAR_9.bz2 OSZICAR_47.bz2 remoteparallel.py
CONTCAR_PSO OSZICAR_4.bz2 REPORT
contcar.py OSZICAR_5.bz2 results
cp2k.py OSZICAR_6.bz2 rvasp.py
DOSCAR OSZICAR_7.bz2 submit.sh
EIGENVAL OSZICAR_8.bz2 surface_run.py
getenergy.py OSZICAR_9.bz2 v2lammps.py
getenthclu.py outcar vasp.log
getenth.py OUTCAR vasprun.xml
getes_castep.py OUTCAR_10.bz2 WAVECAR
getes_lammps.py OUTCAR_11.bz2 writekp.py
getes_lammps_reax.py OUTCAR_12.bz2 XDATCAR
getes.py OUTCAR_13.bz2
出现如图所示情况说明在input.dat
中的RecordOUTCAR
开关被打开,将其设置为RecordOUTCAR=F
即可。(该开关作用为记录并保存每个结构优化之后的参数文件如OSZICAR
,OUTCAR
,CONTCAR
等)
13.5.2. 出现VASP was kiled by CALYPSO是什么原因?¶
_______ _______ _ _______ _______ _______
( ____ \( ___ )( \ |\ /|( ____ )( ____ \( ___ )
| ( \/| ( ) || ( ( \ / )| ( )|| ( \/| ( ) |
| | | (___) || | \ (_) / | (____)|| (_____ | | | |
| | | ___ || | \ / | _____)(_____ )| | | |
| | | ( ) || | ) ( | ( ) || | | |
| (____/\| ) ( || (____/\| | | ) /\____) || (___) |
(_______/|/ \|(_______/\_/ |/ \_______)(_______)
Program CALYPSO v.6.0 starts ...
Today is 26Nov2021 at 15:32:46
Step : 1
Step : 2
Step : 3
Step : 4
Step : 5
vasp is killed by calypso.x
Step : 6
vasp is killed by calypso.x
vasp is killed by calypso.x
vasp is killed by calypso.x
vasp is killed by calypso.x
vasp is killed by calypso.x
vasp is killed by calypso.x
vasp is killed by calypso.x
vasp is killed by calypso.x
vasp is killed by calypso.x
vasp is killed by calypso.x
vasp is killed by calypso.x
vasp is killed by calypso.x
vasp is killed by calypso.x
vasp is killed by calypso.x
vasp is killed by calypso.x
由于CALYPSO
会根据空间群对称性随机产生结构,而随机结构难免会有不合理的构型存在,当VASP
对这些不合理构型进行优化时,优化时间往往会很久,当该结构的优化时间超过input.dat
中的MaxTime
参数设定的时间后,该结构的优化会被CALYPSO
杀掉。
13.5.3. ./calypso.x: Peimission denied. 怎么办?¶
执行chmod +x calypso.x
13.5.4. Analysis_Output.dat中全部为Null,pso_opt_*中全部为610612509,且VASP正常运行,怎么办?¶
依次检查:
VASP
是否运行检测
ICNAR
中是否有PSTRESS
参数(团簇不需要)提高
INCAR
的优化精度提高
input.dat
中Maxtime
13.5.5. 报错end-of-file during read, unit -5, file Internal List-Directed Read¶
input.dat
书写错误
13.5.6. 已经安装spglib, 仍然提示EORRE: please install libpyspg¶
CALYPSO_ANALYSIS_KIT
第19行改为import spglib as spg
, 把libpyspg
拷贝到系统python
的lib
下面
13.5.7. CALYPSO一直卡在产生第一个结构,程序无法继续?¶
检查键长矩阵以及设置的一倍晶胞体积是否合理,通常体积要设置的偏大一些,键长设置的偏小一些(正常键长的百分之八十左右),如果体积太小键长太大会无法产生满足条件的结构。
13.5.8. 预测输出的结构里面没有出现实验中报道的结构是什么原因呢?¶
结构预测不一定能保证跑出实验报道的结构,请比较预测结构和实验结构的能量判断基态。此外搜索的胞内原子数、搜索代数均有一定影响。
13.5.9. CALYPSO能否搜索亚稳态?¶
CALYPSO
可以搜索亚稳态
13.5.10. 如何确定是不是亚稳态。¶
从热力学的角度来看,只要某个结构的能量在波恩奥本海默势能面上不是最低点,那么他就可以认为是一个亚稳态。
声子谱不稳定代表存在能量更低的结构,假设
Analysis
前三个结构声子谱存在虚频,第四个结构动力学稳定,但第四个能量比前三个能量高,所以第四个结构一定不是基态结构;即使Analysis
前几个结构声子谱不稳定,下一个结构声子谱稳定,该声子谱稳定结构也一定不是基态对于声子谱不稳定结构,可以通过扩胞或软膜方法找到能量更低的声子谱稳定结构。
13.5.11. 解除系统堆栈限制¶
执行
ulimit -s unlimited
再次执行
ulimit -s
,查看输出是否为unlimit
,若不是则可能需要重新编译VASP
13.5.12. CALYPSO无法执行¶
intel版本不匹配,需要加载新版本的intel,一般来讲推荐2020及以上
最新版本CALYPSO(7.3.2)已经不再需要用户额外激活intel即可运行
由于CALYPSO编译中使用了intel的动态库,导致在具有其他非相同版本的Intel环境的机器上运行出现缺库的问题,目前在最新版本已经将intel的动态库编译为静态库使问题得以解决。
./calypso.x: error while loading shared libraries: libiomp5.so: cannot open shared object file: No such file or directory
GLIBC版本不匹配
如果您出现了以下报错,说明您使用的可能是比较旧的系统版本,可在群里联系@王振雨或@罗啸山协助您解决。
FATAL: kernel too old
Aborted (core dumped)
或
./calypso.x: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./calypso.x)
Here is a mapping list of GLIBC related to Ubuntu Version and CentOS Version provided by ChatGPT, for reference.
GLIBC Version | Ubuntu Releases | CentOS Releases |
---|---|---|
2.17 | Ubuntu 12.04 LTS | CentOS 7 |
2.18 | Ubuntu 13.10 | |
2.19 | Ubuntu 14.04 LTS | |
2.20 | ||
2.21 | Ubuntu 15.04 | |
2.22 | ||
2.23 | Ubuntu 16.04 LTS | |
2.24 | ||
2.25 | Ubuntu 17.04 | |
2.26 | ||
2.27 | Ubuntu 18.04 LTS | |
2.28 | Ubuntu 19.04 | CentOS 8 |
2.29 | Ubuntu 19.10 | |
2.30 | Ubuntu 20.04 LTS | |
2.31 | Ubuntu 20.04 LTS (Focal Fossa) | |
2.32 | Ubuntu 20.10, 21.04 | |
2.33 | Ubuntu 21.10, 22.04 LTS (planned) | |
2.34 | Ubuntu 21.04 (Hirsute Hippo) | CentOS Stream |
Ubuntu future releases (beyond 22.04 LTS) |