qvasp入门:准备VASP四个输入文件
从Cu结构开始生成与检查POSCAR、INCAR、KPOINTS和POTCAR,并认识15类模板。
阅读本篇目录
本篇使用鸢算科技集群实际生成的结构或已经完成的VASP计算数据。环境为官方Linux预编译qvasp2.26(模块 qvasp/2.26),辅助环境为ASE3.29.0、Spglib2.7.0、NumPy和Matplotlib;qvasp原生二进制的编译器版本未公开确认,不将它写成本地重新编译版本。
下载输入、真实数值数据与绘图脚本。解压进入目录,以普通账号运行:
bash run.sh
运行后查看 work/cases、work/analysis-core、work/analysis-extra 和 work/figures。这一命令执行文件准备和后处理,不启动VASP。包内不含POTCAR、WAVECAR或完整原始OUTCAR/XML;精简OUTCAR由明确标注的实际数值摘录生成,仅供工具练习。处理自己的任务时应使用自己的完整原始文件。
1 先准备结构,再生成其余三个输入#
本例采用晶格常数3.61 Å的FCC Cu常规胞,4个Cu原子。第一步把CIF转为VASP结构;第二步生成INCAR;第三步生成KPOINTS;第四步按POSCAR元素顺序生成POTCAR,最后逐项查看。进入已经跑好的示例:
cd work/cases/four-input-Cu
cat POSCAR
cat INCAR
cat KPOINTS
qvasp -cp
从自己的同类CIF重新开始时,在新工作目录执行以下短命令,避免覆盖已有计算:
module load qvasp/2.26
qvasp -c2p2 sample.cif
cp sample.vasp POSCAR
qvasp -relax
qvasp -3k .02
qvasp -pbe Cu
qvasp -cp
sample.cif可采用资料包的 reference/four-input-Cu.cif。不同CIF导出器的列顺序可能不同,转换后务必检查元素和原子数;详见结构处理。
实际POSCAR#
Transfer by qvasp
1.0
3.610000 0.000000 0.000000
0.000000 3.610000 0.000000
0.000000 0.000000 3.610000
Cu
4
Direct
0.000000 0.000000 0.000000
0.000000 0.500000 0.500000
0.500000 0.000000 0.500000
0.500000 0.500000 0.000000
实际KPOINTS#
Auto
0
G
14 14 14
0. 0. 0.
本例得到14×14×14的Gamma网格。网格生成参数 .02 的单位与VASP KSPACING 不同,参见K点专题。
2 模板生成后还要编辑#
实际练习将电子收敛设为1E-6、力阈值设为0.02 eV/Å;串行准备示例取NCORE=1、KPAR=1。可用编辑器修改:
nano INCAR
实际文件如下:
展开完整INCAR
SYSTEM = qvasp
INCAR-basic
PREC = Normal
ENCUT = 400 eV
NELMIN= 5
LREAL = F ## set to A if the valance electron number > 20
# ALGO = Fast
EDIFF = 1E-6
# ISMEAR = 0
SIGMA = 0.2
# LDAU=.TRUE. ## For LDA + U set
# LDAUTYPE=2
# LDAUL=-1 2 ## -1,0,1,2,3 for none,s,p,d,f
# LDAUU=0 3
# LDAUJ=0 0
ISPIN = 1 ## For magnetism set
# MAGMOM = 3*1 -4 16*0 # Antiferromagnetism needs to be set
# NCORE = 2
# KPAR = 2
NCORE = 1
Ionic Relaxation
ICHARG = 2
EDIFFG = -0.02
NSW = 300 #max steps for IOM
IBRION = 2
POTIM = 0.5
ISIF = 2 #not change lattice:2 chang lattice:3
# IOPTCELL= 1 0 0 0 1 0 0 0 0 # fix or relax lattice
PSTRESS= 0
LCHARG = .FALSE.
LWAVE = F
# Use 'qvasp -p2c' to transer format (VESTA or MS)
KPAR = 1
ISIF=2固定晶胞,只优化原子位置。需要晶胞和原子同时优化时通常使用 ISIF=3,但二维材料、表面和分子不能盲目释放真空方向。EDIFFG=-0.02按力停止;正值的EDIFFG含义不同。ENCUT、展宽、磁性和并行设置仍需按体系选择,本例400 eV不代表所有元素已完成截断能收敛。
3 15类INCAR模板分别做什么#
每个生成命令都会写当前目录的INCAR,因此请分别建目录,或先备份自己的文件。
| 命令 | 用途 | 生成后重点检查 |
|---|---|---|
qvasp -relax |
结构优化 | ISIF、EDIFFG、NSW |
qvasp -ts |
过渡态输入 | 具体路径算法和前置结构 |
qvasp -scf |
静态自洽 | ENCUT、网格、磁性 |
qvasp -elf |
电子局域函数 | ELF输出与网格 |
qvasp -wk |
功函数 | 表面、真空、LOCPOT |
qvasp -band |
能带 | 前置电荷和路径 |
qvasp -dos |
态密度 | NEDOS、LORBIT、积分网格 |
qvasp -bader |
Bader前置 | CHGCAR、AECCAR0/2 |
qvasp -hse |
杂化泛函 | 交换参数、加权网格与零权重路径 |
qvasp -md |
分子动力学 | 系综、温度、时间步和总时长 |
qvasp -elastic |
弹性 | 应变/应力、精度和离子约束 |
qvasp -partchg |
分波电荷 | 能带/能量选择 |
qvasp -freq |
振动 | 位移/线性响应方法及自由度 |
qvasp -optics |
光学 | 空带、k点与频率设置 |
qvasp -phonon |
声子前置 | 超胞DIM、路径及后续力常数 |
这些模板均实际生成;生成模板不等于相应HSE、MD、声子等完整计算已经完成。本篇只做输入准备。实际VASP任务使用 yskit 选择适当的软件/资源模板,再在工作目录 sbatch 提交,具体参考VASP实操教程。
4 多元素势文件按POSCAR顺序#
水分子例子的元素顺序为O、H;原子数为1、2,因此只写两种势,不写三个势:
qvasp -pbe O H
qvasp -cp
本例两段标题依次为 PAW_PBE O 08Apr2002 和 PAW_PBE H 15Jun2001。LDA示例为:
qvasp -lda O H
qvasp -cp
不同泛函势不能随意混用。势文件在集群现场生成,下载包不分发POTCAR。每次更改元素顺序或具体 _sv/_pv 变体后,都重新检查 qvasp -cp。
参考:qvasp官方教程与模块实际 qvasp -help。在线手册标记2.25,个别行为与当前2.26不同,本文按本例实际输入输出说明。
继续:完整声子与弹性操作#
已经准备好基本输入后,可接着看qvasp完整DFPT声子流程与GaAs弹性张量提取。前者包含Si16实际DFPT、两种k网格、匹配DIM、Phonopy提取与画图;后者展示实际总弹性张量、单位换算和离子放松含义。都提供终端操作、完整输入和真实数值资料,不将模板生成等同于计算完成。