Skip to main content

VASP Workflow Automation and Band Structure Analysis Tool

Project description

VASPFlow

A Python package for VASP workflow automation and band structure analysis. This tool is built on top of VASPKIT.

Features

  • Automated VASP input file generation
  • Band structure analysis and plotting
  • Spin splitting calculations
  • Band gap analysis
  • Support for various VASP features:
    • Structure relaxation
    • Spin-orbit coupling (SOC)
    • LDA+U
    • Magnetic calculations
    • DOS calculations
    • Wannier calculations
    • vdW corrections

Installation

pip install vaspflow

Usage

Command Line Interface

The package provides two main commands: workflow for preprocessing and analyzer for postprocessing.

Workflow Command (Preprocessing)

# Generate VASP input files with relaxation and SOC
vaspflow workflow --relax --soc

# Full workflow with custom parameters
vaspflow workflow --relax --soc --ldau --ldauu "2 0" --ldaul "2 -1"  --ispin 2 --magmom "2 2 0 0 0" --name "Fe2O3" --nk 50 --nsw 200

Analyzer Command (Postprocessing)

# Calculate spin splitting for band 10
vaspflow analyzer --spinsplit --spin --nband 10

# Calculate band gap for occupied band 10
vaspflow analyzer --gap 10

# Output band structure with spin polarization
vaspflow analyzer --band --spin --kseg 61

Python API

from vaspflow import VaspInputHandler, VaspBandAnalyzer

# Initialize VASP input handler
input_handler = VaspInputHandler()
input_handler.is_relax = True
input_handler.is_soc = True
input_handler.setup_workflow()

# Initialize band analyzer
analyzer = VaspBandAnalyzer()
analyzer.spin_polarized = True
analyzer.read_kpoints()
analyzer.read_eigenval()
analyzer.write_band_structure()
analyzer.plot_band_structure()

Output Files

  • band.dat: Band structure data
  • band.png: Band structure plot
  • spinsplit.dat: Spin splitting data
  • spinsplit.gnu: Spin splitting gnuplot file
  • gap.dat: Band gap data

Dependencies

  • Python >= 3.6
  • numpy >= 1.15
  • matplotlib >= 3.3

Documentation

For detailed documentation, please visit [documentation link]. VASPKIT will be need to generate POTCAR and KPOINTS.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Author

Dinghui Wang wang

Project details


Download files

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

Source Distribution

vaspflow-0.1.1.tar.gz (11.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vaspflow-0.1.1-py3-none-any.whl (10.9 kB view details)

Uploaded Python 3

File details

Details for the file vaspflow-0.1.1.tar.gz.

File metadata

  • Download URL: vaspflow-0.1.1.tar.gz
  • Upload date:
  • Size: 11.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.5

File hashes

Hashes for vaspflow-0.1.1.tar.gz
Algorithm Hash digest
SHA256 55a8870a08773d1b0eec461c23f3b3369dfec939d8bfbb2fc289e9f9340c6955
MD5 16b14d178984f050cc0e36825944ea86
BLAKE2b-256 57b1eec022b16c30909f077d0af681dcb835f6d8e078d71616efa032f4e27fdb

See more details on using hashes here.

File details

Details for the file vaspflow-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: vaspflow-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 10.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.5

File hashes

Hashes for vaspflow-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2686e6502bd5dd9ff063fdbda6d8de06e576d626f3d1f0b652e76322ee7c9110
MD5 8636d3b800f7924ead5aca3d425b2813
BLAKE2b-256 f4a001b80ca74b6eb9d51efe9d68de2ff42cb333304271c032b2c5d340835dcb

See more details on using hashes here.

Supported by

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