# How to calculate the lattice parameter of a supercell using Phonopy? (For Quantum ESPRESSO)

I found in the internet a method to generate a supercell from the input file using Phonopy code. And I have a question if someone can clarify my doubts please. The method is as following:

We make an input file where the structure is defined by 'ibrav', 'nat', 'ntyp', 'ATOMIC_SPECIES', 'ATOMIC_POSITIONS', 'CELL_PARAMETERS'. It is noticeable that 'ibrav' must be 0 in the input files to use Phonopy, which means the 'CELL_PARAMETERS' must be defined for the structure. Also, the unit for 'ATOMIC_POSITIONS', 'CELL_PARAMETERS' do not need parentheses.

&control
calculation='scf',
outdir='temp',
pseudo_dir = '.',
/
&system
ibrav= 0,
celldm(1) =7.66,
nat= 1,
ntyp= 1,
ecutwfc =60.0,
/
ATOMIC_SPECIES
Bi  208.9804 Bi.pbe-dn-kjpaw_psl.1.0.0.UPF
ATOMIC_POSITIONS crystal
Bi 0.00000000 0.00000000 0.00000000
CELL_PARAMETERS angstrom
-2.025  2.025   2.025
2.025   -2.025  2.025
2.025   2.025   -2.025
K_POINTS automatic
19 19 19 0 0 0


Run Phonopy

To run Phonopy, just simply type : phonopy --qe -d --dim="2 2 2" -c Bi.in

In this example, the 222 supercell is created.

The output will show the number of atoms and the 'CELL_PARAMETERS' and atom positions for supercell. Here is the output looks like:

!    ibrav = 0, nat = 27, ntyp = 1
CELL_PARAMETERS bohr
-11.4800862825768686   11.4800862825768686   11.4800862825768686
11.4800862825768686  -11.4800862825768686   11.4800862825768686
11.4800862825768686   11.4800862825768686  -11.4800862825768686
ATOMIC_SPECIES
Bi  208.98040   Bi.pbe-dn-kjpaw_psl.1.0.0.UPF
ATOMIC_POSITIONS crystal
Bi   0.0000000000000000  0.0000000000000000  0.0000000000000000
Bi   0.3333333333333333  0.0000000000000000  0.0000000000000000
Bi   0.6666666666666666  0.0000000000000000  0.0000000000000000
Bi   0.0000000000000000  0.3333333333333333  0.0000000000000000
Bi   0.3333333333333333  0.3333333333333333  0.0000000000000000
Bi   0.6666666666666666  0.3333333333333333  0.0000000000000000
Bi   0.0000000000000000  0.6666666666666666  0.0000000000000000
Bi   0.3333333333333333  0.6666666666666666  0.0000000000000000
Bi   0.6666666666666666  0.6666666666666666  0.0000000000000000
Bi   0.0000000000000000  0.0000000000000000  0.3333333333333333
Bi   0.3333333333333333  0.0000000000000000  0.3333333333333333
Bi   0.6666666666666666  0.0000000000000000  0.3333333333333333
Bi   0.0000000000000000  0.3333333333333333  0.3333333333333333
Bi   0.3333333333333333  0.3333333333333333  0.3333333333333333
Bi   0.6666666666666666  0.3333333333333333  0.3333333333333333
Bi   0.0000000000000000  0.6666666666666666  0.3333333333333333
Bi   0.3333333333333333  0.6666666666666666  0.3333333333333333
Bi   0.6666666666666666  0.6666666666666666  0.3333333333333333
Bi   0.0000000000000000  0.0000000000000000  0.6666666666666666
Bi   0.3333333333333333  0.0000000000000000  0.6666666666666666
Bi   0.6666666666666666  0.0000000000000000  0.6666666666666666
Bi   0.0000000000000000  0.3333333333333333  0.6666666666666666
Bi   0.3333333333333333  0.3333333333333333  0.6666666666666666
Bi   0.6666666666666666  0.3333333333333333  0.6666666666666666
Bi   0.0000000000000000  0.6666666666666666  0.6666666666666666
Bi   0.3333333333333333  0.6666666666666666  0.6666666666666666
Bi   0.6666666666666666  0.6666666666666666  0.6666666666666666


I didn't understand how did they calculate the lattice parameter of the supercell.I also want to know if something change in ATOMIC_POSITIONS of the unit cell when we replace alat by crystal?

• The example you provided is for a 3*3*3 supercell, not a 2*2*2. The lattice parameter scales linearly. For instance, in your unit cell, you have CELL_PARAMETERS as 2.025 angstrom. That's why in your supercell you have CELL_PARAMETERS as 3*2.025 angstrom = 6.07500 angstrom = 11.480086 Bohr. Does this help? Commented Mar 15, 2023 at 8:11
• @AbdulMuhaymin So they have made a mistake in the example they provided Commented Mar 17, 2023 at 9:55
• if you are referring to this tutorial, then yes, they have definitely made a mistake. They wrote that the example is for a 2*2*2 supercell but the output they provided is for a 3*3*3 supercell. I reproduced the calculation for a 2*2*2 supercell using phononpy and I got the desired 8 atoms in the supercell and CELL_PARAMETERS of 7.65339 bohr or 4.05 angstrom (because 2*2.025=4.05). Commented Mar 17, 2023 at 12:19

The process you described for obtaining a supercell can be found here.

If the 1*1*1 unit cell has a lattice parameter of a, then a 2*2*2 supercell will have a lattice parameter of 2a, a 3*3*3 supercell will have a lattice parameter of 3a, and so on. Note that different parameters have different units.

In your example, it's a body-centered cubic cell with a more symmetric axis (instead of defining it by CELL_PARAMETERS card, you could have used ibrav=-3 and celldm(1)=7.75575). In this case, your unit cell has:

CELL_PARAMETERS angstrom
-2.025  2.025   2.025
2.025   -2.025  2.025
2.025   2.025   -2.025


So, for a 2*2* supercell, you would expect you supercell CELL_PARAMETERS as:

CELL_PARAMETERS angstrom
-4.05   4.05   4.05
4.05   -4.05   4.05
4.05   4.05   -4.05


When I reproduced it using phononpy, I got:

CELL_PARAMETERS bohr
-7.6533908550512457    7.6533908550512457    7.6533908550512457
7.6533908550512457   -7.6533908550512457    7.6533908550512457
7.6533908550512457    7.6533908550512457   -7.6533908550512457


which is equivalent since 4.05 angstrom= -7.65339 bohr. The example you mentioned is incorrect in the sense that even though it talks about a 2*2*2 supercell, it actually calculated a 3*3*3 supercell. That's why you have 27 atoms whereas you should have 8 atoms in a 2*2*2 supercell. I attached the complete output for a 2*2*2 supercell calculation for the input file in the question:

!    ibrav = 0, nat = 8, ntyp = 1
CELL_PARAMETERS bohr
-7.6533908550512457    7.6533908550512457    7.6533908550512457
7.6533908550512457   -7.6533908550512457    7.6533908550512457
7.6533908550512457    7.6533908550512457   -7.6533908550512457
ATOMIC_SPECIES
Bi  208.98040   Bi.pbe-dn-kjpaw_psl.1.0.0.UPF
ATOMIC_POSITIONS crystal
Bi   0.0000000000000000  0.0000000000000000  0.0000000000000000
Bi   0.5000000000000000  0.0000000000000000  0.0000000000000000
Bi   0.0000000000000000  0.5000000000000000  0.0000000000000000
Bi   0.5000000000000000  0.5000000000000000  0.0000000000000000
Bi   0.0000000000000000  0.0000000000000000  0.5000000000000000
Bi   0.5000000000000000  0.0000000000000000  0.5000000000000000
Bi   0.0000000000000000  0.5000000000000000  0.5000000000000000
Bi   0.5000000000000000  0.5000000000000000  0.5000000000000000