Skip to content

Latest commit

 

History

History
105 lines (81 loc) · 2.96 KB

README.md

File metadata and controls

105 lines (81 loc) · 2.96 KB

PyPI version Downloads

phonoLAMMPS

Calculate the 2nd order force constants using phonopy and LAMMPS.

Main features

  • Command line interface (phonopy like style)
  • Python API fully compatible with phonopy
  • Use of official LAMMPS python interface
  • Simple and easy to use
  • New! Finite temperature force constants using DynaPhoPy

Requirements

Optional requirements for phonon band structure preview

Optional requirements for finite temperature FC calculations

Installation instructions

  1. From source code
# python setup.py install --user --prefix=
  1. From PyPI repository
# pip install phonoLAMMPS --user

For convenience, you may want to copy (or link) the files inside scripts folder to a location included in $PATH environment variable

Command line interface

phonoLAMMPS has a similar interface to phonopy to allow to easily calculate the 2nd order force constants and generate the crystal unitcell from a LAMMPS input file in VASP/POSCAR format. All outputs are fully compatible and ready to use in phonopy calculations. Also features a quick preview of the phonon band structure (requires seekpath).

# phonolammps in.lammps --dim 2 2 2 -c POSCAR_unitcell -p

Additionally phonoLAMMPS allows to easily calculate finite temperature force constants from molecular dynamics by quasiparticle theory (requires dynaphopy).

# phonolammps in.lammps --dim 3 3 3  -c POSCAR_unitcell -p -t 300       (at 300 K)

Python API

Simple python API fully compatible with phonopy.

from phonolammps import Phonolammps
from phonopy import Phonopy

phlammps = Phonolammps('in.lammps',
                       supercell_matrix=[[3, 0, 0],
                                         [0, 3, 0],
                                         [0, 0, 3]])

unitcell = phlammps.get_unitcell()
force_constants = phlammps.get_force_constants()
supercell_matrix = phlammps.get_supercell_matrix()

phonon = Phonopy(unitcell,
                 supercell_matrix)

phonon.set_force_constants(force_constants)
phonon.set_mesh([20, 20, 20])

phonon.set_total_DOS()
phonon.plot_total_DOS().show()

phonon.set_thermal_properties()
phonon.plot_thermal_properties().show()

Contact info

Abel Carreras
[email protected]

Donostia International Physics Center (DIPC)
Donostia-San Sebastian (Spain)