[Q-e-developers] problem in DFT+U: muted U_projection_type

Davide Ceresoli davide.ceresoli at cnr.it
Thu May 25 11:22:19 CEST 2017


I'll do it now, thank Andrea for pointing out the issue.

D.


On 05/25/2017 11:20 AM, Andrea Ferretti wrote:
>
>
> I've done the commit to the main trunk, though I was rejected when attempting to
> commit on GIPAW (I attach a patch with the changes toi be applied).
>
> concerning the tests, we can surely add one of those that were showing the
> problem (perhaps made a bit more general eg including kpts)
>
> Andrea
>
>> By the way: variable U_projection_type is never tested anywhere. With
>> a test this wouldn't have happened (or wouldn't have gone unnoticed
>> for so long)
>>
>> Paolo
>>
>> On Thu, May 25, 2017 at 10:55 AM, Paolo Giannozzi
>> <paolo.giannozzi at uniud.it> wrote:
>>> Oops ... I think I forgot that piece of code when I deleted "npw" as
>>> global variable almost everywhere. The patch is perfect. If you commit
>>> please also add a line in Doc/release-notes.
>>>
>>> Paolo
>>>
>>> On Thu, May 25, 2017 at 10:30 AM, Andrea Ferretti
>>> <andrea.ferretti at nano.cnr.it> wrote:
>>>>
>>>> Dear All,
>>>>
>>>> while looking at some tests using DFT+U, Mike and I found an issue related
>>>> to the input variable U_projection_type:
>>>>
>>>> in a situation where the overlap of U-atomic orbitals is quite large, we
>>>> find no difference in the pw output when setting
>>>>
>>>> U_projection_type = "atomic"        # no orthonormalization
>>>> U_projection_type = "ortho-atomic"  # orthogonalization and normaliz
>>>> U_projection_type = "norm-atomic"   # no orthogonalization, just normaliz
>>>>
>>>> except for an output message saying that the variable was read consistenly.
>>>>
>>>> One can also see that the occupations on the Hubbard manifold sum to a
>>>> number of electrons larger that the actual N, suggesting that the basis is
>>>> either not orthogonal or not normalized or both.
>>>>
>>>> The problem is present since qe-6.0 (espresso 5.3.0 works fine with me)
>>>>
>>>> After a bit of investigation, we found that the problem is in
>>>> PW/src/orthoatwfc.f90, where, in ortho_swfc
>>>>
>>>> npw is used from a module but apparently is not initialized (or init to 0)
>>>> resulting in zero overlap matrix (collinear case) and basically leaving
>>>> unchanged the atomic vectors which were to be orthogonalized/normalized.
>>>> (it is also funny that pw.x, compiled with intel 12, didn't complain about a
>>>> zero ovp while taking ovp^-1/2)
>>>>
>>>> ----
>>>>
>>>> the problem should be of little impact for reasonably localized (and
>>>> normalized) d/f states, which do not change too much upon lowding ortho
>>>> procedure, while more evident on p and s states (though luckily less
>>>> relevant physically)
>>>>
>>>> ----
>>>>
>>>> In order to fix the problem we have slightly changed the interface of
>>>> ortho_swfc passing npw explicitly (similarly yo what is done for init_us_2
>>>> or calbec)
>>>>
>>>> attached the fixed version and a patch showing the changes.
>>>>
>>>> ortho_swfc is also used in a couple of other places (Xspectra and GIPAW),
>>>> which need to be changed accordingly (not a big deal apparently)
>>>>
>>>> If there are no strong opinions against, I'll commit (the only other option
>>>> I see is to pass the info via modules, which I don't like too much, getting
>>>> the code flow more implicit and entangled)
>>>>
>>>> Take care
>>>> Andrea
>>>>
>>>>
>>>>
>>>> --
>>>> Andrea Ferretti, PhD
>>>> S3 Center, Istituto Nanoscienze, CNR
>>>> via Campi 213/A, 41125, Modena, Italy
>>>> Tel: +39 059 2055322;  Skype: andrea_ferretti
>>>> URL: http://www.nano.cnr.it
>>>>
>>>> _______________________________________________
>>>> Q-e-developers mailing list
>>>> Q-e-developers at qe-forge.org
>>>> http://qe-forge.org/mailman/listinfo/q-e-developers
>>>>
>>>
>>>
>>>
>>> --
>>> Paolo Giannozzi, Dip. Scienze Matematiche Informatiche e Fisiche,
>>> Univ. Udine, via delle Scienze 208, 33100 Udine, Italy
>>> Phone +39-0432-558216, fax +39-0432-558222
>>
>>
>>
>>
>
>
>
> _______________________________________________
> Q-e-developers mailing list
> Q-e-developers at qe-forge.org
> http://qe-forge.org/mailman/listinfo/q-e-developers
>

-- 
+--------------------------------------------------------------+
   Davide Ceresoli
   CNR Institute of Molecular Science and Technology (CNR-ISTM)
   c/o University of Milan, via Golgi 19, 20133 Milan, Italy
   Email: davide.ceresoli at cnr.it
   Phone: +39-02-50314276, +39-347-1001570 (mobile)
   Skype: dceresoli
   Website: http://sites.google.com/site/dceresoli/
+--------------------------------------------------------------+



More information about the developers mailing list