New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement K-points with real coefficients in LCAO #1006
Conversation
Can one of the maintainers verify this patch? |
1 similar comment
Can one of the maintainers verify this patch? |
Can you explain kpts -= kpts[0] in the 2x1x1 example? Why is this needed, what does is do, and what is the consequence if this step is missed? |
This basically insures that the Kpoints are gamma centered. It is now done
by default so omitting it will not affect the calculations.
…On Thu, Aug 16, 2018 at 9:03 AM Paul R. C. Kent ***@***.***> wrote:
Can you explain kpts -= kpts[0] in the 2x1x1 example? Why is this needed,
what does is do, and what is the consequence if this step is missed?
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
<#1006 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AXl6w0_qqlPFJyKFP30nCcuuxNk8rGQmks5uRXuugaJpZM4V_310>
.
--
-----------------------
Anouar Benali, PhD
Leadership Computing Facility
Argonne National Laboratory
Building 240 Office - 2127
9700 S Cass Av., Argonne Il, 60439
(630) 252-0058
|
What is the behavior if a complex k points are used? |
Kpoints are always treated as complex variables. When high symmetry point,
imaginary part is below 1e-07. In converter, when applying the phase
factor, an asset function is called to insure that the imaginary part is
indeed below that threshold. If not converter will exit and give the value
of largest imaginary coefficient.
Qmcpack will only get a real array. All is done in converter to avoid
complex variable in real code.
…On Thu, Aug 16, 2018, 09:49 Paul R. C. Kent ***@***.***> wrote:
What is the behavior if a complex k points are used?
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
<#1006 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AXl6w5DxAQyZTNWdZGeJJRZVOsxiMXMUks5uRYaBgaJpZM4V_310>
.
|
Good. So we bail if an unsupported k-point is chosen. |
Yup :)
However, I might use the (k[i]+k[-i])/2 to rotate complex orbitals (similar
to casino) but that will just delay further more a proper complex
implementation.. and I really need those..
…On Thu, Aug 16, 2018, 10:09 Paul R. C. Kent ***@***.***> wrote:
Good. So we bail if an unsupported k-point is chosen.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
<#1006 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AXl6w5cuNYLvXaN3tQFEaZw8bElHAg3vks5uRYtCgaJpZM4V_310>
.
|
I think "everyone" does +- k pairing where possible. Be careful with any phase factor - recall our experience with bad choices for plane-waves, solved by @ye-luo |
OK to test |
yes I completely agree... I already had some bad behaviors... :/
This current implementation is temporary anyways. In the future I will
store the MO coeffs and occupation per Kpoints in the H5 file and have the
same routine in QMCPACK do the rotation. the current implementation for PW
is SPO type which means it does not require anything but plumbing to work
for both splines and GTO...
…On Thu, Aug 16, 2018 at 10:27 AM Paul R. C. Kent ***@***.***> wrote:
I think "everyone" does +- k pairing where possible. Be careful with any
phase factor - recall our experience with bad choices for plane-waves,
solved by @ye-luo <https://github.com/ye-luo>
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
<#1006 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AXl6wzf8kLaSGqCSDC2yKblN0pkqihTqks5uRY9pgaJpZM4V_310>
.
--
-----------------------
Anouar Benali, PhD
Leadership Computing Facility
Argonne National Laboratory
Building 240 Office - 2127
9700 S Cass Av., Argonne Il, 60439
(630) 252-0058
|
This is a fully working converter from Pyscf to QMCPACK generating a supercell from a series of Kpoints with real MO Coefficients.
The series of Kpoints are expanded in the converter to form a supercell corresponding to the Kpoints used to converge the calculations. The choice of Kpoint must be such as the Kpoint generate real orbitals. The phase factor on the MO Coeffs is applied inside the converter. This feature will be moved to QMCPACK (parallel to what is done for the real space code) when Complex Orbitals are implemented.