IALGO 值 | 对应 ALGO 值 | 算法名称 | 状态 | 主要特点与适用性 | 重要注意事项 |
38 | Normal (N) | 分块戴维森 (Blocked-Davidson) | 默认 (如果未设置ALGO) | 稳健可靠。同时优化一组能带 (NSIM)。对几乎所有测试体系都有效。 | 遇到收敛问题时可尝试减小 NSIM。 |
48 | VeryFast (F) | RMM-DIIS | 常用 | 速度快,尤其适用于大体系。不支持杂化泛函。 | 可能收敛到错误的亚稳态。不推荐新手直接使用,建议通过 ALGO=Fast间接启用。 |
53 | Damped | 阻尼分子动力学 | 常用 | 直接最小化总能。适用于金属、小带隙半导体和混合泛函。 | 必须谨慎设置 TIME步长。步长过小则慢,过大则发散。 |
54 | (无直接对应) | 快速最小化 (Quick-Min) | 较少用 | 阻尼MD的变体。对 TIME步长不如53敏感,但通常效率较低。 | 可作为IALGO=53的备选方案。 |
58 | Conjugate/All (A) | 共轭梯度 | 常用 | 直接最小化总能。适用于绝缘体和混合泛函。 |
|
IALGO 值 | 算法类型 | 状态 | 说明 |
5, 6, 7, 8 | 共轭梯度 (逐能带) | 弃用 | VASP.5 后不再支持。被更快的戴维森和RMM-DIIS算法取代。 |
15, 16, 17, 18 | 共轭梯度 (子空间对角化后) | 弃用 | 仅为兼容性保留,不应使用。 |
28 | 共轭梯度 (无显式正交化) | 弃用 | 为测试目的保留,在大多数情况下会失败。 |
IALGO 值 | 功能 | 说明 |
-1 | 性能测试 | 不进行实际计算,只输出各部分程序的计时信息。 |
2 | 固定轨道与能量 | 仅重新计算态密度(DOS)等。需读取 WAVECAR。 |
3 | 固定轨道 | 根据当前哈密顿量重新计算能量、能带和DOS。需读取 WAVECAR。 |
4 | 子空间旋转 | 在读取的轨道构成的子空间内进行对角化。 |
90 | 精确对角化 | 精确求解哈密顿量,计算代价高昂,仅用于需要大量空轨道的特殊计算(如GW预备)。 |
计算类型 | 推荐设置 | 理由 |
标准计算 (不求最快,求稳) | 不设置IALGO,或设置 ALGO=Normal | 使用默认的IALGO=38,可靠性最高。 |
大体系计算 (追求速度) | ALGO=Fast | 结合了Davidson的稳健和RMM-DIIS的速度,是最佳折衷方案。 |
绝缘体/混合泛函 | ALGO=All或 ALGO=Damped | IALGO=58 或 53。直接最小化算法对这类计算更有效。 |
金属/小带隙体系 | ALGO=Damped | IALGO=53 的阻尼动力学算法更适合处理能带交错。 |
仅后处理分析 | IALGO=2或 IALGO=3 | 配合读取 WAVECAR文件,快速得到所需信息。 |
最重要的警告(来自Wiki): 我们建议通过 ALGO 标签而不是直接设置 IALGO 来选择算法。ALGO标签封装了更稳定和优化的算法组合。直接使用 IALGO的其他算法可能面临不稳定的风险。
https://vasp.at/wiki/IALGO