Recommended way to interpolate dynamical matrices? #116
-
Dear developers, I know this question has been raised a couple of times, but I'd still want to make sure how to properly interpolate the resulting dynamical matrices obtained from SSCHA calculations, as I feel like you are still frequently updating your code, and the previous answers are not entirely clear to me. Below is my problem description: Starting from the dynamical matrices (which result in soft modes) computed from DFPT using a 2x2x2 q-mesh in Quantum espresso, I was able to use your SSCHA code to obtain a set of new dynamical matrices defined on this exact same 2x2x2 q-mesh that gives in all-positive phonons. But I'd like to interpolate these dynamical matrices to a 4x4x4 q-mesh, and not just any 4x4x4 q-mesh, but the 4x4x4 irreducible q-mesh Quantum Espresso would automatically generate for this system if I ask it to. I checked both your answers to the previous discussions as well as your user guide. In a previous post I saw people using In summary, my question is: Thank you very much for you patience and help in advance. Best, |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
Hi Ben, You need to call the following function to group the q points in the stars as quantum espresso does:
After the Interpolate or InterpolateMesh, it should be done automatically. However, the best way to interpolate the dynamical matrices also exploiting the effective charges is by using support harmonic dynamical matrices in the Interpolate method. You can call Interpolating as
In this way, the q mesh will be the same as the one of dyn_harm_444 computed with quantum espresso, and it will exploit the two harmonic dynamical matrices to improve the interpolation (therefore, it accounts also for long-range interactions even better than using just the effective charges). I hope that this clarify the problem, |
Beta Was this translation helpful? Give feedback.
Hi Ben,
I'm very sorry for the late reply; for some reason, this post was not notified correctly through the GitHub system and slipped my attention. I hope you found a solution, I will answer anyway as it could be of interest also for other people.
Both Interpolate and InterpolateMesh chose the correct q-mesh, the same as quantum espresso.
There could be a difference in the order of q-points, or some q-points could be shifted by the reciprocal vectors, but they would be precisely the same.
You need to call the following function to group the q points in the stars as quantum espresso does:
After the Interpolate or InterpolateMesh, it should be done automatically.
Howev…