IBRION: Difference between revisions
No edit summary |
No edit summary |
||
| Line 4: | Line 4: | ||
Description: determines how the crystal structure changes during the calculation: | Description: determines how the crystal structure changes during the calculation: | ||
:::* no update | :::* no update | ||
:::** {{TAG|IBRION}} | :::** {{TAG|IBRION|-1}} (Avoid setting {{TAG|IBRION|-1}} with {{TAG|NSW|0|op=>}} to prevent recomputing the same structure {{TAG|NSW}} times). | ||
:::* [[#Molecular dynamics|Molecular dynamics]] | :::* [[#Molecular dynamics|Molecular dynamics]] | ||
:::** {{TAG|IBRION}} | :::** {{TAG|IBRION|0}} | ||
:::* [[#Structure optimization|Structure optimization]] | :::* [[#Structure optimization|Structure optimization]] | ||
:::** {{TAG|IBRION}} | :::** {{TAG|IBRION|1}} RMM-DIIS | ||
:::** {{TAG|IBRION}} | :::** {{TAG|IBRION|2}} conjugate gradient | ||
:::** {{TAG|IBRION}} | :::** {{TAG|IBRION|3}} damped molecular dynamics | ||
:::* [[#Computing the phonon modes|Computing phonon modes]] | :::* [[#Computing the phonon modes|Computing phonon modes]] | ||
:::** {{TAG|IBRION}} | :::** {{TAG|IBRION|5}} finite differences without symmetry | ||
:::** {{TAG|IBRION}} | :::** {{TAG|IBRION|6}} finite differences with symmetry | ||
:::** {{TAG|IBRION}} | :::** {{TAG|IBRION|7}} perturbation theory without symmetry | ||
:::** {{TAG|IBRION}} | :::** {{TAG|IBRION|8}} perturbation theory with symmetry | ||
:::* [[#Analyzing transition states|Analyzing transition states]] | :::* [[#Analyzing transition states|Analyzing transition states]] | ||
:::** {{TAG|IBRION}} | :::** {{TAG|IBRION|40}} [[IRC calculations|intrinsic-reaction-coordinate calculations]] | ||
:::** {{TAG|IBRION}} | :::** {{TAG|IBRION|44}} [[improved dimer method]] | ||
:::* [[#Interactively supplied positions and lattice vectors|User-supplied interactive changes]] | :::* [[#Interactively supplied positions and lattice vectors|User-supplied interactive changes]] | ||
:::** {{TAG|IBRION}} | :::** {{TAG|IBRION|11}} from standard input | ||
:::** {{TAG|IBRION}} | :::** {{TAG|IBRION|12}} from Python plugin | ||
---- | ---- | ||
| Line 43: | Line 43: | ||
To find the solution, VASP provides multiple algorithms: | To find the solution, VASP provides multiple algorithms: | ||
* RMM-DIIS ({{TAG|IBRION}} | * RMM-DIIS ({{TAG|IBRION|1}}) reduces the forces by linear combination of previous positions. It is the method of choice for larger systems (>20 degrees of freedom) that are reasonably close to the ground-state structure. | ||
* Conjugate gradient ({{TAG|IBRION}} | * Conjugate gradient ({{TAG|IBRION|2}}) finds the optimal step size along a search direction. It is a robust default choice but may need more iterations than RMM-DIIS. | ||
* Damped molecular dynamics ({{TAG|IBRION}} | * Damped molecular dynamics ({{TAG|IBRION|3}}) runs a MD simulation with decreasing velocity of the ions. Use this for large systems far away from the minimum to get to a better starting point for the other algorithms. | ||
Consult the [[structure optimization]] page for advise on how to choose the optimization algorithm. | Consult the [[structure optimization]] page for advise on how to choose the optimization algorithm. | ||
| Line 52: | Line 52: | ||
The second-order derivatives of the total energy <math>E</math> with respect to ionic positions <math>R_{\alpha i}</math> of ion <math>\alpha</math> in the direction <math>i</math>, is computed using a first-order derivative of the [[forces]] <math>F_{\beta j}</math>. Then, the dynamical matrix <math>D_{\alpha i \beta j}</math> is constructed, diagonalized, and the phonon modes and frequencies of the system are reported in the {{FILE|OUTCAR}} file and {{FILE|vaspout.h5}}. Also see [[Phonons: Theory|theory on phonons]]. | The second-order derivatives of the total energy <math>E</math> with respect to ionic positions <math>R_{\alpha i}</math> of ion <math>\alpha</math> in the direction <math>i</math>, is computed using a first-order derivative of the [[forces]] <math>F_{\beta j}</math>. Then, the dynamical matrix <math>D_{\alpha i \beta j}</math> is constructed, diagonalized, and the phonon modes and frequencies of the system are reported in the {{FILE|OUTCAR}} file and {{FILE|vaspout.h5}}. Also see [[Phonons: Theory|theory on phonons]]. | ||
{{NB|tip|It may be necessary to set {{ | {{NB|tip|It may be necessary to set {{TAG|EDIFF|1E-6|op=<=}} because the default ({{TAG|EDIFF|1E-4}}) often results in unacceptably large errors.}} | ||
VASP implements two different methods to compute the phonon modes and can use symmetry to reduce the number of computed displacements: | VASP implements two different methods to compute the phonon modes and can use symmetry to reduce the number of computed displacements: | ||
* {{ | * {{TAG|IBRION|5}} [[Phonons from finite differences|finite differences]] '''without''' symmetry | ||
* {{ | * {{TAG|IBRION|6}} [[Phonons from finite differences|finite differences]] '''with''' symmetry | ||
* {{ | * {{TAG|IBRION|7}} [[Phonons_from_density-functional-perturbation_theory|density-functional-perturbation theory]] '''without''' symmetry | ||
* {{ | * {{TAG|IBRION|8}} [[Phonons_from_density-functional-perturbation_theory|density-functional-perturbation theory]] '''with''' symmetry | ||
For finite differences, the elastic tensors and internal strain tensors is computed for {{TAG|ISIF}} | For finite differences, the elastic tensors and internal strain tensors is computed for {{TAG|ISIF|3|op=>=}}. | ||
Compute Born-effective charges, piezoelectric constants, and the ionic contribution to the dielectric tensor by specifying {{ | Compute Born-effective charges, piezoelectric constants, and the ionic contribution to the dielectric tensor by specifying {{TAG|LEPSILON|.TRUE.}} ([[Linear response|linear response theory]]) or {{TAG|LCALCEPS|.TRUE.}} (finite external field). | ||
Also see [[computing the phonon dispersion and DOS]]. | Also see [[computing the phonon dispersion and DOS]]. | ||
| Line 70: | Line 70: | ||
For the analysis of transition states the following methods are available: | For the analysis of transition states the following methods are available: | ||
* Setting {{ | * Setting {{TAG|IBRION|40}}, you can start from a transition state and monitor the energy along an intrinsic-reaction coordinate (IRC). The [[IRC calculations]] section describes this method. | ||
* With the [[improved dimer method]] ({{ | * With the [[improved dimer method]] ({{TAG|IBRION|44}}), you can search for a the transition state starting from an arbitrary structure in the investigated phase space. | ||
* The [[nudged elastic bands]] method finds an approximate reaction path based on the initial and final structure, i.e., reactant and product. | * The [[nudged elastic bands]] method finds an approximate reaction path based on the initial and final structure, i.e., reactant and product. | ||
| Line 79: | Line 79: | ||
In these scenarios, VASP provides the following alternatives | In these scenarios, VASP provides the following alternatives | ||
* With {{ | * With {{TAG|IBRION|11}}, you can provide new structures via the standard input. For {{TAG|ISIF|3|op=>=}}, a complete {{FILE|POSCAR}} file is read, otherwise just the positions in fractional coordinates. | ||
* If you [[Makefile.include#Plugins_(optional)|linked VASP with Python]], you can [[Plugins|write a Python plugin]] to modify the structure. Set {{ | * If you [[Makefile.include#Plugins_(optional)|linked VASP with Python]], you can [[Plugins|write a Python plugin]] to modify the structure. Set {{TAG|IBRION|12}} or {{TAG|PLUGINS/STRUCTURE|T}} to activate it. | ||
== Related tags and articles == | == Related tags and articles == | ||
Latest revision as of 07:44, 24 October 2025
IBRION = -1 | 0 | 1 | 2 | 3 | 5 | 6 | 7 | 8 | 11 | 12 | 40 | 44
| Default: IBRION | = -1 | for NSW=−1 or 0 |
| = 0 | else |
Description: determines how the crystal structure changes during the calculation:
Molecular dynamics
In molecular-dynamics (MD) simulations the positions of the ions are updated using a classical equation of motion for the ions. There are several algorithms for the time propagation in MD controlled by selecting MDALGO and the choice of the thermostats. The MD run performs NSW timesteps of length POTIM.
Frequently, performing an ab-initio calculations in every step of an MD simulation is too expensive so that machine-learned force fields are needed.
| Tip: In order to limit the output of the MD simulation, control the verbosity by setting NWRITE=0,1, or reduce the frequency of output using ML_OUTBLOCK, NBLOCK, or KBLOCK. |
Structure optimization
VASP optimizes the structure based on the degrees of freedom selected with the ISIF tag and (if used) the selective dynamics POSCAR file. Generally, the larger the number of degrees of freedom, the harder it is to find the optimal solution. To find the solution, VASP provides multiple algorithms:
- RMM-DIIS (
IBRION = 1) reduces the forces by linear combination of previous positions. It is the method of choice for larger systems (>20 degrees of freedom) that are reasonably close to the ground-state structure. - Conjugate gradient (
IBRION = 2) finds the optimal step size along a search direction. It is a robust default choice but may need more iterations than RMM-DIIS. - Damped molecular dynamics (
IBRION = 3) runs a MD simulation with decreasing velocity of the ions. Use this for large systems far away from the minimum to get to a better starting point for the other algorithms.
Consult the structure optimization page for advise on how to choose the optimization algorithm.
Computing the phonon modes
The second-order derivatives of the total energy [math]\displaystyle{ E }[/math] with respect to ionic positions [math]\displaystyle{ R_{\alpha i} }[/math] of ion [math]\displaystyle{ \alpha }[/math] in the direction [math]\displaystyle{ i }[/math], is computed using a first-order derivative of the forces [math]\displaystyle{ F_{\beta j} }[/math]. Then, the dynamical matrix [math]\displaystyle{ D_{\alpha i \beta j} }[/math] is constructed, diagonalized, and the phonon modes and frequencies of the system are reported in the OUTCAR file and vaspout.h5. Also see theory on phonons.
Tip: It may be necessary to set EDIFF <= 1E-6 because the default (EDIFF = 1E-4) often results in unacceptably large errors.
|
VASP implements two different methods to compute the phonon modes and can use symmetry to reduce the number of computed displacements:
IBRION = 5finite differences without symmetryIBRION = 6finite differences with symmetryIBRION = 7density-functional-perturbation theory without symmetryIBRION = 8density-functional-perturbation theory with symmetry
For finite differences, the elastic tensors and internal strain tensors is computed for ISIF >= 3.
Compute Born-effective charges, piezoelectric constants, and the ionic contribution to the dielectric tensor by specifying LEPSILON = .TRUE. (linear response theory) or LCALCEPS = .TRUE. (finite external field).
Also see computing the phonon dispersion and DOS.
Analyzing transition states
To study the kinetics of chemical reactions, one may want to construct transition states or follow the reaction path. For the analysis of transition states the following methods are available:
- Setting
IBRION = 40, you can start from a transition state and monitor the energy along an intrinsic-reaction coordinate (IRC). The IRC calculations section describes this method. - With the improved dimer method (
IBRION = 44), you can search for a the transition state starting from an arbitrary structure in the investigated phase space. - The nudged elastic bands method finds an approximate reaction path based on the initial and final structure, i.e., reactant and product.
Interactively supplied positions and lattice vectors
Occasionally, you may want to run VASP for related structures where the overhead of restarting VASP is significant. In these scenarios, VASP provides the following alternatives
- With
IBRION = 11, you can provide new structures via the standard input. ForISIF >= 3, a complete POSCAR file is read, otherwise just the positions in fractional coordinates.
- If you linked VASP with Python, you can write a Python plugin to modify the structure. Set
IBRION = 12orPLUGINS/STRUCTURE = Tto activate it.
Related tags and articles
Related tags: NSW, POTIM, MDALGO, SMASS, NFREE, ISIF, LEPSILON, LCALCEPS
Related files: POSCAR, CONTCAR, XDATCAR, vaspout.h5
Related topics and how-to pages: Time-propagation algorithms in molecular dynamics, Structure optimization, Selective dynamics, Computing the phonon dispersion and DOS, Transition states, IRC calculations, Improved Dimer Method, Writing a Python plugin