0% found this document useful (0 votes)
257 views48 pages

Phonopy Tips 2014

Phonopy uses density functional perturbation theory or finite displacement methods to calculate force constants from first principles. It constructs the dynamical matrix and obtains phonon frequencies and eigenvectors by diagonalizing this matrix. Thermodynamic properties are then calculated using a harmonic or quasi-harmonic approximation of the phonon density of states.

Uploaded by

anibrata
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
257 views48 pages

Phonopy Tips 2014

Phonopy uses density functional perturbation theory or finite displacement methods to calculate force constants from first principles. It constructs the dynamical matrix and obtains phonon frequencies and eigenvectors by diagonalizing this matrix. Thermodynamic properties are then calculated using a harmonic or quasi-harmonic approximation of the phonon density of states.

Uploaded by

anibrata
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 48

Phonons & Phonopy:

Pro Tips

J. M. Skelton

WMD Research Day


10th October 2014
Phonons and Lattice Dynamics

Crystallography is generally concerned with the static properties of crystals,


describing features such as the average positions of atoms and the symmetry of a
crystal. Solid state physics takes a similar line as far as elementary electronic
properties are concerned.

We know, however, that atoms actually move around inside the crystal structure,
since it is these motions that give the concept of temperature […].

The static lattice model, which is only concerned with the average positions of atoms
and neglects their motions, can explain a large number of material features […].

There are, however, a number of properties that cannot be explained by a static


model…

Martin Dove, “Introduction to Lattice Dynamics”

WMD Research Day: 10th Oct 2014 | Slide 2


Overview
• Theory
 The quantum harmonic oscillator; the 3D harmonic crystal
 Ab initio thermodynamics
• Harmonic phonopy
 Workflow
 Calculating forces: options and things to watch out for (!)
 Post processing
 Input/output files; “hacking” phonopy for other calculators
• Anharmonicity 1: the quasi-harmonic approximation
 Theory
 phonopy-qha: workflow, output and example applications
• Anharmonicity 2: phonon-phonon coupling
• Theory
• phono3py: workflow, setup and post processing
• Summary

WMD Research Day: 10th Oct 2014 | Slide 3


The Quantum Harmonic Oscillator

1
𝐹 = −𝑘(𝑟 − 𝑟0 ) 𝐸= 𝑘(𝑟 − 𝑟0 )
2
1 𝑘
𝑈𝑛 = 𝑛 + ℏ𝜔 𝜔=
2 𝜇

Where:
𝑘 = Spring constant
𝜔 = Frequency
𝜇 = Reduced mass
𝑈𝑛 = Potential energy

WMD Research Day: 10th Oct 2014 | Slide 4


Imaginary Frequencies and Phase Transitions
𝑘>0 𝑘<0
U

U
r - r0 r - r0
• If the system is on a potential-energy maximum, there is no restoring force along certain
modes -> these will have a negative force constant associated with them

