Skip to content

seongjoojung/VASP-force-correction-patch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 

Repository files navigation

DOI

VASP Force Correction Patch

Force correction patch for VASP 5.4.4 and 6.4.1

Installation

in the src folder,

patch -i "path_to_patch_file"/force_correction.patch

How to use

There are 6 new INCAR tags from the patch.

FORCES_X : Individual forces of ions in the x direction, in the order that appears in POSCAR. Corresponds to Born effective charge tensor component $Z^*_{\alpha x}$ in constrained-forces calculation, where the electric field direction is $\alpha$. Default is 0 for all ions.

FORCES_Y : Individual forces of ions in the y direction, in the order that appears in POSCAR. Corresponds to Born effective charge tensor component $Z^*_{\alpha y}$ in constrained-forces calculation, where the electric field direction is $\alpha$. Default is 0 for all ions.

FORCES_Z : Individual forces of ions in the z direction, in the order that appears in POSCAR. Corresponds to Born effective charge tensor component $Z^*_{\alpha z}$ in constrained-forces calculation, where the electric field direction is $\alpha$. Default is 0 for all ions.

SCALING : Sets the scaling parameter of forces. Corresponds to $-\mathcal{E}$ (electric field, V/Å) in constrained-forces calculation. Default is 0.

LFIX_XY : Does not relax lattice vector a and b if set to TRUE. (perpendicular z) Default is FALSE.

LFIX_Z : Does not relax lattice vector c if set to TRUE. (perpendicular z) Default is FALSE.

There are 3 new INCAR tags for VASP 6 patch, LFIX_XY_COL, LFIX_Z_COL and LFIX_XY_TOT. They fix Cartesian components of the lattice vector, instead of the vector themselves.

Both IBRION=1 and IBRION=2 works, but if you're trying to converge to a saddle point, only IBRION=1 works.

This approximation is only justified under low electric field or high ionic contribution to permittivity. Good estimate is when absolute value of the ionic contribution to permittivity is over 10 times electronic contribution.

⚠️ Symmetry is your enemy! ⚠️

If you're trying to polarize your structure starting from non-polar one, you have to either set ISYM to 0 or alter your POSCAR so that it is the same space group of the polarized structure. In general, It is recommended to set ISYM to 0 to avoid internal symmetrization of k-points, unless you have a good idea of symmetry in your polarized system.

Tutorial

https://seongjoojung.github.io/posts/force-correction-tutorial/

Reference

Fu, H., & Bellaiche, L. (2003) Phys. Rev. lett. 91(5), 057601.

Jung at el. (2023) Nat. Comm. 14, 7795

Sai, Rabe & Vanderbilt (2002) Phys. Rev. B 66, 104108

Disclaimer

VASP is commercial package requiring a valid liscence for use.

About

Force correction patch for VASP 5.4.4

Resources

Stars

Watchers

Forks

Packages

No packages published