Exercise 3: Supercell Size Convergence
Estimated total CPU time: 1530 min
Warning
In the following exercises, computational settings including the reciprocal space grid (tag k_grid
), the basis set, and supercell's size, have been chosen to allow for a rapid computation of the exercises in the limited time and within the CPU resources available during the tutorial session. Without loss of generality, these settings allow to demonstrate trends of the lattice dynamics of materials.
In the production calculation, all computational parameters should be converged.
In this exercise, you will:
 Perform phonon calculations in different supercells and inspect phonon dispersion convergence with respect to the supercell size.
Supercell Size Convergence
So far, we have only worked with a "supercell" that is equal to the primitive unit cell. Although this calculation is not converged with respect to the computational parameters, it already shows some qualitative features of the band structure. The force constants are typically more long ranged than the contribution from next nearest neighbors as given in the primitive unit cell. In order to assess the longer ranged contributions and investigate their influence on the band structure, we now systematically increase the supercell size and recompute the phonon properties.
Please go to the folder
cd phononswithfhivibes/Tutorial/phonons/3_convergence/input
to proceed with this task. You should copy geometry.in
and phonopy.in
for this exercise
from the previous exercise.
As already discussed, the particular supercell matrix we used in exercise 2 corresponds to a unit cell matrix, thus the lattice of the supercell is the same as the lattice of the primitive unit cell. The ideal supercell size and shape depends on your problem at hand and it is difficult to give definite advice. In practice, the supercell size needs to be converged until the target property of interest is not changing anymore. To facilitate this, FHIvibes has an option to create different supercells and moreover to determine a nondiagonal supercell that is as cubic as possible, with the number of atoms close to the specified value. In Phonopy, the crystal symmetry is automatically analyzed from the input unit cell structure file that does not contain the symmetry information. Symmetries are searched by attemping possible symmetry operations to the crystal structure and cheking if the crystal structure after the symmetry operation is overlapping to the original crystal structures. Generation of the 'as cubic as possible' supercell is beneficial, because it leads to the smaller number of calculations once the supercell approach with the finite displacement method ^{3} is used. More details can be found in Phonopy reference papers ^{4}, ^{2}.
To inspect FHIvibes supercell generation functionality try to run:
vibes utils makesupercell n 8
This would generate the conventional, cubic cell of silicon with 8 atoms:
...
Settings:
Target number of atoms: 8
Supercell matrix:
python: [1, 1, 1, 1, 1, 1, 1, 1, 1]
cmdline: 1 1 1 1 1 1 1 1 1
2d:
[[1, 1, 1],
[1, 1, 1],
[1, 1, 1]]
Superlattice:
[[5.41718232 0. 0. ]
[0. 5.41718262 0. ]
[0. 0. 5.41718262]]
Number of atoms: 8
Cubicness: 1.000 (1.000)
Largest Cutoff: 2.709 AA
Number of displacements: 1 (1)
Supercell written to geometry.in.supercell_8
Consequently, the transformation matrix, which creates cubic supercell (conventional Si cell) is:
To run a calculation for such a
supercell, one just needs to replace the supercell keyword in the
phonopy.in
section of phonopy.in file:
...
[phonopy]
supercell_matrix: [1, 1, 1, 1, 1, 1, 1, 1, 1]
...
Before you run the calculations, you can try to compute the lattice of the supercell by hand. Remember that the primitive FCC lattice is given by:
!!! important What is the lattice you expect?
You may compute the volume of the supercell beforehand by
multiplying the determinant of the supercell matrix with the volume of
the primitive cell. In the same way, you can calculate the target number
of atoms in the supercell. (Why?) What is different from the primitive
unit cell? How many atoms are contained in the supercell and why? Is
your calculated lattice identical to the one produced by FHIvibes ?
By default, FHIvibes will write the supercell to a geometry input file named geometry.in.supercell
, which you can
view e.g. with jmol
or 'VESTA' visualization programs, e.g., via jmol geometry.in.supercell
.
Perform the Phonopy calculation as before with
vibes run phonopy
The calculation will be performed in a folder named
phonopy
, an automatically created
working directory triggered by setting
...
[phonopy]
workdir: phonopy
...
in phonopy.in
.
To increase the number of atoms, you could also try (this calculations should be done similarly to those above, but in a separate folder) the supercell matrix:
How many atoms do you expect? In fact, once you increase the supercell size you should adjust your
phonopy.in
accordingly and change the k_grid
setting. For example, if you have a k_grid
of \(8\times8\times8\)
for your primitive cell calculations and then you generate a \(2\times2\times2\) supercell,
you should decrease k_grid
to \(4\times4\times4\).
Warning
Always check that you do not use extremely tight k_grid
when you do calculations with the supercell, because this just burns computational resourses you have, without providing an additional accuracy.
The rational is the following: Since we increased the size of the
supercell, we decreased the size of the reciprocal space. This means:
If we do not change the k_grid
settings, the number of
\(\mathbf{k}\)points used to sample the reciprocal space stays constant
and the density of \(\mathbf{k}\)points increases. To keep the density
of \(\mathbf{k}\)points constant and thus consistent instead, we decrease
the number of \(\mathbf{k}\)points. Always try to choose
\(\mathbf{k}\)grids that are at least approximately commensurate when
working with supercells of different size to obtain consistent
results.^{1}. If you used density
variable before, then everything would be adjusted
automatically, if you have used k_grid
then adjust it to the supercell size.
Run the calculation. This calculation can take up to 10 minutes, depending on your computer.
Reference for several other supercell shapes is given in the
folder solutions
. Inspect the folder and use the provided
FHIaims output files to compute the band structure of even larger
supercell. When do you consider your results as converged?
First, we show the result for the DOS and bandstructure of the 1\times1\times1$ conventional cell (8 atoms):
Second, find below the same figure for the \(2\times2\times2\) conventional cell (64 atoms):
Changes in the DOS that can be visually observed are simple first check of convergence. We find rather significant changes going from \(1\times1\times1\) to \(2\times2\times2\) and we can conclude that the phonon properties of the \(1\times1\times1\) conventional cell were not converged. Similarly, we would need to compute a larger supercell to crosscheck if the \(2\times2\times2\) conventional cell can be considered as converged.

The reason is that by changing the kpoint density, the lattice constant as predicted by the DFT calculation might change and the lattice under consideration would be seen as slightly outofequilibrium. When the lattice constant is converged with respect to the kpoints, this effect should be negligible. In any case, you should reduce the number of kpoints as indicated to save computation time, especially when working with large supercell. With FHIaims however, going from \(2\times2\times2\) to (\(1\times1\times1\) mesh) does not decrease the computation time considerably. FHIvibes has a utility to suggest kgrids based on a density that can be used e. g. with
vibes utils suggest_k_grid geometry.in density 5
. When in doubt, this tool can be used to use consistent kgrid meshes. ↩ 
L. Chaput, A. Togo, I. Tanaka, and G. Hug, Phys. Rev. B, 84, 094302 (2011). ↩

K. Parlinski, Z. Q. Li, and Y. Kawazoe, Phys. Rev. Lett. 78, 4063 (1997). ↩

Atsushi Togo and Isao Tanaka, Scr. Mater., 108, 15 (2015). ↩