Skip to main content

A Python package enhancing VASP AIMD simulation

Project description

xdatbus

Build Release PyPI Downloads codecov Code style: black

Xdatbus is a Python package designed specifically for Vienna Ab-initio Simulation Package (VASP) users conducting ab-initio molecular dynamics (AIMD) simulations, as well as biased MD simulations. The name of the package is derived from the concatenated MD trajectories generated by VASP, specifically the XDATCAR files. The documentation for the package can be accessed here, and a Jupyter Notebook tutorial is also available.

Installation

Make sure you have a Python interpreter, preferably version 3.10 or higher. Then, you can simply install xdatbus from PyPI using pip:

pip install xdatbus

If you'd like to use the latest unreleased version on the main branch, you can install it directly from GitHub:

pip install git+https://github.com/jcwang587/xdatbus

The package is also available from conda-based installation. It is generally recommended you first create a separate environment, then you can install via the xdatbus channel on Anaconda cloud:

conda install --channel xdatbus xdatbus

If you plan to use PLUMED to analyze enhanced sampling AIMD results, you can also install the conda version of PLUMED together:

conda install -c xdatbus -c conda-forge xdatbus plumed

Get Started

This is a brief example demonstrating how to use the basic function of xdatbus to aggregate multiple xdatcar files into a single file and unwrap the coordinates into an .xyz file.

As is the case when you have submitted a continuous AIMD job, it is likely that you would have subfolders for each submission. XDATCAR files can be first gathered in a separate directory by:

$ mkdir xdc_files && for i in {1..10}; do cp RUN$i/XDATCAR xdc_files/XDATCAR_$(printf %02d $i); done

Then, try aggregating and unwrapping the coordinate data from the XDATCAR files:

import os
from xdatbus import xdc_aggregate, xdc_unwrap

xdc_dir = "./xdc_files"
xdb_dir = os.path.dirname(xdc_dir)
xdb_path = os.path.join(xdb_dir, "XDATBUS")
xyz_path = os.path.join(xdb_dir, "XDATBUS_unwrap.xyz")

xdc_aggregate(xdc_dir=xdc_dir, output_dir=xdb_dir)
xdc_unwrap(xdc_path=xdb_path, output_path=xyz_path)

There are also entry points included with the installation for the Command Line Interface (CLI) to perform similar tasks:

$ xdc_aggregate --xdc_dir ./xdc_files --output_dir ./
$ xdc_unwrap --xdc_path ./XDATBUS --output_path ./XDATBUS_unwrap.xyz

Major Changelog

0.3.0 Enabled the functions for locating minima and running NEB in 2D FES.

0.2.5 Enabled CLI through the rich package.

0.2.0 Added a function to generate extxyz-formatted data for training machine learning interatomic potentials.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xdatbus-0.3.5.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

xdatbus-0.3.5-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file xdatbus-0.3.5.tar.gz.

File metadata

  • Download URL: xdatbus-0.3.5.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for xdatbus-0.3.5.tar.gz
Algorithm Hash digest
SHA256 b3f7a74aad2db6e17d513186468e1199652b624c1a38ef79b5dda7e375a7659d
MD5 6c3897467303e83c6386f7cc7a6bb8a4
BLAKE2b-256 3e703b7f13543613c70eb0fcc4c92dabcefc06d96f72f3befeb974913c01e984

See more details on using hashes here.

Provenance

The following attestation bundles were made for xdatbus-0.3.5.tar.gz:

Publisher: pypi-publish.yml on jcwang587/xdatbus

Attestations:

File details

Details for the file xdatbus-0.3.5-py3-none-any.whl.

File metadata

  • Download URL: xdatbus-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for xdatbus-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e42a8e3a9a79ddb07ccc537c6d9355bf1c15b1076253c457544e8b5bbb3d8f98
MD5 3bcd2be3e0a63509a7a44bbdf08b30c7
BLAKE2b-256 36bc7888eda3c1ba5d756e377ce4bd8b09d825fc297209b61228c04d06c41f1d

See more details on using hashes here.

Provenance

The following attestation bundles were made for xdatbus-0.3.5-py3-none-any.whl:

Publisher: pypi-publish.yml on jcwang587/xdatbus

Attestations:

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page