• Since 𝜔 = 𝑘/𝜇, the mode must have an imaginary frequency (usually represented as a
negative frequency in phonon DOS/band structure curves
• The mechanism for some phase transitions is for one or more modes in the stable
structure to become imaginary at the transition temperature

WMD Research Day: 10th Oct 2014 | Slide 5


The 3D Harmonic Crystal
𝜕2𝐸 𝜕𝐹𝛼 (𝑖𝑙)
Force constant matrix: Φ𝛼𝛽 𝑖𝑙, 𝑗𝑙′ = = −
𝜕𝑟𝛼 (𝑙)𝜕𝑟𝛽 (𝑙′ ) 𝜕𝑟𝛽 (𝑗𝑙′)

𝐹𝛼 (𝑖𝑙) Sum over atom 𝑗 in adjacent unit


From finite differences: Φ𝛼𝛽 𝑖𝑙, 𝑗𝑙′ ≈ − cells 𝑙′ -> supercell expansion to
∆𝑟𝛽 (𝑗𝑙′)
improve accuracy
1
Dynamical matrix: 𝐷𝛼𝛽 𝑖, 𝑗, 𝐪 = Φ𝛼𝛽 𝑖0, 𝑗𝑙′ exp[𝑖𝐪. (𝒓 𝑗𝑙′ − 𝒓(𝑖0))]
𝑚𝑖 𝑚𝑗
𝑙′

After diagonalisation: 𝑒 𝐪 . Ω 𝐪 = 𝐷 𝐪 . 𝑒(𝐪)

• The force constant matrix Φ𝛼𝛽 (𝑖𝑙, 𝑗𝑙′) can be obtained either from finite-displacement
calculations, or using DFPT
• The number of displacements which need to be evaluated to construct the dynamical
matrix can be reduced by symmetry

WMD Research Day: 10th Oct 2014 | Slide 6


The 3D Harmonic Crystal

𝑚1 𝑟𝑥 (1, 𝐪, λ) ω(λ1 , 𝐪) . . . .
𝑚1 𝑟𝑦 (1, 𝐪, λ) . ω(λ2 , 𝐪) . . .
𝒆 𝐪, λ = 𝑚1 𝑟𝑧 (1, 𝐪, λ) Ω 𝐪 = . . ω(λ3 , 𝐪) . .
⋮ . . . ⋱ ⋮
𝑚𝑁 𝑟𝑧 (𝑁, 𝐪, λ) . . . . ω(λ3𝑁 , 𝐪)

𝐷𝑥𝑥 (1,1, 𝐪) 𝐷𝑥𝑦 (1,1, 𝐪) 𝐷𝑥𝑧 (1,1, 𝐪) … 𝐷𝑥𝑧 (1, 𝑁, 𝐪)


𝐷𝑦𝑥 (1,1, 𝐪) 𝐷𝑦𝑦 (1,1, 𝐪) 𝐷𝑦𝑧 (1,1, 𝐪) … 𝐷𝑦𝑧 (1, 𝑁, 𝐪)
𝐷 𝐪 = 𝐷𝑧𝑥 (1,1, 𝐪) 𝐷𝑧𝑦 (1,1, 𝐪) 𝐷𝑧𝑧 (1,1, 𝐪) … 𝐷𝑧𝑥 (1, 𝑁, 𝐪)
⋮ ⋮ ⋮ ⋱ ⋮
𝐷𝑧𝑥 (𝑁, 1, 𝒒) 𝐷𝑧𝑦 (𝑁, 1, 𝑞) 𝐷𝑧𝑧 (𝑁, 1, 𝐪) … 𝐷𝑧𝑧 (𝑁, 𝑁, 𝐪)

WMD Research Day: 10th Oct 2014 | Slide 7


LO/TO Splitting

<111>

• Two optic modes involve rows of atoms sliding past each other, while the third involves
separation of the ions
• The latter has an extra restoring force associated with it -> LO/TO splitting
• This can be modelled by a non-analytical correction to the phonon frequencies, using the
Born effective charge and macroscopic dielectric tensors

WMD Research Day: 10th Oct 2014 | Slide 8


Ab Initio Thermodynamics

Helmholtz free energy: 𝐴(𝑇) = 𝑈(𝑇) − 𝑇𝑆(𝑇)


𝑈𝑉 0K = 𝑍𝑃𝐸

For a solid: 𝐴(𝑇) = 𝑈𝐿 + 𝑈𝑉 𝑇 − 𝑇𝑆𝑉 (𝑇)

Where: 𝐴(𝑇) = Helmholtz energy


𝑈𝐿 = Lattice internal energy Equilibrium DFT
𝑈𝑉 (𝑇) = Vibrational internal energy
Phonons (!)
𝑆𝑉 (𝑇) = Vibrational entropy

Thermodynamics requires phonons!

WMD Research Day: 10th Oct 2014 | Slide 9


Ab Initio Thermodynamics

Helmholtz energy: 𝐴(𝑇) = 𝑈𝐿 + 𝑈𝑉 𝑇 − 𝑇𝑆𝑉 (𝑇)

Partition function: 𝐴 𝑇 = −𝑘𝐵 𝑇 ln 𝑍(𝑇)

exp[ℏ𝜔(𝐪, λ)/2𝑘𝐵 𝑇]
𝑍 𝑇 = exp[−𝑈𝐿 /𝑘𝐵 𝑇]
1 − exp[ℏ𝜔(𝐪, λ)/𝑘𝐵 𝑇]
𝐪,λ

1 1
Vibrational energy: 𝑈𝑉 𝑇 = ℏ𝜔(𝐪, λ) +
2 exp ℏ𝜔 𝐪, λ /𝑘𝐵 𝑇 − 1
𝐪,λ

𝜕𝑈 𝜕𝐴 Phonon occupation
Derivatives: 𝐶𝑉 = 𝑆= number
𝜕𝑇 𝑉
𝜕𝑇

WMD Research Day: 10th Oct 2014 | Slide 10


phonopy: Workflow

Input Structure

Create
phonopy -d [--dim=“1 1 1”]
Displacements

Calculate Forces

phonopy -f vasprun-{001..XXX}.xml
Extract Forces
phonopy --fc vasprun.xml

Post-Process phonopy [-t] [-p] [-s] Settings.conf

WMD Research Day: 10th Oct 2014 | Slide 11


phonopy: Setup
Set up the calculations
phonopy -d on an XxYxZ supercell
[--dim=“1 1 1”]
[--tolerance=1e-5]
[-c POSCAR] Position tolerance for
symmetry detection

Path to POSCAR-format structure


(“cell”), if not “POSCAR”
Information about the structure, supercell
disp.yaml and displaced atoms
POSCAR-001
POSCAR-002
POSCAR-003 POSCAR files containing single atomic displacements
...
SPOSCAR “Unperturbed” supercell for DFPT phonon
calculation

WMD Research Day: 10th Oct 2014 | Slide 12


phonopy: Calculating Forces

Sample finite-differences INCAR: Sample VASP force-constants INCAR:

ADDGRID = .TRUE. ADDGRID = .TRUE.


EDIFF = 1E-8 EDIFF = 1E-8
ENCUT = 500-800 eV ENCUT = 500-800 eV
LREAL = .FALSE. IBRION = 5|6|7|8
PREC = High | Accurate LREAL = .FALSE.
NSW = 1
PREC = High | Accurate

• Accurate forces are essential -> crank the standard settings right up
• LREAL = .FALSE. is essential, unless you manually adjust ROPT
• ADDGRID = .TRUE. doesn’t seem to be essential, but doesn’t cost much either
• For finite-difference/DFPT phonon calculations in VASP, set NSW = 1

WMD Research Day: 10th Oct 2014 | Slide 13


ADDGRID = .FALSE. ADDGRID = .FALSE.
LREAL = .FALSE. LREAL = Auto

ADDGRID = .TRUE. ADDGRID = .TRUE.


phonopy: Calculating Forces

LREAL = .FALSE. LREAL = Auto

WMD Research Day: 10th Oct 2014 | Slide 14


phonopy: Calculating Forces

XC = PBE
XC = LDA

XC = TPSS

WMD Research Day: 10th Oct 2014 | Slide 15


phonopy: Calculating Forces

4x4x4 Primitive Cell 4x4x4 Conventional Cell

• There are options in phonopy to project a calculation on the conventional cell back to
the primitive cell during post processing

WMD Research Day: 10th Oct 2014 | Slide 16


phonopy: Some “Pro Tips”

If using VASP FD/DFPT, set NWRITE = 3 in the INCAR file, and you can run this
bash script on the OUTCAR to obtain a simulated IR spectrum “for free”:
http://homepage.univie.ac.at/david.karhanek/downloads.html#Entry02

If using DFPT with an LDA/GGA functional, set LEPSILON = .TRUE. in the


INCAR file to obtain the static dielectric constant, in particular the ionic-
relaxation part, for a small added cost

When using FD/DFPT, VASP tries to change the k-point set internally, which
requires NPAR = #Cores to be set in the INCAR file; setting ISYM = -1
avoids this, and although the number of displacements which need to be
evaluated may increase, the performance gained by using band parallelism can
quite easily offset this for low-symmetry systems (!)

WMD Research Day: 10th Oct 2014 | Slide 17


phonopy: Post Processing

phonopy -p -s Settings.conf Settings file

“Plot” “Save”

PbTe
Sample phonon DOS settings file:

DIM = 4 4 4
MP = 48 48 48
GAMMA_CENTER = .TRUE.

WMD Research Day: 10th Oct 2014 | Slide 18


phonopy: Post Processing

phonopy -p -s Settings.conf Settings file

“Plot” “Save”

PbTe
Sample phonon DOS settings file:

DIM = 4 4 4
MP = 48 48 48
GAMMA_CENTER = .TRUE.
EIGENVECTORS = .TRUE.
PDOS = 1, 2

WMD Research Day: 10th Oct 2014 | Slide 19


phonopy: Post Processing

phonopy -p -s -t Settings.conf Settings file

“Plot” “Save” “[Calculate] thermal


properties”

PbTe
Sample phonon DOS settings file:

DIM = 4 4 4
MP = 48 48 48
GAMMA_CENTER = .TRUE.

WMD Research Day: 10th Oct 2014 | Slide 20


phonopy: Post Processing

phonopy -p -s Settings.conf Settings file

“Plot” “Save”

PbTe
Sample phonon band structure settings file:

DIM = 4 4 4
BAND = 0.0 0.0 0.0 0.5 0.25 0.75
0.5 0.0 0.5 0.0 0.0 0.0
0.5 0.5 0.5
BAND_POINTS = 101
BAND_LABELS = \Gamma W X \Gamma L
[EIGENVECTORS = .TRUE.]

WMD Research Day: 10th Oct 2014 | Slide 21


phonopy: Post Processing

phonopy -p -s Settings.conf Settings file

“Plot” “Save”

PbTe
Sample phonon band structure settings file:

DIM = 4 4 4
BAND = 0.0 0.0 0.0 0.5 0.25 0.75
0.5 0.0 0.5 0.0 0.0 0.0
0.5 0.5 0.5
BAND_POINTS = 101
BAND_LABELS = \Gamma W X \Gamma L
BAND_CONNECTION = .TRUE.

WMD Research Day: 10th Oct 2014 | Slide 22


phonopy: Non-Analytical Corrections
• To apply a non-analytical correction (LO/TO splitting) to the phonon frequencies,
Phonopy needs the Born effective charges and electronic-polarisation contribution to the
macroscopic dielectric constant
• For LDA/GGA functionals, these can be computed using DFPT; for others, they need to be
computed from the response to an electric field

INCAR for Born charges using DFPT: INCAR for Born charges using LCALCEPS:

EDIFF = 1E-8 EDIFF = 1E-8


ENCUT = 500-800 eV ENCUT = 500-800 eV
LEPSILON = .TRUE. LCALCEPS = .TRUE.
LREAL = .FALSE. LREAL = .FALSE. ! Required?
NSW = 0 NSW = 0
PREC = High | Accurate PREC = High | Accurate
[EFIELD_PEAD = Ex Ey Ez]

WMD Research Day: 10th Oct 2014 | Slide 23


phonopy: Non-Analytical Corrections

outcar-born > BORN

Sample BORN file:

<Conversion Factor> Dielectric tensor


εxx εxy εxz εyx εyy εyz εzx εzy εzz
Zxx Zxy Zxz Zyx Zyy Zyz Zzx Zzy Zzz Born charge tensors
Zxx Zxy Zxz Zyx Zyy Zyz Zzx Zzy Zzz for unique atoms

• Corrections are enabled by setting NAC = .TRUE. in the configutation file, or passing
--nac as a command-line argument
• When this option is used, phonopy expects to find a BORN file in the working directory

WMD Research Day: 10th Oct 2014 | Slide 24


phonopy: Non-Analytical Corrections

NAC = .FALSE. NAC = .TRUE.

PbTe

WMD Research Day: 10th Oct 2014 | Slide 25


phonopy: Force-Constant Symmetrisation
FC_SYMMETRY = 0 FC_SYMMETRY = 1

ZnS

• Force-constant symmetrisation is enabled by setting FC_SYMMETRY = > 0 in the


configuration file
• Note that the symmetrisation is done by default in most other codes (e.g. VASP) (!)

WMD Research Day: 10th Oct 2014 | Slide 26


phonopy: Output Files

Sample mesh.yaml file: Sample band.yaml file:

mesh: [ mx, my, mz ] nqpoint: 808


nqpoint: 32000 npath: 8
natom: 8 natom: 8
phonon: phonon:
- q-position: [ qx, qy, qz ] - q-position: [ qx, qy, qz ]
weight: w1 distance: d1
band: band:
- # 1 - # 1
frequency: ω1 frequency: ω1
... ...

• If EIGENVECTORS = .TRUE. is set in the configuration file, the mode eigenvectors


will also appear in these files
• With BAND_CONNECTION = .TRUE., the frequencies for each band in band.yaml
are ordered so that they connect across the band structure

WMD Research Day: 10th Oct 2014 | Slide 27


phonopy: Output Files

Sample total_dos.dat file: Sample thermal_properties.yaml file:

# Sigma = 0.053821 unit:


-0.5372... 0.0000... temperature: K
-0.5103... 0.0000... ...
-0.4834... 0.0000...
-0.4564... 0.0000... natom: 8
-0.4295... 0.0000... zero_point_energy: 18.9108676
-0.4026... 0.0000... high_T_entropy: 847.3220815
-0.3757... 0.0000...
-0.3488... 0.0000... thermal_properties:
-0.3219... 0.0000... - temperature: 0.0000000
... - free_energy: 18.9108676
- entropy: 0.0000000
• The “partial_dos.dat” file generated - heat_capacity: 0.0000000
with EIGENVECTORS = .TRUE. - energy: 18.9108676
contains one column for each atom in ...
the primitive cell

WMD Research Day: 10th Oct 2014 | Slide 28


“Hacking” phonopy

Sample FORCE_SETS file: Sample FORCE_CONSTANTS file:

128 128
2 1 1
Φxx Φxy Φxz
1 Φyx Φyy Φyz
d1x d1y d1z Φzx Φzy Φzz
F1x F1y F1z 1 2
F2x F2y F2z Φxx Φxy Φxz
... Φyx Φyy Φyz
2 Φzx Φzy Φzz
d2x d2y d2z ...
F1x F1y F1z
F2x F2y F2z
...

WMD Research Day: 10th Oct 2014 | Slide 29


“Hacking” phonopy: Phonopy-QE

PBEsol PBE+D2 PBE


25.0
Sulphamerazine Form-I

20.0
Phonon DOS / AU

15.0

10.0

5.0

0.0
-500 0 500 1000 1500 2000 2500 3000 3500 4000
v / cm-1

WMD Research Day: 10th Oct 2014 | Slide 30


“Hacking” phonopy: Phonopy-Tinker

IRMOF-10

WMD Research Day: 10th Oct 2014 | Slide 31


Anharmonicity 1: The QHA
• In the harmonic approximation, 𝒓0 is
temperature independent -> cannot predict
thermal expansion

• At finite temperature, the system will


minimise its free energy (𝐴 or 𝐺), as opposed
to its lattice internal energy (𝑈𝐿 )

• This can be modelled by computing 𝐴(𝑇) as a


function of volume, from a sequence of
harmonic phonon calculations, and
performing an EoS fit to 𝐴 at each
temperature

• Not really “anharmonic”, but not “purely


harmonic” either -> “quasi harmonic”

• Valid up to approx. 2𝑇𝑚 /3

WMD Research Day: 10th Oct 2014 | Slide 32


Anharmonicity 1: The QHA
In principle, QHA can
also model 𝑝 dependence
Gibbs energy: 𝐺 𝑇 = 𝐻 − 𝑇𝑆 = 𝑈 + 𝑝𝑉 − 𝑇𝑆

For a solid: 𝐺 𝑇 = 𝑈𝐿 𝑉 + 𝑈𝑉 𝑇, 𝑉 + 𝑝𝑉 − 𝑇𝑆𝑉 (𝑇, 𝑉)

Within the QHA: 𝐺 𝑇, 𝑝 = min[𝐴 𝑉, 𝑇 + 𝑝𝑉]


𝑉

Derived properties: 𝑉 𝑇 , 𝐵(𝑇) -> From EoS fits


1 𝜕𝑉
α𝑉 (𝑇) ->
𝑉 𝜕𝑇 𝑝

𝜕𝐺
𝑆(𝑇) -> −
𝜕𝑇 𝑝

𝜕𝐻
𝐶𝑝 (𝑇) -> −
𝜕𝑇 𝑝

Once we have 𝑉(𝑇), we can compute any property for which the temperature
dependence is captured (to first approximation) by volume changes

WMD Research Day: 10th Oct 2014 | Slide 33


phonopy-qha: Workflow

EoS Curve E/V curve -> “e-v.dat”

Harmonic phonopy -d --dim=“...”


Phonopy phonopy -f vasprun-{001..XXX}.xml

Thermal
phonopy -t -p -s Settings.conf
Properties

Post-Process phonopy-qha
e-v.dat
thermal_properties-{001..XXX}.yaml
--tmax=980
Needs to be two points smaller [--tstep=10]
than the maximum temperature [--pressure=<p/GPa>]
in the YAML files [-p] [-s]

WMD Research Day: 10th Oct 2014 | Slide 34


phonopy-qha: Output

WMD Research Day: 10th Oct 2014 | Slide 35


phonopy-qha: Output
bulk_modulus-temperature.dat <- B is temperature dependent(!)
Cp-temperature.dat
Cp-temperature_polyfit.dat
Cv-volume.dat <- CV at each volume, at each temperature
dsdv-temperature.dat
entropy-volume.dat <- SV at each volume, at each temperature
gibbs-temperature.dat
gruneisen-temperature.dat <- Average Gruneisen parameter (?)
helmholtz-volume.dat <- A at each volume, at each temperature
thermal_expansion.dat <- 𝛼𝑉 𝑇 (Volumetric)
3
volume_expansion.dat <- 𝛼𝐿 𝑇 (Linear; ∆𝐿/𝐿0 , with 𝐿 = 𝑉)
volume-temperature.dat

WMD Research Day: 10th Oct 2014 | Slide 36


phonopy-QHA: Examples
PbTe: 0 K - 600 K

PbTe

PbTe: 0 K - 600 K

WMD Research Day: 10th Oct 2014 | Slide 37


phonopy-QHA: Examples

PbTe Functional αL / 10-6 K-1 αV / 10-6 K-1


LDA 19.66 58.99
PW91 34.99 104.98
PBE 39.51 118.56
PBEsol 22.37 67.11
TPSS 29.04 87.13
revTPSS 25.85 77.56

Exp: αL = 19.8/20.4 10-6 K-1

WMD Research Day: 10th Oct 2014 | Slide 38


phonopy-QHA: Examples
SnS: 10 K - 350 K

PbTe: 0 K - 600 K

WMD Research Day: 10th Oct 2014 | Slide 39


Anharmonicity 2: Phonon-Phonon Coupling
• The harmonic approximation treats phonons as being independent oscillators; this
means the phonons have infinite lifetimes
• In a real system, phonon-phonon coupling leads to scattering and a finite phonon
lifetime; this anharmonic effect is required to model heat transport

At equilibrium, the change in


occupation probability due to…

𝜕𝑓 𝐪, 𝜆 𝜕𝑓 𝐪, 𝜆 𝜕𝑓 𝐪, 𝜆 𝜕𝑓 𝐪, 𝜆
𝑟 = 𝑟 𝑑𝑖𝑓𝑓 + 𝑟 𝑒𝑥𝑡 + 𝑟 𝑠𝑐𝑎𝑡𝑡 =0
𝜕𝑡 𝜕𝑡 𝜕𝑡 𝜕𝑡

…diffusion, … …the external


heat current, … …and scattering … …must balance

WMD Research Day: 10th Oct 2014 | Slide 40


Anharmonicity 2: Phonon-Phonon Coupling

𝜕𝑓 𝐪, 𝜆 𝜕𝑓 𝐪, 𝜆 𝜕𝑓 𝐪, 𝜆 𝜕𝑓 𝐪, 𝜆
BTE: 𝒓 = 𝒓 𝑑𝑖𝑓𝑓 + 𝒓 𝑒𝑥𝑡 + 𝒓 𝑠𝑐𝑎𝑡𝑡 =0
𝜕𝑡 𝜕𝑡 𝜕𝑡 𝜕𝑡

𝜕𝑓 𝐪, 𝜆 𝑓 𝐪, 𝜆 − 𝑓 0 𝐪, 𝜆 Scattering assumed to be
RTA: 𝒓 𝑠𝑐𝑎𝑡𝑡 =
𝜕𝑡 τ(𝐪, 𝜆) related to phonon lifetimes

0
𝜕𝑓 0 𝐪, 𝜆
𝑓 𝐪, 𝜆 − 𝑓 𝐪, 𝜆 = −𝒗(𝐪, 𝜆) 𝛻𝑇τ(𝐪, 𝜆)
𝜕𝑇

Where: 𝑓 𝐪, 𝜆 Mode occupation probability


𝑓 0 𝐪, 𝜆 Initial mode occupation probability
𝑣 𝐪, 𝜆 Mode group velocity
𝜏(𝐪, 𝜆) Mode relaxation time

WMD Research Day: 10th Oct 2014 | Slide 41


Anharmonicity 2: Phonon-Phonon Coupling
1
Phonon linewidths: 𝜏 𝐪, 𝜆 =
Γ(𝐪, 𝜆)

𝜕3𝐸 −𝐹𝑖,𝛼
Phonon-phonon interactions: Φ𝛼𝛽𝛾 𝑖, 𝑗, 𝑘 = ≈
𝜕𝑟𝑖,𝛼 𝜕𝑟𝑗,𝛽 𝜕𝑟𝑘,𝛾 ∆𝑟𝑗,𝛽 ∆𝑟𝑘,𝛾

𝜕𝑓 0 𝐪, 𝜆
…and finally: 𝜅𝐿 = 𝜔 𝐪, 𝜆 𝑣 𝐪, 𝜆 ⨂𝑣 𝐪, 𝜆 𝜏 𝐪, 𝜆
𝜕𝑇
𝐪,𝜆
Tensor product
𝜅𝐿 = 𝐶𝑉 𝐪, 𝜆 𝑣 𝐪, 𝜆 ⨂𝑣 𝐪, 𝜆 𝜏 𝐪, 𝜆
𝐪,𝜆

• In practice, the calculation involves a large set of single-point calculations to determine


Φ𝛼𝛽𝛾 𝑖, 𝑗, 𝑘 , followed by a computationally-heavy post-processing step to get 𝜅𝐿
• Worth noting that the BTE-RTA method may benefit from a cancellation of errors, and as
such works well despite ignoring various effects

WMD Research Day: 10th Oct 2014 | Slide 42


phono3py: Workflow
𝜅𝐿 is driven by heat transport through acoustic
Input Structure phonons; these have zero frequency at Γ, so
off-Γ q-points are a must

Create
phono3py -d --dim=“2 2 2”
Displacements

Calculate Forces

Extract Forces phono3py --cf3 vasprun-{001..XXX}.xml

phono3py --dim=“2 2 2”
Post-Process phono3py --tmax=1000 --tstep=10 --fc2 --fc3
--dim=“2 2 2” -v --mesh=“24 24 24”
--br --sigma=“0.1”

WMD Research Day: 10th Oct 2014 | Slide 43


phono3py: Setup
Set a pair-cutoff distance for Φ𝛼𝛽𝛾 𝑖, 𝑗, 𝑘 ;
reduces number of displaced structures
phono3py -d --dim=“...”
Separate supercell sizes for calculating
[--cutpair=4] Φ𝛼𝛽 𝑖, 𝑗 and Φ𝛼𝛽𝛾 𝑖, 𝑗, 𝑘

[--dim2 =“4 4 4”]/--fc2_extra=“4 4 4”]

