After running the Molecular dynamics(MD) simulation, I'd like to see the excitation of phonons during MD, so I'd like to project the trajectory onto a set of phonons, I've seen some paper use the method called normal mode decomposition.

My question is: is there some software that could do this kind of job?

  • $\begingroup$ I believe this depends a lot on which software you use for the MD, and which software you use for the phonon calculation. Although you may convert the MD trajectory and phonon modes to arbitrary format with a bit of scripting, it may be the case that you need more code for converting the formats than to do the normal mode decomposition, in which case you may as well write the normal mode decomposition code by yourself (which saves your time of writing format conversion code). $\endgroup$
    – wzkchem5
    Commented Apr 19, 2023 at 19:32
  • $\begingroup$ @wzkchem5, I am using VASP and CP2K, is there any tools to convert the MD trajectory from VASP and CP2K? $\endgroup$
    – Jack
    Commented Apr 21, 2023 at 5:20
  • $\begingroup$ @Jack Does my post answer your question? If yes, it would be nice if you could mark it as accepted answer. Otherwise the bounty would just disappear :( $\endgroup$ Commented May 2, 2023 at 8:00

1 Answer 1



DynaPhoPhy is an open source (MIT License) python library for Phonon anharmonic properties from Molecular Dynamics.

DynaPhoPhy allows to calculate anharmonic phonon linewidhts and frequency shifts using the mode descomposition technique. To do that it uses a VASP or LAMMPS Molecular Dynamics (MD) trajectory and projects it onto a set of harmonic phonon modes obtained by Phonopy. Afterwards the power spectrum is calculated usign Fourier transform or Maximum Entropy Method (MEM) and the peaks are fitted to Lorentzian functions to extract the phonon anharmonic properties.

Detailed documentation on how to use : Docs

Source Code: Github


The steps on high level to use DynaPhoPhy are listed below with text quoted from the docs page.

  1. Obtain input data by preparing Phonopy harmonic lattice dynamics calculation

For many of the features of DynaPhoPhy the phonon eigenvectors are necessary. These eigenvectors are calculated from the harmonic phonon force constants using phonopy. To do this calculation DynaPhoPy requires either a phonopy FORCE_SETS or FORCE_CONSTANTS type file. These files can be created using phonopy, just follow the instruction in phonopy tutorial to obtain them. Keep the original POSCAR file used in the calculation containing the unaltered unit cell. This file is used as input for DynaPhoPy to define the unitcell.

  1. Prepare Molecular Dynamics (MD) calculation At the present time

DynaPhoPy implements interfaces for VASP and LAMMPS output files. Using VASP VASP is a popular software to perform first principles calculations of solids. DynaphoPy can read the MD trajectory from either OUTCAR or XDATCAR output files. Please, refere to VASP online manual for detailed information to how to calculate a MD simulation.

  1. Execute DynaPhoPhy
dynaphopy input_file OUTCAR             (VASP)
dynaphopy input_file LAMMPS.lammpstrj -ts 0.002 (LAMMPS)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .