py4vasp is a Python interface to extract data from VASP calculations. It is intended mainly to get a quick look at the data and provide the functionality to export it into common formats that can be used by other more sophisticated postprocessing tools. The second domain of application is for people that want to write Python scripts based on the data calculated by VASP. This tool interfaces directly with the new HDF5 file format and thereby avoids parsing issues associated with the XML or OUTCAR files.
For these two groups of users, we provide a different level of access. The simple routines used in the tutorials will read the data from the file directly and then generate the requested plot. For script developers, we provide interfaces to convert the data to Python dictionaries for further processing. If I/O access limits the performance, you can lazily load the data only when needed.
In addition, py4vasp provides utility scripts to assist with common workflows in VASP:
- error-analysis - This script extracts the energies, forces, and stress tensors of a machine-learned force-field calculation and compares them against a reference set of first principles calculations. The errors are returned as data or plot to assess the accuracy of the force field.
What's Changed
- fix: update readme by @Shibu778 in #150, #153
- feat: implement contour and quiver plots for densities by @martin-schlipf in #146
- ci: update actions and Python version by @martin-schlipf in #156
- feat: support Python3.12 by @martin-schlipf in #157
- feat: partial charges and STM images by @MichaelWolloch in #144, #158
- fix: structure uses correct elements list by @sudarshanv01 in #162
- fix: compatiblity with numpy 2 by @martin-schlipf in #177
- BREAKING_CHANGE: input files hidden from public API by @martin-schlipf in #159, #176
- BREAKING_CHANGE: rename OSZICAR to electronic_minimization by @sudarshanv01 in #154, #172
- BREAKING_CHANGE: rename tau to kinetic energy by @sudarshanv01 in #173
New Contributors
- @Shibu778 made their first contribution in #150
- @MichaelWolloch made their first contribution in #144
Full Changelog: v0.9.0...v0.10.0