Vienna Ab-initio Simulation Package


VASP is a Density Functional Theory (DFT) program that we use to calculate the ionic and electronic properties of the various nano clusters for this class.

VASP user manual

Five Required Files

There are 5 starting files required for running a VASP job:
  1. POSCAR
  2. INCAR
  3. KPOINTS
  4. POTCAR
  5. submission script (typically called file_name.sub)
Below is a description of each file and information it contains.
POSCAR
The POSCAR file holds the information about the geometry of the molecule and the box in which it is contained.
sample POSCAR file

Line 1: Elements that make up the geometry
Line 2: Lattice constant, a scaler to describe the length of the box.
Line 3,4,5: These are the vectors that describe the box. The length of a side is determined by multiplying the vector by the lattice constant from Line 2
Line 6: Number of atoms of each element described respective to the order on Line 1
Line 7: Indicates whether the position of the atoms are given in Direct or Cartesian coordinates. VASP always outputs Direct coordinates to the new configuration file (CONTCAR)
Line 8-end: Positions of atoms respective to the ordering in Lines 1 and 6. The first N coordinates will be specified by the first number, N, listed in line 6. Lines will N to N+M will be specified by the second number, M in line 6; and so on. Followed by True/False to indicate if a the atom is free to move in each vector direction. Note: You should check to make sure that all Direct coordinates are between 0 and 1 to insure that all atoms are in the box

INCAR
sample INCAR file

The INCAR file describes what you will be doing in your calculation. Flags in this file will specify if you are performing a local optimization or running molecular dynamics and the parameters required for these calculations. Below is a list of some of the most important INCAR flags that you may need to change in your calculations:
  1. IBRION describes what your simulation will do. Below describes a few relevant options:
    1. If IBRION is set to 0, you will run Molecular Dynamics.
    2. If IBRION is set to 1, you will perform a local optimization with Newton's Method
    3. If IBRION is set to 2, you will perform a local optimization with Conjugant Gradient
    4. If IBRION is set to 3, you will perform a local optimization with a Gradient Descent-like method.

  2. POTIM ; Depending on what IBRION is set to POTIM will serve a different purpose
    1. If IBRION = 0, POTIM is the time step for you MD simulation in fs.
    2. If IBRION = 1, 2 or 3, POTIM is a scalar for the forces in the molecular system (similar to alpha in gradient descent). For a conservative optimizer use IBRION=3 and POTIM=0.01.

  3. NSW is the maximum number of steps your local optimization can take.

  4. EDIFF is the convergence criteria for the optimization of the electronic wavefunction/electron density. If the change in energy in consecutive steps in the optimization is less than this threshold, the optimization is complete.

  5. EDIFFG is the convergence criteria for the optimization of the position of the nuclei. If EDIFFG is negative, then it is specifying a force criteria. If EDIFFG is positive, then your optimization will stop if the change in energy in consecutive steps in the optimization is less than this threshold.

  6. IALGO specifies the optimization method for the electronic wavefunction. IALGO=48 is more efficient less accurate. IALGO=38 is less efficient, more accurate.

  7. ISIF specifies if the lattice constants are fixed (ISIF=0) or relaxed (ISIF=3). ISIF=3 should only be used for bulk calculations where you need to find optimal lattice constants.

    Note: when optimizing lattice constants (ISIF=3) you need to wrap up and rerun the calculation until you have one ionic step.

  8. TEBEG Initial temperature for a molecular dynamics run.

  9. TEEND Final temperature for a molecular dynamics run.
KPOINTS
Because we are working with finite nano structures in this class and not periodic/infinite slabs there is no need for k-point sampling. In the gamma-point version of the code it is important to only use 1 k-point in each direction.
sample KPOINTS file

POTCAR
The POTCAR file is where the data about how the electrons behave for a given element is stored. It is important to have the pseudo-potentials in the POTCAR file in the same order as Line 1 of the POSCAR file. To create a POTCAR you can use the getpot followed by the atomic symbols in the correct order as required by your POSCAR file. For example, to create a POTCAR with Platinum first, then Gold type:
  getpot Pt Au
To confirm that your created the correct POTCAR type:
  potpaw
You should see the two metals listed in the same order.

Click here to see a sample POTCAR file

Submission Script
  see The Queuing System