[QE-users] Hubbard_occ()

Iurii TIMROV iurii.timrov at epfl.ch
Tue Dec 6 17:15:19 CET 2022


> How can one benefit using this variable in DFT+U calculations?


1) E.g. in FeO, the calculation can converge to different metallic local minima and this is sensitive to the initial occupations (Hubbard_occ). In any case, to converge to the insulating ground state in FeO stating_ns_eigenvalue must be used.

2) Hubbard_occ could be useful to overcome one limitation of the pw.x code. Namely, currently +U cannot be applied to states that are fully empty. By setting Hubbard_occ to some small number allows to overcome this limitation (another option is to change the occupations in the pseudo by hand).


Maybe there are other cases when Hubbard_occ could be useful.


But if you want to converge to different local minima in magnetic systems, then it is better to use occupation matrix constraints (in the future versions of QE this should be made available).


Iurii


--
Dr. Iurii TIMROV
Senior Research Scientist
Theory and Simulation of Materials (THEOS)
Swiss Federal Institute of Technology Lausanne (EPFL)
CH-1015 Lausanne, Switzerland
+41 21 69 34 881
http://people.epfl.ch/265334
________________________________
From: Mahmoud Payami Shabestari <mpayami at aeoi.org.ir>
Sent: Tuesday, December 6, 2022 3:43:10 PM
To: Iurii TIMROV; Quantum ESPRESSO users Forum
Subject: Re: [QE-users] Hubbard_occ()

Dear Iurii,
As you suggested, I downloaded and compiled it from gitlab.
I did not see any changes in my expected results.
In fact, when I use the variable Hubbard_occ with different input values for a given system,
the sum of diagonal elements of the starting occ matrix correctly reproduces the given value of Hubbard_occ. However, in the selfconsistent stage, the occupation matrices converge to the same elements. In the examples of test-suite, the chosen values for that variable is a trivial value.
How can one benefit using this variable in DFT+U calculations?

Bests,
Mahmoud


I would try to download the latest QE version from Gitlab and try again. How do you benchmark whether the code behaves as expected or not? Do you have a reference with the older version of QE?

Iurii

--
Dr. Iurii TIMROV
Senior Research Scientist
Theory and Simulation of Materials (THEOS)
Swiss Federal Institute of Technology Lausanne (EPFL)
CH-1015 Lausanne, Switzerland
+41 21 69 34 881
http://people.epfl.ch/265334
________________________________
From: Mahmoud Payami Shabestari <mpayami at aeoi.org.ir>
Sent: Tuesday, December 6, 2022 4:22:32 AM
To: Iurii TIMROV; Quantum ESPRESSO users Forum
Subject: Re: [QE-users] Hubbard_occ()

Dear Iurii,
The errors mentioned in previous post was a "gcc" problem and solved; please ignore it.
I applied the bugfixes in the mentioned links, but nothing new results happened!
The fixes was all about the "-ve" and "+ve" values for Hubbard_occ.
One other question: I am not a professional user of gitlab, and I do not know how to apply the bugfixes on the fly by using something like "patch" command. Could anybody please help me in this respect?

Bests,
Mahmoud




https://gitlab.com/QEF/q-e/-/merge_requests/1976/diffs
https://gitlab.com/QEF/q-e/-/merge_requests/1973/diffs

Iurii

--
Dr. Iurii TIMROV
Senior Research Scientist
Theory and Simulation of Materials (THEOS)
Swiss Federal Institute of Technology Lausanne (EPFL)
CH-1015 Lausanne, Switzerland
+41 21 69 34 881
http://people.epfl.ch/265334
________________________________
From: Mahmoud Payami Shabestari <mpayami at aeoi.org.ir>
Sent: Monday, December 5, 2022 4:32:05 PM
To: Iurii TIMROV; Quantum ESPRESSO users Forum
Subject: Re: [QE-users] Hubbard_occ()

Dear Iurii,
Hi.
Thank you so much for your kind prompt response.
I used the development version of PW at gitlab, but encountered the following error message:

++++++++++++++++++++++++===
In file included from /usr/include/bits/floatn.h(119),
                 from /usr/include/stdio.h(406),
                 from copy.c(3):
/usr/include/bits/floatn-common.h(214): error: invalid combination of type specifiers
  typedef float _Float32;
                ^
+++++++++++++++++++++++=====

Could you please mention which files of 7.1 should be replaced from gitlab to fix the problem?

Thank you in advance.
Best regards,
Mahmoud




From: Iurii TIMROV via users <users at lists.quantum-espresso.org>
To: Mahmoud Payami Shabestari <mpayami at aeoi.org.ir>, "Quantum ESPRESSO users Forum" <users at lists.quantum-espresso.org>
Date: Mon, 5 Dec 2022 14:50:14 +0000
Subject: Re: [QE-users] Hubbard_occ()

> I am testing the "Hubbard_occ(ityp,i)" variable in QE-7.1 to override reading the occupation from pseudopotential. It seems that it is not functioning yet?! I get the same results for different values of Hubbard_occ.

There is a bug in QE-7.1. It has been fixed in the development version on Gitlab about a month ago.

Iurii

--
Dr. Iurii TIMROV
Senior Research Scientist
Theory and Simulation of Materials (THEOS)
Swiss Federal Institute of Technology Lausanne (EPFL)
CH-1015 Lausanne, Switzerland
+41 21 69 34 881
http://people.epfl.ch/265334
________________________________
From: users <users-bounces at lists.quantum-espresso.org> on behalf of Mahmoud Payami Shabestari via users <users at lists.quantum-espresso.org>
Sent: Monday, December 5, 2022 3:48:03 PM
To: users at lists.quantum-espresso.org
Subject: [QE-users] Hubbard_occ()

Dear All,
I am testing the "Hubbard_occ(ityp,i)" variable in QE-7.1 to override reading the occupation from pseudopotential. It seems that it is not functioning yet?! I get the same results for different values of Hubbard_occ.
Any comment is highly appreciated.

Bests,
Mahmoud Payami
NSTRI, AEOI, Tehran, Iran

Email: mpayami at aeoi.org.ir
Phone: +98 (0)21 82066504
--------------------------------------------------------

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quantum-espresso.org/pipermail/users/attachments/20221206/3d671a73/attachment.html>


More information about the users mailing list