McStasMcXtrace / iFit

a simple library to analyze data (with McCode and Phonons/DFT hooks). :warning: this project has been moved to https://gitlab.com/soleil-data-treatment/soleil-software-projects/remote-desktop
http://ifit.mccode.org
Other
5 stars 5 forks source link

Models: Phonons: improve the ASE Phonon.C_N storage and use #114

Closed farhi closed 5 years ago

farhi commented 6 years ago

The current ASE Phonon module stores the force constants as a 3D matrix, missing information when compared to the theoretical Phi[a,b,i,j] tensor. Then, the ASE estimate of the eigen values/vectors is most probably incomplete, or even wrong.

A way to improve that is to use PhonoPy, as done in ifit.py.

An other way is to look how PHON (Alfe) uses the HF forces and upgrade the ASE Phonon module.

farhi commented 6 years ago

See comment from Kristen Kaasbjerg kkaa@nanotech.dtu.dk email 09/21/2017 10:18 PM

Emmanuel also raised some concern regarding the way the dynamical matrix is set up in the current implementation, as well as for the polarization vectors that result from its diagonalization. However, as I also hinted at, I believe that there is a simple explanation to these issues (at least the latter): the band_structure function returns the atomic displacements and not the polarization vector, the difference being a factor 1/sqrt(M_a) which is multiplied on the components of the polarization vector belonging to atom a (with mass M_a).

@Emmanuel: please check and confirm that you get well-behaved polarization vectors if you comment out the line in the code where this factor is multiplied onto the polarization vectors.

If this is indeed the case, I would be confident that the dynamical matrix is also correct, though we would have to modify its construction to that of a 4-dimensional tensor when implementing the symmetry analysis.

could solve this issue ?

farhi commented 6 years ago

The mass prefactor from C_N does not seem to solve the issue...

farhi commented 5 years ago

PhonoPy seems to be an OK solution for us.