[QE-developers] Berry Phase on BaTiO3 - unexpected renormalization of the Phase value
Spreafico, Samuele
samuele.spr.spreafico at fau.de
Fri May 13 16:17:07 CEST 2022
To whom it may concern:
While running Berry Phase analysis on BaTiO3 via pw.x (version 7.0) I found a mismatch in the output value.
I figure out that the value of weighted average of the Electronic Phase printed in the output file get shift by a factor of +1.
In the following temporary link, you can find the files of two calculations on this system: one with reasonable results and another with unexpected results.
https://www.transfernow.net/dl/20220513pe4LRGy
Our Idea:
This process seems to happen, whenever the averaged Electronic Phase lies outside the range of [-0.5, +0.5], leading to an unexpected Total phase and resulted Polarization value.
Although polarization is a multiple value given by: Ps +/- n*mod, the above mentioned shift cannot correctly compensated by the mod, such to get a reasonable value for this system.
Looking at the source code: bp_c_phase.f90 around the lines=764-806,
The variables pdl_elec_up, pdl_elec_dw and pdl_elec_tot seems to be renormalized as follow:
805: ! you need to do mod again!
806: pdl_elec_tot=pdl_elec_tot-nint(pdl_elec_tot)
Where nint = +/- 1 and not the mod value.
although in the previous lines, the value seems already to be fixed in the range of -Pi to +Pi
771: !REC Third you need to fix jumps before you take average
762: if(abs(t+1d0-t1).lt.abs(t-t1))phik(istring)=phik(istring)+tpi.
Our Question:
1) why there's this renormalization at line 806?
2) why there's a change of +/- 1 instead of +/-2?
Thank you for your consideration
Regards
Samuele Spreafico
Department of Chemistry and Pharmacy
Professor for Computational Chemistry (ICMM)
CCC, Nägelsbachstraße 25
91052 Erlangen
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quantum-espresso.org/pipermail/developers/attachments/20220513/77ea1b46/attachment.html>
More information about the developers
mailing list