Closed bkchang closed 1 year ago
Hi, sorry for the delay in the reply.
The value of the imaginary part should be zero, thus the assertion statement in the code is correct. The threshold is 1e-6, so 1.1554928846501804e-06 > 1e-6, and this raise the error. The reason is probably due to the fact that espresso saves dynamical matrices with single precision, and when you have a very big supercell dyn compared to the primitive cell (like the one you are using), it may give raise to this numerical problems.
I have two suggestions: 1) Consider starting with a smaller supercell (nqirr = 24 seems quite big), this also means that the calculation is way cheaper, and there are tricks to improve the convergence with the q-mesh sampling much faster than the harmonic result. 2) You can manually hack the code to increase the threshold to 1e-5 or higher, and get rid of the error.
Let me know if this is helpful, Bests, Lorenzo
Hi Lorenzo,
Thanks for the detailed response. Yes, right after I posted this I realized you are implementing the correct logic. And indeed eventually I reduced the density of my ab initio nqirr, and am redoing the calculation now. I have other more general questions about constructing the ensemble, and will post it in discussions. Thank you so much and sorry for the confusion.
Best, Ben
Dear Developers,
I'm trying to use your code to obtain all-real phonon dispersion starting from QE dynamical matrices with imaginary phonon frequencies. I'm following your PbTe tutorial.
I ran the following script:
And got the following error message:
I checked the source code of cellconstructor/Phonons.py and the line causing the error is
I find this quite weird as i thought the logic here should be
Your kind reply is appreciated.
Best, Ben