VASP supports the calculation of lattice vibrations in the harmonic approximation. One caveat is that large supercells (with several hundred atoms) are required, and a high precision is very desirable. We recommend the following setup.
PREC = Accurate LREAL = .FALSE # real space projection .FALSE. or Auto ISMEAR = 1 # tetrahedron method with Bloechl corrections SIGMA = 0.2 IBRION = 6It is safer to avoid real space projection, since it introduces small errors that can change low frequency modes by several %. Also PREC= A is preferable over PREC= Normal, in particularly for large unit cells. The timestep (POTIM) defaults to a reasonably small value of 0.015, although tests might be required if very short bonds are present in the system (e.g. hydrogen). Alternatively linear response theory can be used for density functional theory calculations:
PREC = Accurate LREAL = .FALSE # real space projection .FALSE. or Auto ISMEAR = 1 # tetrahedron method with Bloechl corrections SIGMA = 0.2 IBRION = 8Results should agree within 1 % with the finite difference code, although small errors in the force constant will affect low frequency modes more strongly than high frequency modes.
It is strongly recommened to relax all atoms in the supercell carefully and accurately before the phonon-calculation i.e. using
PREC = Accurate LREAL = .FALSE # real space projection .FALSE. or Auto ISMEAR = 1 # tetrahedron method with Bloechl corrections SIGMA = 0.2 IBRION = 1 EDIFF = 1E-6This relaxation run must be performed with identical parameters as the phonon calculation. Obviously you do not want to spoil your results, because of finite forces for the initial positions.