class atomate2.vasp.drones.VaspDrone(**task_document_kwargs)[source]#

Bases: pymatgen.apps.borg.hive.AbstractDrone

A VASP drone to parse VASP outputs.


Additional keyword args passed to TaskDocument.from_directory.

assimilate(path: Optional[Union[str, Path]] = None) TaskDocument[source]#

Parse VASP output files and return the output document.

pathstr or Path or None

Path to the directory containing vasprun.xml and OUTCAR files.


A VASP task document.

get_valid_paths(path: tuple[str, list[str], list[str]]) list[str][source]#

Get valid paths to assimilate.

There are some restrictions on the valid directory structures:

  1. There can be only one vasprun in each directory. Nested directories are fine.

  2. Directories designated “relax1”…”relax9” are considered to be parts of a multiple-optimization run.

  3. Directories containing VASP output with “.relax1”…”.relax9” are also considered as parts of a multiple-optimization run.

pathtuple of (str, list of str, list of str)

Input path as a tuple generated from os.walk, i.e., (parent, subdirs, files).

list of str

A list of paths to assimilate.