Tools for Phono(3)py power users.
The command-line scripts are written in Python and collectively require the following packages:
If you do not use Python, we recommend installing Anaconda or Miniconda.
The packages are installed by default with Anaconda, and can be added to Miniconda using the conda
package manager:
$ conda install numpy matplotlib h5py
Some of the scripts also use the Phonopy Python API and require Phonopy to be installed.
This can also be installed using conda
- instructions here.
The easiest way to download Phono3py-Power-Tools is to clone the repository with git
:
$ git clone https://github.com/skelton-group/Phono3py-Power-Tools
Once done, make the command-line scripts executable:
$ cd Phono3py-Power-Tools
$ chmod +x phonopy-* phono3py-*
To avoid prefixing the scripts with their full path, add the repository folder to your $PATH
variable - e.g.:
$ export PATH=${PATH}:/mnt/d/Repositories/Phono3py-Power-Tools
If you wish to use the Phono3pyTools
Python package, you will also need to add the folder to your $PYTHONPATH
:
$ export PYTHONPATH=${PYTHONPATH}:/mnt/d/Repositories/Phono3py-Power-Tools
You can update by performing a git pull
from the Phono3py-Power-Tools folder:
$ git pull
If you have imported the Python package, or run any of the command-line scripts that do so, this will likely have created some cache files and you will get a git
error similar to the following:
error: Your local changes to the following files would be overwritten by merge:
phono3py-mode-plot
Please, commit your changes or stash them before you can merge.
Aborting
Presuming you do not have source code changes to commit, you can work around this error by git stash
ing the "changes", deleting the "stashed" changes, and then running a git pull
:
$ git stash
$ git stash clear
$ git pull
After updating, you will probably need to update the script permissions again:
$ chmod +x phonopy-* phono3py-*
Command-line script to list the commensurate wavevectors (q-points) associated with a chosen supercell expansion. Documentation and a usage example here.
Command-line script to find the transformation matrix between a conventional and primitive cell such as the BPOSCAR
and PPOSCAR
obtained with phonopy --symmetry
.
Documentation and a usage example here.
Provides a means to post-process phonon calculations in unsupported codes with Phonopy, by reverse transforming frequencies and eigenvectors to force constants. Currently supports CASTEP. More complete documentation can be found in the project subfolder.
Command-line script for extracting thermal-conductivity tensors (κlatt) from the kappa-m*.hdf5
files produced by Phono3py to plain-text comma-separated values (CSV) files.
More complete documentation can be found here.
Command-line script to generate input for modelling the effect of mass variance on κlatt. Documentation including usage examples can be found here.
Command-line script for visualising the data from Phono3py kappa-m*.hdf5
files.
Documentation including a tutorial can be found here.
Command-line script for extracting and visualising the force drift reported in sets of VASP OUTCAR
files.
This can be used to quickly assess the numerical quality of a set of single-point force calculations for a VASP + Phono(3)py calculation, and to identify calculations that need attention.
Documentation to follow.
Command-line script for visualising the norms of the atomic forces sets in Phonopy FORCE_SETS
and Phono3py FORCES_FC3
files.
This can be used in conjunction with vasp-get-force-drift
(or a similar tool) to compare the numerical precision of the calculated forces to the changes in forces in the displaced structures.
Documentation to follow.
We are happy to accept contributions. To report bugs or request new features, please use the Issue Tracker. If you use the programs in this repository in your work, please let us know jonathan.skelton[at]manchester.ac.uk - we will collect them and put up a list of outputs.