Learn how to use the VASP (Vienna Ab initio Simulation Package) licensed software on Eagle.
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.
The BEEF-vdW functional is only available in the VASP/5.4.4.10112017-vtst module and not in the default one: VASP/5.4.4.16052018. VASP Input files only can be created using the ASE class-definition without the need to start a calculation explicitly. Features that will only be available in VASP.6.X. How to Install VASP: First install VASP. Workshops: The collection of workshops is a good place for the introduction to the basics of VASP. Lectures: The collection of lectures is a good place to start as well. Tutorials and Examples. Nov 21, 2017 vaspstd 5.4.4 Multiple k-point collinear calculations vaspncl 5.4.4 non-collinear calculations, spin-orbit coupling vaspgam 5.4.4 gamma-point only vaspgpu 5.4.4 GPU enabled port of standard VASP vaspgpuncl 5.4.4 GPU enabled port of non-collinear version Older VASP executables still in common use: vaspso 5.3.5. MN-VFM2019-AManual.pdf examples Copy and replace the.F files in the vasp.5.4 directory, then compile VASP. If you have already compiled VASP correctly before with your own Makefile, then no modification in the Makefile is needed. If you are not able to compile VASP, please read the VASP manual and forum to obtain. Holds the source of the VASP library (used to be vasp.X.lib), and a low-level makefile. Root/src/parser Holds the source of the LOCPROJ parser (as of versions = 5.4.4), and a low-level makefile. Root/src/CUDA Holds the source of the cuda-code that will be executed on the GPU by the GPU port of VASP.
Makefile.include.linux_gfortran
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.
![See See](/uploads/1/2/6/5/126585293/932625022.jpg)
To determine the electronic ground state, VASP makes use of efficient iterative matrix diagonalization techniques, like the residual minimization 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.
For further details, documentation, forums, and FAQs, see the VASP website.
Accessing VASP on Eagle
The VASP license requires users to be a member of a 'workgroup' defined by the University of Vienna or Materials Design. If you are receiving 'Permission denied' errors when trying to use VASP, you must be made part of the 'vasp' Linux group first. To join, please e-mail [email protected] with the following information:
- Your name
- Whether you are licensed through Vienna (academic) or Materials Design, Inc. (commercial)
- Your VASP license ID (if licensed through Vienna), or proof of current licensed status (if through Materials Design)
- The workgroup PI.
Once status can be confirmed, we can provide access to our VASP builds on Eagle.
Setting Up Software Environment
In order to use VASP, set up the software environment via, e.g.:
Three distinct executables have been made available:
![5.4.4 5.4.4](https://www.researchgate.net/profile/Pranav_Bang/post/Band_Gap_calculation_help/attachment/5be93392cfe4a76455017e78/AS%3A692052538953730%401542009591554/image/1.png)
- vasp_gam is for Gamma-point-only runs typical for large unit cells;
- vasp_std is for general k-point meshes with collinear spins; and,
- vasp_ncl is for general k-point meshes with non-collinear spins.
vasp_gam and vasp_std builds include the alternative optimization and transition state theory tools from University of Texas-Austin developed by Graeme Henkelman's group, and implicit solvation models from the University of Florida developed by Mathew and Hennig.
An example job submission script is shown here:
We are currently establishing workflow and testing the GPU-enabled version of VASP for general k-point calculations. We will update this information once it becomes available.
There are several versions of VASP installed on the LCRC servers. We recommend that you use the most recent builds of VASP 6.1.2. These builds have better parallel performance, new features, and bug fixes.
There is a pure MPI build of VASP 6.1.2 optimized for the Broadwell (BDW) processors in /soft/vasp/6.1.2/bdw. An example script is provided in /soft/vasp/6.1.2/bdw/example.sh to run multithreaded on the BDWs.
There is a hybrid MPI/OpenMP build of VASP 6.1.2 optimized for the BDW processors in /soft/vasp/6.1.2/bdw_omp. An example script is provided in /soft/vasp/6.1.2/bdw_omp/example.sh to run multithreaded on the BDWs.
There is a hybrid MPI/OpenMP build of VASP 6.1.2 meant for use on the Knights Landing (KNL) processors in /soft/vasp/6.1.2/knl_omp. An example script is provided in /soft/vasp/6.1.2/knl_omp/example.sh to run on the KNLs.
There are three VASP binaries for each architecture vasp-gam (gamma-point only), vasp-std (multiple k-points), and vasp-ncl (noncollinear spins). Please use the binary which is appropriate for the type of VASP calculation you plan to run.
Makefile.include.linux_intel
In general, the hybrid MPI/OpenMP build will be slower than the pure MPI build except when running on more than one core per atom. Above one core per atom, the hybrid MPI/OpenMP build will give better parallel scaling.
General notes:
• VASP is subject to license conditions that restrict its use. You need a VASP license for version 5 to become a member of the “vasp52” Unix group to use version 5 or 6 of VASP on Bebop. Please email [email protected] with your license number if you are interested in using VASP on the LCRC clusters.
• Note that access to VASP 6 for members of the vasp52 will be temporary. At some point in the future, you will need to upgrade your VASP 5 license to run the VASP 6 binary. Contact your VASP vendor for more details.
• As a VASP 5 registered user, your access to VASP 5 will continue as per your license terms. You do not need to upgrade to a new license to continue using VASP5! We recommend using 5.4.4.pl2 which is the recent release of vasp 5.4.4, if you prefer. There example scripts for vasp.5.4.4 in /soft/vasp/5.4.4.pl2/{bdw,snb}/example.sh.
• You should consider using the following tricks to increase the throughput of your calculations. Exploiting these tricks can increase your throughput by over an order of magnitude.◦ If you are running a calculation with only the gamma-point in the “integration” over reciprocal space, you can save a factor of two in elapsed time by using the gamma-point only version of VASP.
◦ The RMM-DIIS iterative matrix diagonalization algorithm (ALGO = Very_Fast) will give the best parallel performance. It approximately twice as fast (per iteration) as the Davidson algorithm (ALGO=NORMAL) ALGO=Fast uses RMM-DIIS most of the time and is recommended for metallic or reactive systems.
◦ The parallel performance of VASP depends on the NCORE parameter on the Broadwell nodes. You can improve performance by a factor of two (or more) by using an optimum value of NCORE. Our tests with the NCORE = 6 gives good performance on the Broadwells. However, you should optimize NCORE and the number of nodes to get the best performance for your model. The best performance will be a divisor of 18. Note that if you are using multiple threads per process with hybrid MPI/OpenMP build of VASP the NCORE parameter will be ignored.
◦ The LPLANE input variable should be set to “.FALSE.” for best performance.
◦ If you are using multiple k-points, the KPAR parameter should be used to improve the parallel scaling. See section 6.57 of the VASP manual for more details (http://cms.mpi.univie.ac.at/vasp/vasp.pdf)
◦ When performing a geometry optimization or molecular dynamics for a big system consider using low precision (PREC=LOW). You can save a lot of time in the initial stages of a geometry optimization or equilibrate your molecular dynamics simulations with lower precision and convergence criteria. You can always use higher precision to get final results once the geometry is close to converged or the trajectory is equilibrated with low precision. Verify that the drift in energy is not too large in an NVE trajectory at low precision before using higher precision in molecular dynamics. Please see section 6.2 of the VASP manual for more details (http://cms.mpi.univie.ac.at/vasp/vasp.pdf)
◦ If you are doing a simulation involving water, an oxide, or any other system containing oxygen, consider using the soft oxygen pseudopotential (O_s). This will allow you to use a lower energy cutoff for the plane waves and save you significant time. The errors due to the softer pseudopotential are generally smaller than the errors due to the DFT approximation. But one should always verify the errors are not larger than you can tolerate.
The file vdw_kernel.bindat, for calculations involving the vdW-DF functional of Langreth, Lundqvist et al., is available in /soft/vasp.
Useful Tools:
• VESTA is a free crystal structure viewer and builder which can read and write POSCAR and CONTCAR files. VESTA can also visualize 3D data such are charge densities, potentials, and orbitals from CHG, CHGCAR, PARCHG, LOCPOT, and ELFCAR files from VASP. See http://jp-minerals.org/vesta/en/
• R.I.N.G.S. can extract pair distribution functions, mean square displacements, and other properties from the trajectory files generated by VASP molecular dynamics runs. See http://rings-code.sourceforge.net/
• Graeme Henkelman’s group, at UT Austin, maintain a collection called the “Transition State Tools for VASP.” These tools provide methods for finding saddle points, evaluating transition state theory (TST) rate constants, Bader charge analysis, and Adaptive Kinetic Monte Carlo for VASP. See http://theory.cm.utexas.edu/vtsttools/
• VMD can be used to visualize structures and trajectories from the VASP XML file. See http://www.uni-due.de/~hp0058/?file=vmdplugins.html&lang=en.
• CIF2Cell is a tool to generate a POSCAR from a CIF (Crystallographic Information Framework) file. The program currently supports output for many popular electronic structure programs. See http://sourceforge.net/projects/cif2cell.
• VESTA is a free crystal structure viewer and builder which can read and write POSCAR and CONTCAR files. VESTA can also visualize 3D data such are charge densities, potentials, and orbitals from CHG, CHGCAR, PARCHG, LOCPOT, and ELFCAR files from VASP. See http://jp-minerals.org/vesta/en/
• R.I.N.G.S. can extract pair distribution functions, mean square displacements, and other properties from the trajectory files generated by VASP molecular dynamics runs. See http://rings-code.sourceforge.net/
• Graeme Henkelman’s group, at UT Austin, maintain a collection called the “Transition State Tools for VASP.” These tools provide methods for finding saddle points, evaluating transition state theory (TST) rate constants, Bader charge analysis, and Adaptive Kinetic Monte Carlo for VASP. See http://theory.cm.utexas.edu/vtsttools/
• VMD can be used to visualize structures and trajectories from the VASP XML file. See http://www.uni-due.de/~hp0058/?file=vmdplugins.html&lang=en.
• CIF2Cell is a tool to generate a POSCAR from a CIF (Crystallographic Information Framework) file. The program currently supports output for many popular electronic structure programs. See http://sourceforge.net/projects/cif2cell.
• See the VASP resources page at https://www.vasp.at/index.php/resources for a list of additional useful tools for VASP.