Wien2k & phonopy calculation#
How to run#
The Wien2k-phonopy calculation works as follows:
Read a Wien2k struct file with the P lattice format and create supercells with the Wien2k struct format of P lattice using
--wien2k
option (--wien2k):% phonopy --wien2k -d --dim="2 2 2" -c case.struct
In this example, 2x2x2 supercells are created.
case.structS
andcase.structS-xxx
(xxx
are numbers) are the perfect supercell and the supercells with displacements, respectively. Perhaps these are renamed tocase-xxx.struct
and stored incase-xxx
directories, then to be calculated using Wien2k.Calculate forces on atoms in the supercells with displacements. It is necessary to use
case.struct_nn
file when runninginit_lapw
. Note thatcase.struct_sgroup
file can’t be used with phonopy. In the Wien2k calculations, the force convergence option of-fc
has to be specified to obtaintotal forces
. A first attempt of the force convergence criterion may be 0.1 (mRy/a.u.). It is recommended to try more strict convergence criteria with saving one by one usingsave_lapw
.Create
FORCE_SETS
Use
scf2forces
that is found at http://www.wien2k.at/reg_user/unsupported/.Or try experimetal support of
-f
option:% phonopy --wien2k -f case-001.scf case-002.scf ...
where
case-xxx.scf
are the Wien2k results for the supercells.case-xxx.scf
has to containFGLxxx
lines withtotal forces
. When calculating supercells, the number of non-equivalent atoms determined bynn
has to match with the number of non-equivalent atoms determined byphonopy
. The former is found to watchcase-xxx.struct
afternn
(it is supposed thatcase-xxx.struct
created bynn
is used to calculate forces), and the later is displayed in the step 1. An example is found inexample/NaCl-wien2k
.The above procedure with
-f
option may fail. In this case, Wien2k calculations ofcase-xxx.scf
with P1 symmetry may be used for phonopy testing purpose though it computationally demands a lot. If phonopy finds thatcase-xxx.scf
are calculated with P1 symmetry, phonopy handles this as a special case. An example is found inexample/NaCl-wien2k-P1
.
Run post-process of phonopy with the Wien2k unit cell struct file used in the step 1:
% phonopy --wien2k -c case.struct --dim="2 2 2" [other-OPTIONS] [setting-file]
Phonopy can read only the P lattice format. Therefore you have to
convert your struct file to that with the P lattice format. This may
be done using supercell
script in the Wien2k package by making
1x1x1 supercell.