Skip to content


This page gives hints on how to generically perform DFPT calculations with the ABINIT package.


Density-Functional Perturbation Theory (DFPT) allows one to address a large variety of physical observables. Many properties of interest can be computed directly from the derivatives of the energy, without the use of finite differences: phonons modes, elastic tensors, effective charges, dielectric tensors, etc… Even non-linear properties can be computed, like the Raman intensities (for the latter, see topic_nonlinear)..

A DFPT calculation workflow is conducted as follows:

  • Run a Ground-State calculation in order to extract the Kohn-Sham pseudo wave-functions; these must be extremely well converged.
  • If necessary, e.g., for the application of the derivative of the Hamiltonian with respect to an electric field, determine the derivatives of the wave functions with respect to the wave vector k , and keep them in a file. The keyword rfddk is used to perform this type of calculation.
  • Compute the 2nd-order derivative matrix (i.e., 2nd derivatives of the energy with respect to different perturbations λ). This can be done thanks to the keywords rfphon (λ=atomic displacement), rfstrs (λ=strain), rfelfd (λ=electric field) or rfmagn (λ=magnetic field).
  • Launch the anaddb tool (distributed with ABINIT) to analyse the derivative database and compute relaxed tensors and thermodynamical properties.

Note that for PAW calculation, when performing the post-processing with anaddb, it is recommended to include all the keywords enforcing the sum rules (acoustic sum and charge neutrality). Indeed the PAW formalism involves, for each atom, the calculation of a large number of real space integrals, whose numerical effect may be to break the translational invariance.

Thanks to the locality provided by PAW partial wave basis, it is possible to perform response function calculations for correlated electron materials. The DFT+U formalism is usable without any restriction for the PAW+DFPT calculations.

All the tutorials dedicated to response functions can be followed both with norm-conserving pseudopotentials and with PAW atomic datasets.

DFPT in ABINIT is implemented for non-magnetic, collinear as well as non-collinear systems nspden=1, 2 as well as 4. However, the treatment of the strain perturbation is not yet implemented with nspden=4 (non-collinear systems).

More detailed explanations to perform a response calculation are given in the respfn help file.


  • optdriver OPTions for the DRIVER
  • rfdir Response Function: DIRections


  • rfatpol Response Function: ATomic POLarisation
  • rfddk Response Function with respect to Derivative with respect to K
  • rfelfd Response Function with respect to the ELectric FielD
  • rfmagn Response Function with respect to MAGNetic B-field perturbation
  • rfphon Response Function with respect to PHONons
  • rfstrs Response Function with respect to STRainS


  • asr Acoustic Sum Rule
  • dfpt_sciss DFPT SCISSor operator
  • getwfkfine GET the fine grid wavefunctions from _WFK file
  • ird1wf Integer that governs the ReaDing of _1WF files
  • irdddk Integer that governs the ReaDing of DDK wavefunctions, in _1WF files
  • irdwfq Integer that governs the ReaDing of _WFQ files
  • rf2_pert1_dir Response Function (2nd order Sternheimer equation): 1st PERTurbation DIRection
  • rf2_pert2_dir Response Function (2nd order Sternheimer equation): 2nd PERTurbation DIRection


  • frzfermi FReeZe FERMI energy
  • ixcrot Index of the XC ROTation method used to calculate first-order exchange-correlation potential in non-collinear DFPT calculations
  • pawcross PAW - add CROSS term in oscillator strengths
  • prtfull1wf PRinT FULL 1st-order WaveFunction
  • rf2_dkde Response Function: mixed 2nd Derivative of wavefunctions with respect to K and electric field
  • rf2_dkdk Response Function: 2nd Derivative of wavefunctions with respect to K
  • rfmeth Response Function METHod
  • rfuser Response Function, USER-defined
  • scphon_supercell Self Consistent PHONon SUPERCELL
  • scphon_temp Self Consistent PHONon TEMPerature
  • tim1rev TIMe 1st order REVersal


  • %qptn Q-PoinT re-Normalized

Selected Input Files








  • The tutorial Response-Function 1 (RF1) presents the basics of DFPT calculations within ABINIT. The example given is the study of dynamical and dielectric properties of AlAs (an insulator): phonons at Gamma, dielectric constant, Born effective charges, LO-TO splitting, phonons in the whole Brillouin zone. The creation of the “Derivative Data Base” (DDB) is presented.
  • The tutorial Response-Function 2 (RF2) presents the analysis of the DDBs that have been introduced in the preceeding tutorial RF1. The computation of the interatomic forces and the computation of thermodynamical properties is an outcome of this tutorial.
  • The tutorial on the elastic properties presents the computation with respect to the strain perturbation and its responses: elastic constants, piezoelectricity.
  • Parallelism of response-function calculations. Additional information to use the DFPT in parallel.
  • Tutorial on static non-linear properties. Electronic non-linear susceptibility, non-resonant Raman tensor, electro-optic effect.