Git Product home page Git Product logo

phono3py-power-tools's Introduction

Phono3py-Power-Tools

Tools for Phono(3)py power users.

Installation

Requirements

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.

Downloading and setting up

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

Updating

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 stashing 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-*

Utilities for Phonopy

phonopy-get-comm-pts

Command-line script to list the commensurate wavevectors (q-points) associated with a chosen supercell expansion. Documentation and a usage example here.

phonopy-get-trans-mat

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.

Phonopy-Importer

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.

Utilities for Phono3py

phono3py-get-kappa

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.

phono3py-isotopes

Command-line script to generate input for modelling the effect of mass variance on κlatt. Documentation including usage examples can be found here.

phono3py-mode-plot

Command-line script for visualising the data from Phono3py kappa-m*.hdf5 files. Documentation including a tutorial can be found here.

Contributions, bug reports and feature requests

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.

phono3py-power-tools's People

Contributors

jmskelton avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.