
VASP 模拟计算教程
第 2 期:计算前准备
服务器、Linux 与文件夹结构
上一期我们讲了 VASP 是什么,以及第一性原理计算的大致学习路线。
这一期开始进入真正的操作准备。
很多新手拿到服务器账号后,会立刻去找 INCAR 模板、下载结构文件、准备跑第一个计算。其实不建议这么快开始。
在真正运行 VASP 之前,更重要的是先弄清楚四件事:
计算在哪里运行
如何登录服务器
Linux 基础命令怎么用
文件夹和计算任务怎么组织
这些内容看起来基础,但会直接决定后面的计算是否清楚、可查、可复现。
VASP 不是普通桌面软件。它通常运行在 Linux 服务器、高性能计算集群、超算平台或课题组工作站上。
原因很直接:第一性原理计算很消耗 CPU、内存和存储资源。一个稍复杂的表面吸附模型,可能就需要几十个核心运行数小时甚至数天。
你至少需要知道:怎么进入服务器、怎么找到自己的计算目录、怎么提交任务、怎么查看任务是否还在运行、怎么检查输出文件。
最常见的登录方式是 SSH。ssh username@server_ip
ssh -p 2222 username@server_ip
登录后,先确认自己在哪里,再查看当前目录下有什么:
很多新手后面出错,并不是参数写错,而是任务提交到了错误目录。
pwd 查看当前路径
ls -lh 查看文件列表
cd folder 进入目录
mkdir test 创建目录
cp -r A B 复制文件夹
less OUTCAR 分页查看大文件
tail -f OSZICAR 实时查看输出
建议新手不要只记命令,而是理解每个命令在 VASP 计算中的用途:确认目录、检查文件、查看输出、判断计算是否还在推进。

新手最容易犯的错误之一,是把所有文件都放在同一个目录里。
vasp_project/
├── 00_structures/
├── 01_encut_test/
├── 02_kpoints_test/
├── 03_opt/
├── 04_static/
├── 05_dos/
├── 06_band/
└── scripts/
`00_structures/` 存放初始结构和建模文件。
`01_encut_test/` 和 `02_kpoints_test/` 用来做收敛测试。
`03_opt/`、`04_static/`、`05_dos/`、`06_band/` 对应优化、静态、态密度和能带。
一个基本 VASP 计算目录通常至少包含四个输入文件和一个提交脚本。
03_opt/
├── INCAR
├── POSCAR
├── POTCAR
├── KPOINTS
└── job.sh
提交任务前,先运行 `pwd` 和 `ls INCAR POSCAR POTCAR KPOINTS`。如果文件不齐,先不要提交任务。
不同平台使用的任务调度系统可能不同,最常见的是 Slurm 和 PBS。
sbatch job.sh 提交 Slurm 任务
squeue 查看 Slurm 队列
squeue -u username 查看自己的任务
scancel job_id 取消任务
第一次使用服务器时,优先参考平台说明或课题组已有脚本。不要把网上随便找到的提交脚本直接复制到自己的集群上运行。

第一,当前目录是否正确?
第二,四个输入文件是否齐全?
第三,POSCAR 里的元素顺序是否和 POTCAR 一致?
第四,INCAR 是否对应当前计算类型?
第五,KPOINTS 是否适合体系维度和精度要求?
第六,提交脚本里的核心数、队列和运行命令是否正确?
第七,当前目录是否有旧的输出文件需要备份?
如果不确定旧文件是否有用,不要直接删除。可以先备份:
mkdir backup_old
mv OUTCAR OSZICAR CONTCAR backup_old/
第一,VASP 通常运行在 Linux 服务器或高性能计算平台上。
第二,新手必须掌握基本 Linux 命令和任务提交方式。
第三,清晰的文件夹结构比临时复制模板更重要。
第四,每次提交任务前都要检查目录、输入文件、提交脚本和旧输出文件。
下期预告
第 3 期:VASP 四大输入文件详解
下一期我们将正式进入 INCAR、POSCAR、POTCAR、KPOINTS。这四个文件决定了你算什么、怎么算、用什么赝势,以及如何进行倒空间采样。