LREALLREAL 同样会影响电子迭代速度和计算精度。贴一段手册中对这一参数的描述:We recommend to use the real-space projection scheme for systems containing more than 20 atoms.
1)根据手册描述,若体系原子大于20 个,可以考虑使用 LREAL=Auto。
2)若关注的性质需要误差很小,比如极小的带隙 (meV 范围),磁各向异性能 (多在μeV 范围内),建议使用LREAL=.FALSE. 。
往体系中掺杂间隙原子 (比如上例) ,或者从已有结构做元素替换成新结构 (比如从 MoS2 出发把 Mo 替换成其他 TM,或者把一部分的 S 替换成其他元素) ,个人建议在构建初始结构时,手动移动某些关键原子,尽量使得结构只具有 P1 对称性,避免初始结构处于势能面上某些特殊点。这样往往可以获得能量更低的结构。 3、对电子结构(主要是对与能带相关的量)的影响:
以石墨烯为例。如果关注石墨烯布里渊区高对称点 K 点处的性质。如果在结构优化时,没有找到正确的对称性 (D6h),而 VASP 给确定成了 C2h 对称性。C2h 对称性的石墨烯晶格常数 a ≠ b,格矢 a 和 b的夹角可能与 120°存在一定偏差,这会导致该结构倒空间中的高对称点 K 点与真正的 K 点 (D6h 对称性的石墨的 K 点) 有偏离,进一步导致与 K 点有关的量存在计算误差。而这个误差,是可以通过给结构加上正确的对称性完全避免的。
固定某个晶格的优化固定某个晶格的优化:通过修改 VASP 源代码 constr_cell_relax.F 文件,实现一些 VASP 手册中没有提到的结构优化方式,比如固定特定晶格的优化 (目前个人认为也能够实现固定特定晶格夹角的优化,未来若实现了这一功能,会发布详细的讨论及说明) 。如何实现固定特定晶格的优化,可以参考刘锦程博士的博文:
http://blog.wangruixing.cn/2019/05/05/constr/ 。
需要提醒的是:
1、OPTCELL 文件中 0 和 1 之间是没有空格的。
2、刘锦程博士的博文中还讨论了一种情况:将 OPTCELL 中上三角矩阵元设为 0 可以使得在弛豫过程中晶胞晶格不发生转动。但个人认为这么做可能存在一定的风险。具体讨论如下:
简单起见,假设晶格 c 轴垂直于 ab 轴平面。同时假设 a 轴沿笛卡尔坐标系 x 轴正方向(即 L_ax > 0),b 轴 x 方向分量 L_bx > 0 且 y 方向分量 L_by > 0。示意图如下:
格矢变换矩阵为:其中 F 矩阵为 FCELL 矩阵,L 矩阵为 A_OLD 矩阵,其中正数标记为绿色。
在 L[sub]ax[/sub]、L[sub]bx[/sub]、L[sub]by[/sub] 均大于 0 的情况下,在 F 矩阵元取不同值时,等式右边晶格增量矩阵中 a 晶格在 x 和 y 方向的增量:F[sub]ax[/sub]*L[sub]ax[/sub]+F[sub]ay[/sub]*L[sub]bx[/sub] 和 F[sub]ay[/sub]*L[sub]by[/sub] ,可能是正值也可能是负值,一共有四种情况,见下图。
上述两个截图均由脚本生成,脚本稍后会上传至 qq 群 (432953524,DFT计算之家-砥砺前行)。
四、其他讨论
结构优化给出的态密度是否可用:阅读手册 DOSCAR 的介绍部分,可以看到在弛豫时,DOSCAR 包含的是平均 DOS。手册不建议使用弛豫时的 DOSCAR。“For dynamic simulations and relaxations, an averaged DOS and an averaged integrated DOS is written to the file.… Mind: For relaxations, the DOSCAR is usually useless.”。个人认为,如果弛豫时离子步只跑了很少的步数 (比如 20 步以内),结构没有发生较大变化,即弛豫过程体系电子结构没有发生较大变化,可以通过弛豫输出的 DOSCAR 获得体系的 DOS,从而大概判断体系为金属还是半导体,带隙大小。 结构优化给出的能量是否可用:如果在弛豫过程中,晶格变化较小 (比如晶格常数相差 5% 以内,晶格夹角相差 5% 以内),结构没有发生较大的变化,可以使用弛豫给出的体系能量做一些快速判断 (比如吸附能,铁磁反铁磁能量差)。更进一步,弛豫在 20 步以内快速收敛,且晶格变化非常小 (1% 以内),结构优化给出的数据与后续静态计算给出的数据几乎是一样的。下表为某体系吸附小分子的吸附自由能比较,可以看到分别使用弛豫和自洽计算的能量获得的吸附自由能相差在 1meV 以下。需要进一步说明的是,若要获得更加准确的能量,建议增加 K 点进行自洽计算。