10
$\begingroup$

I have one doubt about K points selection for a supercell. I construct one 2X2X1 supercell with 64 atoms having a=11.19, b=11.19, c=5.59. For checking K points convergence test with energy should I consider like 2x2x2, 3x3x3, this type of set or 1x1x2, 1x1x3, 1x1x4 or 2x2x1, 3x3x1, 4x4x1 Which set is more convenient for K points convergence and further calculations.

$\endgroup$
7
$\begingroup$

The KPOINTS have an inverse relationship with the real space lattice vectors. In either way, you won't go wrong. I would prefer to test it using 1x1x2, 1x1x3, 1x1x4, etc. This is simply because your c axis is much smaller than the a and b axis. However, you might also want to explore the other alternatives such as 2x2x3, 2x2x4, etc. Since it is not guaranteed that in the reciprocal a and b directions ($a^{*}$ and $b^{*}$) one KPOINT sampling would be enough.

To add furthermore, you can consider using a package like pymatgen(https://pymatgen.org/) where they can give reliable initial guesses on the KPOINT sampling. From these guesses, you can actually run your convergence tests by having integral multiple of KPOINTS.

$\endgroup$
4
$\begingroup$

I agree with the answer provided by Tara Mishra in that the longer directions in real space correspond to shorter directions in reciprocal space, and therefore comparatively fewer $\mathbf{k}$-points are required. However, I want to provide a complementary answer: rather than explicitly writing out a $\mathbf{k}$-point grid such as $n_1\times n_2\times n_3$ where you have to converge the different $n_i$ separately in the most general case, you can instead use a single-parameter $\mathbf{k}$-point spacing or density. This latter approach would automatically take into account that you have doubled your primitive cell in two directions but not in the third, by reducing the number of $\mathbf{k}$-points in the two corresponding directions in reciprocal space. The resulting convergence exercise is much simpler because you have a single parameter rather than three.

I know of several codes that support this functionality, including Castep with the keyword KPOINT_MP_SPACING, and Vasp with the keyword KSPACING.

$\endgroup$
1
  • 1
    $\begingroup$ Welcome back ProfM! $\endgroup$ Oct 29 at 18:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.