vsh is a command line utility for interacting with VASP. This is meant to simplify the numerous tools provided by libraries such as pymatgen, ASE, pyprocar, and others alike.
To view formatted documentation, you may open docs/vsh.html
in your browser. This can be done with command line on most Linux distros
xdg-open docs/vsh.html
or in MacOs
open docs/vsh.html
vsh comes with several modules meant to assist in the preperation and analysis of VASP calculations. To see all of the possible modules, invoke the '-h' flag to see what is available
vsh -h
vsh is currently equipped with a wide range of tools. Most notably, vsh has utilities to prepare band structure calculations, generate slabs, and handle detailed ASE databases. Invoke either vsh incar -h
, vsh slab -h
, or vsh db -h
to learn more about their functionality.
The repository is separated into several modules to compartmentalize the various needs of a computational scientist.
Analysis is intended to quickly read data from the OUTCAR and vasprun.xml files produced by VASP. This is by no means a replacement for going over the data yourself - simply a tool to check on the status of a calculation and get a quick glance at the raw output.
The most reqularly used utility is checking the ionic and electronic convergence of a VASP calculation.
vsh analysis --converged
This can be used in combination with other shell commands to become a powerful organizational tool. For example, the following code block is a one-liner that does a recursive search for all directories containing vasprun.xml
and checks to see if the calculation has converged.
shopt -s globstar; for dir in /path/to/search/**/; do [ -f "$dir/vasprun.xml" ] && (cd "$dir" && vsh analysis --converged); done
band is a glorified wrapper for pyprocar with only an additional input parser to simplify plotting. Adjustments have been made to the default behavior - namely preference for the parametric plotting mode instead of the 'plain' mode. Additional quality of life features have been included as well - such as specifying the orbitals by symbol rather than arbitrary number.
vsh contains a wrapper for the ASE database utility. There have been some adjustments to the default ASE database behavior to include more information regarding the initial parameters and results of a VASP calculation.
slabgen is a module intended to simplify the process of making slabs of bulk materials. Many options are included in the specification of typical parameters such as vacuum, slab thickness, and miller plane.
These four modules handle the creation and modification of their respective files. Notably, kpoints
can handle any type of KPOINTS file and can even produce high-symmetry k-paths from the SeekPath API.
poscar
is able to convert and manipulate any file type containing structural information. You are also able to create molecules surrounded by vacuum to perform molecular calculations in VASP.
Additionally, there is a static surface projected band path that follows
Convert WAVECARS to cube, parchg, and Wannier90
procar is quite a built out utility with many options, so please refer to the -h output. Procar does orbital and compositonal analyses on a band and kpoint basis. You can also plot and query these properties. It is recommended that you pickle your vasprun.xml file prior to using the utility to save time. Additionally, the procar module is able to plot interactive band structures for quick reference (not publication ready figures)
This module is inteded to plot COHPs produced by the LOBSTER program. You are able to plot multiple directories at a time.