VASP

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

This guide serves as an introduction to running VASP at Pawsey.

Prerequisites/Before you begin

Proof of a licence is required before being granted access to VASP.

You should submit a helpdesk ticket requesting VASP access, including the user accounts and email addresses that require access.

The email addresses for the accounts must match the em[Dev]VASPail addresses that are used on the VASP licensing portal.

Based on experience, checking the email that was used in the VASP license portal first can avoid confusion and help us progress the ticket faster.

The Pawsey helpdesk will then use the VASP licensing portal to confirm a valid licence, which is why it is important to have a matching email address to the one registered with VASP.

Upon confirmation from the VASP licensing portal we will grant access to the vasp and/or vasp6 groups depending on the type of license, which will allow the accounts to load the corresponding VASP modules.

Generally, up to 6 users can be on a single licence.  Note that licences are restricted to particular versions of VASP.

Using VASP on Setonix

VASP is installed for the GNU programming environment on Setonix.

Listing 1. VASP example script
#!/bin/bash -l
#SBATCH --job-name=something
#SBATCH --ntasks=128
#SBATCH --ntasks-per-node=128
#SBATCH --cpus-per-task=1
#SBATCH --partition=work
#SBATCH --exclusive
#SBATCH --account=[your-account]
#SBATCH --time=02:00:00
#SBATCH --nodes=1
 
module load vasp/5.4.4
 
ulimit -s unlimited
 
srun -N 1 -c 1 -n 128 vasp_std > vasp.log

The ulimit command is required because VASP uses a large amount of stack memory in addition to heap memory.  This does not unlock more physical memory or change the amount of memory allocated to the job.

In VASP versions 5.4.4, 6.2.1 and 6.3.0 there are three default binaries created:

  • vasp_std
  • vasp_gam
  • vasp_ncl

GPU-enabled builds of VASP are not available on Setonix.

Install a custom build of VASP

Pawsey staff does not install any VASP customisations globally. If you need a modified version of VASP, you can install it from a source archive using Spack. Note that you must have a valid VASP license and be able to download the VASP source code from the VASP portal before you can build a custom VASP installation.

Install VASP with support for VASPsol and VTST

VASPsol and VTST are popular customisation packages for VASP; VASPsol enables calculations using an implicit solvation model, while VTST is a utility for finding saddle points and evaluating transition state theory (TST) rate constants.

Users with a valid VASP license can use Spack to install VASP with VASPsol, VTST, or both. Note how the Spack installation command needs to be run from a directory containing the VASP source archive for the requested version.

The example below shows the procedure to install VASP 5.4.4.pl2 with VASPsol and VTST using Spack:

Terminal 1. Install VASP with VASPsol using Spack
$ ls 
vasp.5.4.4.pl2.tgz

$ module load spack/0.19.0
Note: when this module is unloaded, the shell environment will NOT revert to its original state, and retain
some Spack settings. If you need the original shell environment, start a new shell session instead. 

$ spack install vasp@5.4.4.pl2 +scalapack +vaspsol +vtst
==> Installing vasp-5.4.4.pl2-7p4vkc6ncmxw7ceochhxbqla36fvecfe
==> No binary for vasp-5.4.4.pl2-7p4vkc6ncmxw7ceochhxbqla36fvecfe found: installing from source
[..]
==> vasp: Successfully installed vasp-5.4.4.pl2-7p4vkc6ncmxw7ceochhxbqla36fvecfe
  Fetch: 1.49s.  Build: 20m 50.73s.  Total: 20m 52.22s.
==> vasp: Successfully installed vasp-5.4.4.pl2-7p4vkc6ncmxw7ceochhxbqla36fvecfe
  Fetch: 9.56s.  Build: 12m 28.45s.  Total: 12m 38.01s.
[+] /software/projects/your_project/your_username/setonix/2023.08/software/linux-sles15-zen3/gcc-12.2.0/vasp-5.4.4.pl2-7p4vkc6ncmxw7ceochhxbqla36fvecfe

$ spack module lmod refresh -y vasp
==> Regenerating lmod module files

Note that this procedure has been tested with the following versions and options:

  • vasp@5.4.4 +scalapack +vaspsol +vtst
  • vasp@5.4.4.pl2 +scalapack +vaspsol +vtst
  • vasp@6.2.1 +scalapack +vaspsol
  • vasp@6.3.0 +scalapack +vaspsol

Only the original version of VASPsol (external link) can be installed using Spack. The community-developed VASPsol++ plugin (external link) cannot be installed this way.

External links