Editing
INCAR
Jump to navigation
Jump to search
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
go back to [[Main Page]], [[Group Pages]], [[N煤ria L贸pez and Group]], [[Scripts_for_VASP]] By controling some parameters in the INCAR file, you can greatly increase the efficiency of your calculations. =Parameters that all INCAR files should have= The minimum INCAR file must contain at least the following parameters: general: SYSTEM = name-of-the-system ISTART = 0 # 0: new, 2: read WC ICHARG = 2 # 0: get from WC , 1: get from CHGCAR, 2: new GGA = PE # PE: PBE ISPIN = 1 # Use 2 for spin-polarized calculations electronic steps: ENCUT = 450 # Energy cutoff. ISMEAR = 0 # Smearing: 0: Gaussian; 1+: MP. SIGMA = 0.03 # Smearing width LREAL = Auto # EDIFF = 1E-5 # ionic steps: IBRION = 2 # 0: MD; 1,2,3: relaxations; 5: frq.; 44: IDM. POTIM = 0.15 # EDIFFG = -0.03 # Positive in eV; negative in eV/脜 NSW = 50 # The '''general''' section has the name of the system, the starting parameters for the wavefunctions and electronic density, the density functional (PBE in the example), and the spin. Optional flags: MAGMOM, NUPDOWN. For [[#DFT+U|DFT+U]] and [[hybrid functionals]], additional flags may be needed. The '''electronic steps''' section has the energy cutoff, the smearing, the algorithm, the projection scheme, and finishes with the electronic convergence threshold. Optional flags: Maximum/minimum number of electronic cycles (NELM, NELMIN, NELMDL); modifications of mixing scheme (AMIX, BMIX, AMIN). The '''ionic steps''' section contains the algorithm, the stepsize, the convergence threshold for ionic steps, and the maximum number of ionic steps. Its structure differs for NEB, CI-NEB, and IDM calculations, see below. Back to [[N煤ria L贸pez and Group]] / [[Scripts_for_VASP]]. =Ionic steps= ==Static (single-point) calculations== For a static calculation (e.g. No ions update), set: ionic steps: IBRION = -1 # NSW = 1 # NSW values larger than 1 can be use to converge particularly difficult electronic structures without updating the ions. ==Ionic relaxations== ===DIIS algorithm (IBRION=1)=== The DIIS algorithm converges fast in systems that: *Are close to an energy minimum (or maximum). *Have low degrees of freedom. Examples of those systems are: *Molecules in vacuum with short backbones (tert-butanol or shorter). *Bare metal slabs representing closed surfaces. *Pre-converged transition states. For relaxations use: ionic steps: IBRION = 1 # POTIM = 0.25 # Between 0.10 and 0.40. EDIFFG = -0.02 # In eV/脜. NSW = 100 # Between 50 and 100. For '''already pre-converged transition states''' use: ionic steps: IBRION = 1 # POTIM = 0.01 # Lower than 0.03. EDIFFG = -0.05 # In eV/脜 NSW = 50 # Between 25 and 50. For more information: [http://dx.doi.org/10.1016/0009-2614(80)80396-4] [http://cms.mpi.univie.ac.at/vasp/vasp/IBRION_1_I.html]. Back to [[N煤ria L贸pez and Group]] / [[Scripts_for_VASP]]. ===CG algorithm (IBRION=2)=== Is the recommended algorithm if you don't know what to do (See Ionic Relaxation Methods in [http://www.vasp.at/index.php?option=com_content&view=article&id=49&Itemid=57]). It is faster and more stable than DIIS for medium and large systems, and always converges into a minimum. ionic steps: IBRION = 2 # POTIM = 0.150 # Between 0.15 and 0.25. EDIFFG = -0.020 # In eV/脜 NSW = 100 # ===Damped MD and QUICKMIN (IBRION=3)=== Recomended to use along NEBs for big systems or in conjunction with NEBs. ionic steps: IBRION = 3 # POTIM = 0.011 # Always lower than 0.020. EDIFFG = -0.020 # In eV/脜 NSW = 100 # POTIM should be very small, lower than the reciprocal of the highest eigenvalue in the Hessian Matrix. For hydrogen-containing systems, this value is around 0.025. Values lower than 0.017 are usually very safe. Back to [[N煤ria L贸pez and Group]] / [[Scripts_for_VASP]]. ==Frequencies (IBRION=5,6)== See [http://cms.mpi.univie.ac.at/vasp/vasp/IBRION_5_IBRION_6.html]. After calculating frequencies, you can visualize them with [[Jmol]]. ionic steps: IBRION = 5 # POTIM = 0.02 # Always lower than 0.020. NFREE = 2 # Tip: If your system was obtained with a tight convergence criteria (eg: EDIFFG=-0.02), you can use NFREE=1 instead of 2. You will have a reasonable accuracy in the frequencies with half the computational cost. Back to [[N煤ria L贸pez and Group]] / [[Scripts_for_VASP]]. ==Finding transition states== A robust search for transition states starts by preconverging using a [[NEB]]. To run a NEB, please make sure you are using a VTST-modified version of VASP and put these flags on your INCAR file: ionic steps: IMAGES = 4 # LCLIMB = F # IBRION = 3 # POTIM = 0.011 # SPRING = -5 # NSW = 100 # Use less than 200 steps for NEBs IBRION=3 works very well for NEBs. Do never use IBRION=2. If you have more than one local maximum, modify your initial and final states and repeat the NEB. If the initial and final states are too different, you can also do a zoom or increase the number of images. Avoid using more than 6 images. You can [[INCAR#Tips_for_efficient_electronic_relaxations|tweak EDIFF and NELMIN]] in the ''electronic steps'' section to make it run faster. Once the NEB is pre-converged, launch a CI-NEB: ionic steps: IMAGES = 4 # LCLIMB = T # IBRION = 1 # POTIM = 0.150 # SPRING = -5 # NSW = 50 # Use less than 100 steps for CI-NEB After 50 steps, you should have a high-quality transition state localized as the image with highest energy. CI-NEB works best with IBRION=1. Finally, do a [[INCAR#Frequencies_.28IBRION.3D5.2C6.29|frequencies calculation]] to check that all frequencies are real except by one that represents the transition state. The transition staten can be further refined by applying [[INCAR#DIIS_algorithm_.28IBRION.3D1.29|IBRION=1]] with a very small POTIM and by using the [[IDM|Improved Dimer Method]]. Back to [[N煤ria L贸pez and Group]] / [[Scripts_for_VASP]]. ==Ab-Initio Molecular Dynamics== VASP manual: [http://cms.mpi.univie.ac.at/vasp/vasp/IBRION_0.html] To avoid unphysical variations in the temperature of your BOMD, start with a pre-heating from 0K to your working temperature. Also break the symmetry, which is particularly important if your initial structure is highly symmetric. The following text replaces the '''ionic steps''' section in your INCAR file: # molecular dynamics IBRION = 0 POTIM = 1.00 # timestep in fs. NSW = 100 # 3700*3.00 = 11000 fs = 11.1 ps SMASS = 0 # thermal bath NVT TEBEG = 0 # initial temperature TEEND = 300 # final temperature ISYM = 0 # symmetry off, here it is compulsory Then, for the rest of the runs keep constant the thermal bath. For BOMD you can do long runs. Be careful that they finish before the time-limit is reached, for instance in MareNostrum4: # molecular dynamics IBRION = 0 POTIM = 1.00 # timestep in fs. NSW =1000 # SMASS = 0 # thermal bath NVT TEBEG = 300 # initial temperature TEEND = 300 # final temperature ISYM = 0 # symmetry off, here it is optional Back to [[N煤ria L贸pez and Group]] / [[Scripts_for_VASP]]. =Corrections= ==Dipole corrections== To include dipole corrections for surfaces, include the following flags in your INCAR file and cite remember to cite this paper[[https://journals.aps.org/prb/abstract/10.1103/PhysRevB.51.4014]]: Dipole corrections: IDIPOL = 3 # LDIPOL = T # ==van der Waals contributions== Check [[VdW_forces|here]] ==DFT+U== To activate DFT+U calculation you will need these 2 flags: LDAU = T # Switch on LDA+U LDAUTYPE = 2 # LSDA + U Dudarev's approach = type 2 in vasp You will need to add the U and J term for each atom type. For example to put an effective U=1 for the second type of atom, you will put LDAUU=2 and LDAUJ=1 as follow: # Add on-site interaction for the respective atoms (same order as in POSCAR) LDAUL = -1 2 -1 # 2 for d-orbital interactions, -1 no on-site interaction LDAUU = 0.0 2.0 0 # Define U-parameters for on-site Coulomb interaction LDAUJ = 0.0 1.0 0 # Define J-parameters for on-site Exchange interaction LDAUPRINT = 0 # 0 to ignore, 1 to print occupation matrix in OUTC Finally, this flag is used to speed up DFT+U calculation: LMAXMIX = 4 #DFT+U calculations may require LMAXMIX to 4 for d-electrons (or 6 for f-elements) for faster convergence to the groundstate Back to [[N煤ria L贸pez and Group]] / [[Scripts_for_VASP]]. =Additional parameters= ==Verbosity== '''Tip''': Add this segment in your INCAR file to reduce verbosity and avoid writing WAVECAR and CHG(CAR) files: # Verbosity: NWRITE = 0 # Verbosity LWAVE = F # WAVECAR LCHARG = F # CHG / CHGCAR Other flags that affect the files being written: '''FLAG DEFAULT # FILE''' NWRITE = 2 # Verbosity of the OUTCAR file LWAVE = T # WAVECAR [http://cms.mpi.univie.ac.at/vasp/guide/node64.html] LCHARG = T # CHG / CHGCAR [http://cms.mpi.univie.ac.at/vasp/guide/node63.html] [http://cms.mpi.univie.ac.at/vasp/vasp/CHGCAR_file.html] LVTOT = F # LOCPOT [http://cms.mpi.univie.ac.at/vasp/vasp/LOCPOT_file.html] LELF = F # ELFCAR [http://cms.mpi.univie.ac.at/vasp/guide/node72.html] PARCHG = F # PARCHG LAECHG = F # Bader AECCAR files LORBIT = 0 # PDOS/LDOS Back to [[N煤ria L贸pez and Group]] / [[Scripts_for_VASP]]. ==Parallelization== Tune '''NPAR''' (or '''NCORE''', never both), '''NSIM''', '''KPAR''', and '''NBANDS''' to parallelive well. Changing the parameter '''NPAR''' could increase the speed of calculation without affecting the global energy. Please see [http://cms.mpi.univie.ac.at/vasp/guide/node138.html] and made some test before set large systems. NPAR must be exactly equal to (1) the number of cores per node if you are using one node, or (2) the number of nodes if you are using more than one node. NEVER USE THE SQUARE ROOT RULE PROPOSED IN THE VASP MANUAL, it is two-decades outdated! Optimal '''NPAR''' values: N潞 Queue 4 c4m8 ==> NPAR = 4 8 c4m8 ==> NPAR = 2 12 c4m8 ==> NPAR = 3 etc. 8 c8m24 ==> NPAR = 8 16 c8m24 ==> NPAR = 2 24 c8m24 ==> NPAR = 3 etc. 12 c12m48ib ==> NPAR = 12 24 c12m48ib ==> NPAR = 2 36 c12m48ib ==> NPAR = 3 48 c12m48ib ==> NPAR = 4 etc. 48 MareNostrum4 ==> NPAR = 48 96 MareNostrum4 ==> NPAR = 2 144 MareNostrum4 ==> NPAR = 3 192 MareNostrum4 ==> NPAR = 4 etc. 16 MareNostrum3 ==> NPAR = 16 32 MareNostrum3 ==> NPAR = 2 48 MareNostrum3 ==> NPAR = 3 64 MareNostrum3 ==> NPAR = 4 etc. A calculation running on 8 processors-c8m24 will finish around 30% faster than on 8 processors-c4m8. '''NSIM''' can be set if your INCAR file states the following: IALGO=48 or ALGO=Fast or ALGO=VeryFast You can speed up your calculation by ~15% varying the NSIM parameter. There should be no difference in the total energy and the convergence behavior in setting NSIM>1, only the performance should improve. The default value is 4. In c4m8 ==> NSIM = between 6 and 16 In c8m24 ==> NSIM = between 8 and 16 In c12m48ib ==> NSIM = between 8 and 16 In MareNostrum ==> NSIM = between 10 and 42 Recomended values: NSIM = 8 for c4m8 & c8m24 NSIM = 12 for c12m48ib NSIM = 32 for MareNostrum For more information [http://cms.mpi.univie.ac.at/vasp/guide/node130.html] You can further increase the efficiency of your parallelization by setting '''KPAR''' and '''NBANDS'''. You must know the kind of processors you are working with, the number of electrons/bands in your calculation, and to read the VASP manual. It is a must to use advanced parallelization when working in MareNostrum and for big projects where lots of computational hours are spent. Back to [[N煤ria L贸pez and Group]] / [[Scripts_for_VASP]]. ==Tips for efficient electronic relaxations== *Some simple systems, such as molecules and conductors, allow you to use the Fast algorithm. This algorithm parallelizes well. ALGO = Fast # Normal: general purpouse; Fast: Good for conductors. *For relaxations in big systems and NEBs, lowering the threshold for electronic convergence can save a lot of cpu-hours. Increase NELMIN to preserve accuracy after several ionic steps: EDIFF = 1E-3 # Or 1E-4 for each moving nucleus in your POSCAR file NELMIN = 5 # Or 5. To increase this value further may rise computational burden without adding precision to the forces. *For very precise calculations, a rule-of-thumb is EDIFF=EDDIFG*0.1 if EDDIFG is positive (energy criterion), or EDIFF=-EDDIFG*0.001 if EDIFFG is negative (force criterion). Back to [[N煤ria L贸pez and Group]] / [[Scripts_for_VASP]]. ==Improving stability: Mixing parameters== If you have problems to reach convergence in the first electronic loop, and you are not reading WAVECAR, set: NELMDL = -9 # Number of non self-consistent electronic steps at the beginning (w/o CHG update) Otherwise, vary these mixing scheme parameters (you can play with them): AMIX = 0.10 BMIX = 0.01 AMIN = 0.10 If problems persist, increase BMIX and reduce AMIN: AMIX = 0.10 BMIX = 3.00 AMIN = 0.01 If problems persist, read this [[http://www.vasp.at/vasp-workshop/slides/optelectron.pdf]] References: [http://cms.mpi.univie.ac.at/vasp/guide/node131.html] and [http://cms.mpi.univie.ac.at/vasp/vasp/Mixing_tags_IMIX_INIMIX_MAXMIX_AMIX_BMIX_AMIX_MAG_BMIX_MAG_AMIN_MIXPRE_WC.html] Back to [[N煤ria L贸pez and Group]] / [[Scripts_for_VASP]].
Summary:
Please note that all contributions to Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Wiki:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Navigation menu
Personal tools
Not logged in
Talk
Contributions
Log in
Namespaces
Page
Discussion
English
Views
Read
Edit
View history
More
Search
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Tools
What links here
Related changes
Special pages
Page information