phono3py --cf3 vasprun-{001..XXX}.xml Extract forces from VASP output

phono3py --dim=“...” Precalculate Φ𝛼𝛽 𝑖, 𝑗 and Φ𝛼𝛽𝛾 𝑖, 𝑗, 𝑘


[--dim2...] to save time during post-processing

The --cutpair tag uses the same numbering for the displaced POSCAR files
as the full calculation; this means the cutoff can be increased, and the extra
displacements added, systematically, to converge w.r.t. the interaction range

WMD Research Day: 10th Oct 2014 | Slide 44


phono3py: Post Processing
Read in pre-calculated
force constants

phono3py --tmax=1000 --tstep=10 --fc2 --fc3


--dim=“...” -v --mesh=“24 24 24”
--br --sigma=“0.1” [--nac]
[--dim2=“...”/--fc2_extra=“...”]

# of interactions per q-point becomes larger with mesh


size; cannot easily “max out” as for DOS calculations,
but needs to be converged

• The post-processing (mainly the phonon-lifetime calculations) takes a very long time for
large supercells/large or low-symmetry structures
• It is possible to run the calculation on (ranges of) q-points separately, and then combine
them afterwards
• Various post-processing tags can be applied, e.g. to incorporate isotope effects

WMD Research Day: 10th Oct 2014 | Slide 45


