From the VASP homepage: The Vienna Ab initio Simulation Package (VASP) is a computer program for atomic scale materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics, from first principles.

VASP computes an approximate solution to the many-body Schrödinger equation, either within density functional theory (DFT), solving the Kohn-Sham equations, or within the Hartree-Fock (HF) approximation, solving the Roothaan equations. Hybrid functionals that mix the Hartree-Fock approach with density functional theory are implemented as well. Furthermore, Green's functions methods (GW quasiparticles, and ACFDT-RPA) and many-body perturbation theory (2nd-order Møller-Plesset) are available in VASP.

In VASP, central quantities, like the one-electron orbitals, the electronic charge density, and the local potential are expressed in plane wave basis sets. The interactions between the electrons and ions are described using norm-conserving or ultrasoft pseudopotentials, or the projector-augmented-wave method.

To determine the electronic groundstate, VASP makes use of efficient iterative matrix diagonalisation techniques, like the residual minimisation method with direct inversion of the iterative subspace (RMM-DIIS) or blocked Davidson algorithms. These are coupled to highly efficient Broyden and Pulay density mixing schemes to speed up the self-consistency cycle.


  • 5.3.5
  • 5.4.4

Authorized Users

  • VASP is available only to USF research groups that already have an existing VASP license.


  • CIRCE cluster


  • apps/vasp/5.3.5
  • apps/vasp/5.4.4
  • apps/vasp/5.4.4_gpu

Running VASP on CIRCE

The VASP user guide is essential to understanding the application and making the most of it. The guide and this page should help you to get started with your simulations. Please refer to the Documentation section for a link to the guide.

  • Note on CIRCE: Make sure to run your jobs from your $WORK directory!
  • Note: Scripts are provided as examples only. Your SLURM executables, tools, and options may vary from the example below. For help on submitting jobs to the queue, see our SLURM User’s Guide.

VASP runs reasonably well on most types of hardware but its performance depends greatly upon the number of atoms in the system, the k-point configuration specified in the KPOINTS file, and the number of ionic or relaxation steps you specify in INCAR. For smaller systems with a small set of atoms and k-point configuration, Gigabit Ethernet is sufficient for communications, but for anything more involved, you will definitely want to use Myrinet or InfiniBand for an interconnect.

Various VASP binaries are available for use, based on what you need to do.

Please Note: The VASP GPU binaries can only be accessed by using a separate module (apps/vasp/5.4.4_gpu). This module will conflict with other VASP modules, and must be loaded without any other VASP versions, complier, or cuda modules. Everything needed for running the VASP GPU executables will be loaded using the vasp/5.4.4_gpu module. Please review our GPU Guide for details about running GPU jobs on the cluster via SLURM.

Binary Version Information
vasp_std 5.4.4 Multiple k-point collinear calculations
vasp_ncl 5.4.4 non-collinear calculations, spin-orbit coupling
vasp_gam 5.4.4 gamma-point only
vasp_gpu 5.4.4 GPU enabled port of standard VASP
vasp_gpu_ncl 5.4.4 GPU enabled port of non-collinear version
Older VASP executables still in common use
vasp_so 5.3.5 non-collinear calculations, spin-orbit coupling
vasp_cd 5.3.5 charge density reduced in Z direction: half grid mode (-DNGZhalf)
vasp_gamma 5.3.5 𝛤-point only (-DwNGZhalf)
vasp_gamma_cd 5.3.5 𝛤-point only, half grid mode (-DwNGZhalf -DNGZhalf)
VASP with 3rd party add-ons
vasp_w90 5.3.5 Wannier functions (-DVASP2WANNIER90)
VASP with VTST is only available for 5.3.3
vasp_vtst 5.3.3 transition state theory rate constants
vasp_vtst_dos 5.3.3 Bader volumes and corresponding density of states
  • Note: Make sure to run your job from your $WORK directory.

The following submit script is a good starting point for submitting VASP jobs:

#SBATCH --job-name=vasp-test
#SBATCH --output=output.%j
#SBATCH --time=01:00:00
#SBATCH --nodes=6 --ntasks-per-node=6

#### SLURM 36 processor VASP test to run for 1 hour.

module purge
module add apps/vasp/5.4.4

# For standard vasp
mpirun vasp_std

# for non-collinear calculations (spin-orbit coupling)
# mpirun vasp_ncl

# for gamma point only vasp
# mpirun vasp_gam

Next, you can change to your job’s directory, and run the sbatch command to submit the job:

[user@login0 ~]$ cd my/jobdir
[user@login0 jobdir]$ sbatch ./
  • You can view the status of your job with the “squeue -u <username>” command


Home Page, User Guides, and Manuals

Benchmarks, Known Tests, Examples, Tutorials, and Other Resources

  • VASP Pseudo-Potential sets
    • /apps/vasp/common/pot
  • VASP vdw_kernel for the vdW-DF proposed by Dion et al.
    • /apps/vasp/5.3.3/vdw_kernel.bindat
      • Note: 5.3.3 only
  • VTST
  • DOS Projection in Bader Volumes


Please read carefully!

  1. This program is only available to members of the USF Laboratory for the study of Band Structures.
  2. Only certain members of the Band Structure Lab are authorized to contact VASP developers for assistance with problems.

HENCE, ALL SUPPORT REQUESTS MUST GO THROUGH RESEARCH COMPUTING, unless you know you are one of these members.

More Job Information

See the following for more detailed job submission information:

Reporting Bugs

Report bugs with VASP to the IT Help Desk: