On 09/09/2024 14:49, [email protected] wrote:
But, similarly, why would one calculate the G=0 limit of V(r) + Z erf(r)/r?
One would not: it is useless. The correct G=0 limit is computed instead
This comment in the source code
... is just a reminder of what I just wrote, in case one is puzzled by
the difference between the G=0 term and the finite-G (or finite-q,
whatever you prefer) term
!! q = 0 case, continuous for q -> 0
!! NOT THE SAME AS THE G=0 TERM, computed below
Paolo
Also explicitly differentiates between q and G but both are momentum vectors
and q=0 should implicate G=0.
Best regards
Erik
-----Ursprüngliche Nachricht-----
Von: Paolo Giannozzi <[email protected]>
Gesendet: Freitag, 23. August 2024 12:36
An: Schultheis, Erik <[email protected]>
Cc: [email protected]
Betreff: Re: AW: [QE-users] [SPAM] Fourier Transform of Local Pseudopotential
and G=0 limit
Yes, exactly.
Paolo
On 23/08/2024 11:47, [email protected] wrote:
Hi Paolo,
Thanks for your quick answer.
Point 2 is clear to me since it only applies to G!=0.
After thinking what you wrote in Point 1 and finding further information in Warren E.
Picketts " Pseudopotential Methods in Condensed Matter Applications"
(https://www.sciencedirect.com/science/article/pii/0167797789900026), especially around
equation (5.20), I now have an idea what might happen here.
You are saying that the local potential V_loc plus the Hartree potential yield the "alpha Z" term
for G=0. In the work of Pickett he writes that the formally divergent terms in the ion-ion interaction, the
coulomb interaction of the electrons, and the local pseudopotential combine to give the finite Ewald energy
(which is clear to me) and the "alpha Z" term. From this, I guess that the electronic background,
i.e. the coulomb interaction of the electrons, cancels the -Z/r behavior of the local pseudopotential V_loc.
But since V_loc is not exactly -Z/r only its -Z/r part is canceled and the remaining (non-Coulomb) part is
still to be calculated in the G=0 limit. Let's write V_loc(r) = V_loc(r) - (-Z/r) + (-Z/r) = (V_loc(r) + Z/r)
- Z/r. Then the first term is the non-Coulomb part of V_loc and the second term (-Z/r) is the Coulomb part of
V_loc. The second term is cancelled by the electronic background (Hartree potential) while the first term is
not. So the G=0 limit of (V_loc(r) + Z/r), i.e. the "alpha Z" term, has to be calculated to get the
correct G=0 limit of V_loc.
Is this the correct reasoning behind the "alpha Z" term?
Best regards
Erik
-----Ursprüngliche Nachricht-----
Von: Paolo Giannozzi <[email protected]>
Gesendet: Donnerstag, 22. August 2024 18:35
An: Schultheis, Erik <[email protected]>
Cc: Quantum ESPRESSO users Forum <[email protected]>
Betreff: Re: [QE-users] [SPAM] Fourier Transform of Local
Pseudopotential and G=0 limit
You are mixing up two different aspects:
1. V(G=0) for the local+Hartree potential is not divergent and yields the "alpha
Z" term. Of course, one sets V_H(G=0)=0.
2. The local potential V(r) behaves as -Ze^2/r for large r, making direct
computation of V(G) problematic. One removes the long-range behavior by adding
to V(r) a function f(r)=Ze^2 erf(r)/r in real space; performs the Fourier
transform; subtracts out f(G)=4\pi Z e^2 exp(-G^2)/\Omega G^2 or something like
that from V(G). All this applies to G!=0.
Paolo
On 20/08/2024 11:54, Erik Schultheis via users wrote:
Hello everyone,
In /upflib/vloc_mod.f90
<https://github.com/QEF/q-e/blob/de3035747f5d8f2ec9a67869827341ebb43f5b12/upflib/vloc_mod.f90>
the Fourier transform of the local pseudopotential V_loc is calculated. My question is
about how one can derive the G=0 term
<https://github.com/QEF/q-e/blob/de3035747f5d8f2ec9a67869827341ebb43f5b12/upflib/vloc_mod.f90#L160>.
Now I will describe how I understand the G=0 term and how this
differs from what is implemented.
Since the local potential is long-ranged, which results in problems
when performing the Fourier transformation, the long-range part is
subtracted in real-space and added back in reciprocal space.
We then calculate the Fourier transform of [V_loc(r) + erf(r)/r] –
erf(r)/r. The Fourier transform of the term in []-parentheses is the
integral over (r V_loc(r)+erf(r)) sin(Gr)/G where we integrate r from
0 to infinity. The G=0 case for this integral is no problem since the
function is continuous in the G -> 0 limit, where sin(Gr)/G becomes r.
This is implemented in this loop
<https://github.com/QEF/q-e/blob/de3035747f5d8f2ec9a67869827341ebb43f5b12/upflib/vloc_mod.f90#L133>.
The Fourier transform of the remaining –Ze^2 erf(r)/r is implemented
in this loop
<https://github.com/QEF/q-e/blob/de3035747f5d8f2ec9a67869827341ebb43f
5b12/upflib/vloc_mod.f90#L296>, which is
4 pi/V 1/G^2 e^(-G^2/4).
There the G -> 0 limit is explicitly excluded and should, in my
opinion, be the G = 0 term calculated here
<https://github.com/QEF/q-e/blob/de3035747f5d8f2ec9a67869827341ebb43f
5b12/upflib/vloc_mod.f90#L157> but is not. The limit G -> 0 of the
above term is (using the series expansion of the exponential)
lim G -> 0 (4 pi/V 1/G^2 – pi/V) which is divergent
But, the G = 0 term implemented is the integral over r^2
(V_loc(r)+1/r), also called the "alpha Z" energy term in the code
documentation, where I do not understand where the 1/r term comes
from and, if added here, where it is subtracted again to not change
the local potential. This suggests that something like [V_loc(r) +
1/r] – 1/r is used for the G=0 term but the subtracted -1/r term is never
calculated.
I thought that this can be explained by 4 pi/V 1/G^2 from the above
limit which is the Fourier transform of 1/r, but then the V_loc(r)
term is missing. As you see, I am confused.
Further, I could not find any literature about calculating the
Fourier transform of the local pseudopotential. The only reference I
found that also mentions this "alpha Z" energy term is Phys. Rev. B
69, 075101
<https://journals.aps.org/prb/abstract/10.1103/PhysRevB.69.075101> in
equation (12). Since they do not provide a motivation of this term
besides that it is “the non-Coulomb part of the pseudopotential at q=0”, I
cannot understand where this term comes from.
Can anyone help me understand the origin of the G=0 term implemented
in QuantumEspresso?
Best regards
Erik Schultheis
#CallMeByMyFirstName
**
*German Aerospace Center*(DLR)
Institute of Materials Research
Linder Höhe | 51147 Cologne
*Erik Schultheis M. Sc.*
Metallic and Hybrid Materials
Telephone: +49 (0) 2203 601 1311
[email protected] <mailto:[email protected]> | LinkedIn
<https://www.linkedin.com/in/erik-schultheis-930549243/>
_______________________________________________
The Quantum ESPRESSO community stands by the Ukrainian people and
expresses its concerns about the devastating effects that the Russian
military offensive has on their country and on the free and peaceful
scientific, cultural, and economic cooperation amongst peoples
_______________________________________________
Quantum ESPRESSO is supported by MaX (www.max-centre.eu) users
mailing list [email protected]
https://lists.quantum-espresso.org/mailman/listinfo/users
--
Paolo Giannozzi, Dip. Scienze Matematiche Informatiche e Fisiche, Univ. Udine,
via delle Scienze 206, 33100 Udine Italy, +39-0432-558216 X SCUOLA ENERGIE
RINNOVABILI 16-21/9/2024 - PRE-ISCRIZIONE https://agenda.infn.it/event/39573/
--
Paolo Giannozzi, Dip. Scienze Matematiche Informatiche e Fisiche,
Univ. Udine, via delle Scienze 206, 33100 Udine Italy, +39-0432-558216
X SCUOLA ENERGIE RINNOVABILI 16-21/9/2024
_______________________________________________
The Quantum ESPRESSO community stands by the Ukrainian
people and expresses its concerns about the devastating
effects that the Russian military offensive has on their
country and on the free and peaceful scientific, cultural,
and economic cooperation amongst peoples
_______________________________________________
Quantum ESPRESSO is supported by MaX (www.max-centre.eu)
users mailing list [email protected]
https://lists.quantum-espresso.org/mailman/listinfo/users