phono3py: Examples
15 15
PbS PbSe
12 12
κ / w m-1 K-1

κ / w m-1 K-1
9 Increasing V 9

6 6

3 3

0 0
25 125 225 325 425 525 25 125 225 325 425 525
T/K T/K

15
PbTe
12
κ / w m-1 K-1

0
25 125 225 325 425 525
T/K

WMD Research Day: 10th Oct 2014 | Slide 46


Summary: So, What Can Phonopy Do?

“Anharmonicity” Properties
phonopy Phonon (P)DOS, phonon dispersion, 𝐴(𝑇), 𝑈𝑉 (𝑇),
𝑆𝑉 (𝑇), 𝐶𝑉 𝑇 , phonon properties such as mode
eigenvectors, 𝒗(𝐪, 𝜆), IRs, thermal MSDs, etc.
phonopy-gruneisen 𝛾(𝐪, 𝜆) (mode Gruneisen parameters)
phonopy-qha 𝐵(𝑇[, 𝑝]), 𝑉(𝑇[, 𝑝]), 𝐺(𝑇[, 𝑝]), 𝐶𝑝 (𝑇[; 𝑝]), 𝛾(𝑇[, 𝑝]), any
property where the 𝑇[, 𝑝] dependence can be modelled
by changes in the lattice parameters
phono3py κ𝐿 (𝑇); also possible to extract related quantities such as
Γ(𝐪, 𝜆), τ(𝐪, 𝜆), 𝐶𝑉 (𝐪, 𝜆), 𝒗(𝐪, 𝜆)

WMD Research Day: 10th Oct 2014 | Slide 48


A Few Closing Remarks
• In my experience, a well-chosen GGA functional (e.g. PBEsol for bulk materials) gives
accurate forces
 Provided tight convergence criterion are used, phonon frequencies and
thermodynamic properties show good agreement with experiment

• Using the QHA is a bit more expensive, but in return yields a lot of properties
 Model the temperature dependence of properties without e.g. resorting to MD
averaging (although this certainly does have its merits)
 [Cynical] Should end up with enough data for a decent PRB…

• phono3py produces very good values for 𝜅𝐿 , although it can be very expensive (“the GW
of lattice dynamics”?)
 New code; still need to test various aspects of its functionality
 Not many people doing this type of calculation at the moment, either with
phono3py or ShengBTE

WMD Research Day: 10th Oct 2014 | Slide 49

You might also like