Phonons from density-functional-perturbation theory: Difference between revisions

From VASP Wiki
No edit summary
No edit summary
Line 1: Line 1:
'''Density-functional-perturbation theory''' provides a way to compute the second-order linear response to ionic displacement, strain, and electric fields. The equations are derived as follows.


In density-functional theory, we solve the Kohn-Sham (KS) equations
It determines the Hessian matrix (matrix of second derivatives with respect to the position of the ions) using density-functional-perturbation theory (DFPT). {{TAG|IBRION}}=7 does not apply symmetry, whereas {{TAG|IBRION}}=8 uses symmetry to reduce the number of displacements. The output is similar as for [[IBRION#ibrion56|'''IBRION'''=5 and 6]]. Specifically, the second derivates of the total energy with respect to ionic displacements (interatomic force constants) and the mixed second derivative with respect to the strain and the ionic displacement (internal strain tensor) are evaluated. Although the contributions from the ionic relaxations to the elastic tensor are calculated, the ion-clamped elastic tensor (rigid ion) is not determined. Born effective charges, piezoelectric constants, and the ionic contributions to the dielectric tensor are calculated if {{TAG|LEPSILON}}=.TRUE. is specified in the {{TAG|INCAR}} file.


:<math>
In general, the DFPT routines in VASP are somewhat rudimentary and only support displacements commensurate with the supercell, i.e., so-called q=0 phonons. In other words, VASP can only determine phonon frequencies at the Gamma point of the supercell. Therefore, the code offers few advantages over the finite differences methods discussed above. In particular, the linear response is limited to LDA and GGA functionals and it does not determine the elastic tensors, since the linear response with respect to the strain tensor is not implemented. The only advantage of the linear response routines is that they eliminate the need to choose the magnitude of the finite displacement. Therefore, it might be helpful to first calculate phonon frequencies using linear response and then switch to [[Phonons from finite differences|finite differences]] and determine the largest displacement that will produce results compatible with the linear response routines.
H(\mathbf{k}) | \psi_{n\mathbf{k}} \rangle=
e_{n\mathbf{k}}S(\mathbf{k}) | \psi_{n\mathbf{k}} \rangle,
</math>
where ... (MTH: please define all quantities.)


Taking the derivative with respect to the ionic positions <math>R_i^a</math>, we obtain the Sternheimer equations
A few technical comments are in order at this point. VASP solves the [[Phonons:_Theory#IonSternheimer|linear Sternheimer equation]] to determine the linear response of the orbitals. Hence, unoccupied orbitals are not required. Internally, the VASP routines for linear response rely on finite differences in two places:
#  The first place is the determination of the second derivative of the [[:Category:Exchange-correlation_functionals|exchange-correlation functional]]: Since most functionals do not support an algebraic determination of second derivatives, VASP always resorts to finite differences to determine the second-order change of the exchange correlation-potential and the PAW one-center terms for each atomic displacement.
# Second, after VASP has determined the first-order change of the orbitals, it computes all second derivatives using finite displacements.


:<math>
To do this, VASP displaces the selected atom in the selected directions adds the calculated linear response to the orbitals, and finally determines the differences in the forces and the stress tensor for positive and negative displacements. It can be shown that this yields exactly the [[Phonons:_Theory#InternalStrainDFPT|second-order force constants]] and the [[Phonons:_Theory#InternalStrainDFPT|internal strain tensor]], respectively.
\left[ H(\mathbf{k}) - e_{n\mathbf{k}}S(\mathbf{k}) \right]
| \partial_{u_i^a}\psi_{n\mathbf{k}} \rangle
=
-\partial_{u_i^a} \left[ H(\mathbf{k}) - e_{n\mathbf{k}}S(\mathbf{k})\right]
| \psi_{n\mathbf{k}} \rangle
</math>


Once the derivative of the KS orbitals is computed from the Sternheimer equations, we can write
Furthermore, the [[Phonons:_Theory#BornChargeDFPT|Born effective charges]] are determined "analytically" by contracting the linear response of the orbitals over the "polarization" vector Eq. (30) in Ref. {{cite|gajdos:prb:2006}}. These should agree well with the Born effective charges that were previously determined when the linear response with respect to external fields {{TAG|LEPSILON}}=.TRUE. was calculated (there are two different routes to calculate mixed derivatives). The final summary output towards the end of the {{TAG|OUTCAR}} file writes the Born effective charges determined from the linear response with respect to external fields.
:<math>
| \psi^{u^a_i}_\lambda \rangle =  
| \psi \rangle +
\lambda | \partial_{u^a_i}\psi \rangle.
</math>


The second-order response to ionic displacement, i.e., the force constants or Hessian matrix, are then computed using
It is possible to [[Computing_the_phonon_dispersion |obtain the phonon dispersion at different '''q''' points]] by computing the force constants on a sufficiently large supercell and Fourier interpolating the dynamical matrices in the primitive cell.
:<math>
{{NB|mind|{{TAG|IBRION}}{{=}}7 and {{TAG|IBRION}}{{=}}8 are supported from VASP.5.1 and later versions.}}
\Phi^{ab}_{ij}=
\frac{\partial^2E}{\partial u^a_i \partial u^b_j}=
-\frac{\partial F^a_i}{\partial u^b_j}
\approx
-\frac{
\left(
  \mathbf{F}[\{\psi^{u^b_j}_{\lambda/2}\}]-
  \mathbf{F}[\{\psi^{u^b_j}_{-\lambda/2}\}]
\right)^a_i}{\lambda},
</math>
where <math>\mathbf{F}</math> yields the [[:Category:Forces|forces]] for a given set of KS orbitals.
 
MTH: Here, it would be good to explicitly write the eigenvalue equation that is solved to obtain phonon frequencies.
 
<!--
MTH: The following is not concerning the calculation of phonons:
 
The internal strain tensor is computed using
:<math>
\Xi^a_{il}=\frac{\partial^2 E}{\partial \eta^a_i \partial u^b_j}=
\frac{\partial \sigma_l}{\partial u^a_i}
\approx
\frac{
    \left(
        \sigma[\{\psi^{u^a_i}_{\lambda/2}\}]-
        \sigma[\{\psi^{u^a_i}_{-\lambda/2}\}]
    \right)_l
}{\lambda}.
</math>
 
At the end of the calculation if {{TAG|LEPSILON}}=.TRUE., the Born effective charges are computed using Eq. (42) of Ref. {{cite|gonze:prb:1997}}.
 
:<math>
Z^{a*}_{ij} =  
2 \frac{\Omega_0}{(2\pi)^3}
\int_\text{BZ}
\sum_n
\langle
  \partial_{u^a_i}\psi_{n\mathbf{k}} | \nabla_{\mathbf{k}} \tilde{u}_{n\mathbf{k}}
\rangle d\mathbf{k}
</math>
 
where <math>a</math> is the atom index, <math>i</math> the direction of the displacement of atom and <math>j</math> the polarization direction.
The results should be equivalent to the ones obtained using {{TAG|LCALCEPS}} and {{TAG|LEPSILON}}.
 
MTH: This should be part of a more extensive discussion in a how-to article. The beginning of the article seemed more like a theory article, so I propose to move it in that category.
 
When {{TAG|IBRION}}=7 or 8 VASP solves the Sternheimer equation above with an ionic displacement perturbation.
If {{TAG|IBRION}}=7 no symmetry is used and the displacement of all the ions is computed.
When {{TAG|IBRION}}=8 only the irreducible displacements are computed with the physical quantities being reconstructed by symmetry.
-->


== References ==
== References ==

Revision as of 12:34, 2 August 2022

It determines the Hessian matrix (matrix of second derivatives with respect to the position of the ions) using density-functional-perturbation theory (DFPT). IBRION=7 does not apply symmetry, whereas IBRION=8 uses symmetry to reduce the number of displacements. The output is similar as for IBRION=5 and 6. Specifically, the second derivates of the total energy with respect to ionic displacements (interatomic force constants) and the mixed second derivative with respect to the strain and the ionic displacement (internal strain tensor) are evaluated. Although the contributions from the ionic relaxations to the elastic tensor are calculated, the ion-clamped elastic tensor (rigid ion) is not determined. Born effective charges, piezoelectric constants, and the ionic contributions to the dielectric tensor are calculated if LEPSILON=.TRUE. is specified in the INCAR file.

In general, the DFPT routines in VASP are somewhat rudimentary and only support displacements commensurate with the supercell, i.e., so-called q=0 phonons. In other words, VASP can only determine phonon frequencies at the Gamma point of the supercell. Therefore, the code offers few advantages over the finite differences methods discussed above. In particular, the linear response is limited to LDA and GGA functionals and it does not determine the elastic tensors, since the linear response with respect to the strain tensor is not implemented. The only advantage of the linear response routines is that they eliminate the need to choose the magnitude of the finite displacement. Therefore, it might be helpful to first calculate phonon frequencies using linear response and then switch to finite differences and determine the largest displacement that will produce results compatible with the linear response routines.

A few technical comments are in order at this point. VASP solves the linear Sternheimer equation to determine the linear response of the orbitals. Hence, unoccupied orbitals are not required. Internally, the VASP routines for linear response rely on finite differences in two places:

  1. The first place is the determination of the second derivative of the exchange-correlation functional: Since most functionals do not support an algebraic determination of second derivatives, VASP always resorts to finite differences to determine the second-order change of the exchange correlation-potential and the PAW one-center terms for each atomic displacement.
  2. Second, after VASP has determined the first-order change of the orbitals, it computes all second derivatives using finite displacements.

To do this, VASP displaces the selected atom in the selected directions adds the calculated linear response to the orbitals, and finally determines the differences in the forces and the stress tensor for positive and negative displacements. It can be shown that this yields exactly the second-order force constants and the internal strain tensor, respectively.

Furthermore, the Born effective charges are determined "analytically" by contracting the linear response of the orbitals over the "polarization" vector Eq. (30) in Ref. [1]. These should agree well with the Born effective charges that were previously determined when the linear response with respect to external fields LEPSILON=.TRUE. was calculated (there are two different routes to calculate mixed derivatives). The final summary output towards the end of the OUTCAR file writes the Born effective charges determined from the linear response with respect to external fields.

It is possible to obtain the phonon dispersion at different q points by computing the force constants on a sufficiently large supercell and Fourier interpolating the dynamical matrices in the primitive cell.

Mind: IBRION=7 and IBRION=8 are supported from VASP.5.1 and later versions.

References