VASP 内存与 WAVECAR 体积估算
VASP 的内存几乎全花在波函数上。而波函数的大小由三个数决定:平面波数(NPW)、能带数(NBANDS)、k 点数。把它们算出来,你就知道这台机器够不够。
输入
结果
| 量 | 估算值 | 说明 |
|---|---|---|
价电子总数 NELECT | — | 原子数 × 每原子价电子数,决定了能带数 |
默认能带数 NBANDS | — | VASP 默认 max(NELECT/2 + N/2, 0.6×NELECT) |
平面波数 NPW | — | 体积 × 截断能的 3/2 次方,决定单个波函数的大小 |
| WAVECAR 体积 | — | 能带 × (平面波+1) × 16 字节 × k 点 × 自旋 |
| 内存下限 | — | 波函数 + 电荷密度 + FFT 工作区的最小可用值 |
| 建议内存 | — | 取「每原子 0.5 GB(含余量 0.75 GB)」与「波函数体积」两者的较大者 |
—
三个结论,比数字本身更重要
- 内存随体系近似线性增长:原子数翻倍,价电子数翻倍、平面波数随体积增长,两者相乘使内存近似线性上升。200 原子的体系要 128 GB,400 原子就要 256 GB 起。
- 截断能是 1.5 次方的放大器:
NPW ∝ Ecut^1.5,把ENCUT从 400 提到 520 eV,平面波数增加约 1.5 倍,内存与机时一起涨。做收敛性测试时,这个代价要算进预算。 - 杂化泛函不只是慢:HSE 需要额外保存相关量,内存翻倍以上,机时是 PBE 的 5~10 倍。选实例时按 2 倍内存 + 6 倍机时准备,别照着 PBE 的配置开。
常用参考量级
| 体系 | 典型体积 | 建议内存 | 建议核数 |
|---|---|---|---|
| 32 原子(小分子晶体) | 300~600 ų | 8~16 GB | 8~16 |
| 64 原子 | 800~1500 ų | 24~48 GB | 16~32 |
| 128 原子 | 2000~3000 ų | 64~128 GB | 32~64 |
| 256 原子 | 4000~6000 ų | 128~256 GB | 64~96 |
以上为 PBE + 常规 k 点网格的经验区间,不含杂化泛函与自旋轨道耦合。真实需求以你这台机器上的一次试算为准——先跑 5 个离子步,看 OUTCAR 里的内存报告。
需要离线使用?下载单文件版——保存后双击即可在本机算,不联网、不上传数据。