[Pw_forum] PP generation with ld1.x (transition metals with semicore states)

Andrea Dal Corso dalcorso at sissa.it
Sat Mar 5 10:01:19 CET 2011


On Fri, 2011-03-04 at 15:49 -0500, Joe wrote:
> Hello,
> 
> Thanks for pointing out the updated beta-PP library!  I just tested the 
> listed Hf pseudopotential - it reproduces AE states with different 5d 
> occupancy much more closely than the (non-semi-core) USPP I had been 
> testing.
> 
> Some comments.  First, the usage of the augmentation function flags is 
> novel to me - is the called directive similar in spirit to the procedure 
> used in Vanderbilt's code (called by 'nfix') to constrain the q-function 
> pseudization so as to overcome (negative charge) problems during the 
> descreening step?
> 

It is a pseudization of the Q functions as described for instance in 

Phys. Rev. B 47, 10142 (1993).




> There are a few more fundamental (?) aspects I am also trying to 
> understand.  For example, the (slightly modified) USPP input file is:
> 
> &input
>     title='Hf',
>     zed=72.0,
>     rel=1,
>     config='[Xe] 4f14 5d2.0 6s2 6p0',
>     iswitch=3,
>     dft='PBE'
> /
> &inputp
>     pseudotype=3,
>     file_pseudopw='Hf.srl-pbe-rrkjus.UPF',
>     author='ADC',
>     lloc=-1,
>     rcloc=2.5,
>     which_augfun='PSQ',
>     rmatch_augfun=1.1,
>     nlcc=.true.,
>     rcore=1.2,
>     tm=.true.
>   /
> 6
> 5S  1  0  2.00  0.00  1.50  1.60  0.0
> 6S  2  0  2.00  0.00  1.10  1.60  0.0
> 5P  2  1  6.00  0.00  1.50  1.60  0.0
> 6P  3  1  0.00  0.00  1.30  1.60  0.0
> 5D  3  2  2.00  0.00  1.60  1.70  0.0
> 5D  3  2 -2.00  0.30  1.60  1.70  0.0
>   /
> ! &test
> !    nconf=8,
> !    file_pseudo='Hf.srl-pbe-rrkjus.UPF'
> !    ecutmin=20.0, ecutmax=50.0, decut=10.0
> !    configts(1)='5s2 5p6 5d2 6s2 6p0'
> !    configts(2)='5s2 5p6 5d1 6s2 6p0'
> !    configts(3)='5s2 5p6 5d0 6s2 6p0'
> !    configts(4)='5s2 5p6 5d2 6s1 6p0'
> !    configts(5)='5s2 5p6 5d2 6s0 6p0'
> !    configts(6)='5s2 5p6 5d1 6s0 6p0'
> !    configts(7)='5s2 5p6 5d0 6s0 6p0'
> !    configts(8)='5s2 5p6 5d1 6s1 6p0'
> ! /
> 
> and I was wondering ("at risk of appearing a fool, in the hope of being 
> less of one")...why (hopefully aside from "because it works"...but with 
> PP generation, I can appreciate that sometimes that is as far as things 
> go) do the 6S and 6P states have lower cutoffs compared to the 5S and 5P 
> states (given that the localizations of these states follow the opposite 
> trend)?
> 

You are right I should clean up these inputs. However with the option
PSQ the norm conserving radius is not used, so provided that it is
smaller than the US radius it is irrelevant.

Andrea


> Anyway, I will report the results of tests using this semi-core USPP in 
> bulk systems.  Thanks again!
> 
> Joseph Turnbull
> NC State University
> 
> 
> On 03/04/2011 02:56 AM, Andrea Dal Corso wrote:
> > Did you try the Hf PP in pslibrary?
> >
> > http://qe-forge.org/projects/pslibrary/
> >
> > These are still untested PPs, and it would be useful to have feedback
> > from the users.
> > &input
> >     title='Hf',
> >     zed=72.0,
> >     rel=1,
> >     config='[Xe] 4f14 5d2.0 6s2 6p0',
> >     iswitch=3,
> >     dft='PBE'
> >   /
> >   &inputp
> >     pseudotype=3,
> >     file_pseudopw='Hf.srl-pbe-rrkjus.UPF',
> >     author='ADC',
> >     lloc=-1,
> >     rcloc=2.5,
> >     which_augfun='PSQ',
> >     rmatch_augfun=1.1,
> >     nlcc=.true.,
> >     rcore=1.2,
> >     tm=.true.
> >   /
> > 6
> > 5S  1  0  2.00  0.00  1.50  1.60  0.0
> > 6S  2  0  2.00  0.00  1.10  1.60  0.0
> > 5P  2  1  6.00  0.00  1.50  1.60  0.0
> > 6P  3  1  0.00  0.00  1.30  2.10  0.0
> > 5D  3  2  2.00  0.00  1.60  1.70  0.0
> > 5D  3  2 -2.00  0.30  1.60  1.70  0.0
> >   /
> > !&test
> > !    nconf=8,
> > !    file_pseudo='Hf.srl-pbe-rrkjus.UPF'
> > !    ecutmin=20.0, ecutmax=50.0, decut=10.0
> > !    configts(1)='5s2 5p6 5d2 6s2 6p0'
> > !    configts(2)='5s2 5p6 5d1 6s2 6p0'
> > !    configts(3)='5s2 5p6 5d0 6s2 6p0'
> > !    configts(4)='5s2 5p6 5d2 6s1 6p0'
> > !    configts(5)='5s2 5p6 5d2 6s0 6p0'
> > !    configts(6)='5s2 5p6 5d1 6s0 6p0'
> > !    configts(7)='5s2 5p6 5d0 6s0 6p0'
> > !    configts(8)='5s2 5p6 5d1 6s1 6p0'
> > ! /
> >
> > Andrea
> >
> > On Thu, 2011-03-03 at 18:18 -0500, Joe wrote:
> >> Hello everyone,
> >>
> >> Using ld1.x, I am trying to generate pseudopotentials for elements such
> >> as Hf, both scalar relativistic and fully relativistic.  I have followed
> >> from the examples given in atomic_doc, and have been making ample use of
> >> Paolo Giannozzi's July 9th 2010 tutorial, "Notes on pseudopotential
> >> generation" (which is the version with full worked examples for Ti).
> >> The information provided by this arsenal as been sufficient to generate
> >> and test new USPP/NCPP for Si, C, N, O, and S, as well as "naive" USPP
> >> for Hf.  Several of the issues I am reporting below have been mentioned
> >> within the pw_forum, and when applicable, I have tried (often with
> >> success) the prescriptions offered.
> >>
> >> First, let me share what I have "working".  Below is the input file for
> >> a scalar relativistic USPP for Hf that does not contain semicore
> >> states.  I have tested it for bulk hafnia and it reproduces published
> >> band structure data at fixed cell parameters and fixed atomic
> >> coordinates, but gives optimized structures at variance with those
> >> (using PBE-based PP) reported in the literature (for example, following
> >> from the review given in the 2008 NJP paper by Beltran, Munoz, and
> >> Hafner - NJP 10 063031); it agrees most closely with the NCPP PBE
> >> structures generated by Zhao and Vanderbilt in PRB 65 233106, except for
> >> the angle \beta, which is similar to that reported in PRB 65 174117.
> >> The basic summary is that the cell volume is larger than anything published.
> >>
> >> &input
> >>       title='Hf',
> >>       zed=72,
> >>       rel=1,
> >>       iswitch=3,
> >>       config='[Xe] 4f14.0 5d2.0 6s2.0 6p0.0',
> >>       dft='PBE',
> >>    /
> >> &inputp
> >>      lloc=0,
> >>      pseudotype=3,
> >>      file_pseudopw='Hf.srl-pbe-rrkjus.UPF',
> >>      nlcc=.true.,
> >>      rcore=0.9,
> >>      author='test',
> >>      rho0=0.0001,
> >>    /
> >> 4
> >> 6P  2  1  0.00  0.00  2.70  2.70  1
> >> 5D  3  2  2.00  0.00  1.90  2.30  1
> >> 5D  3  2  0.00 -0.18  1.90  2.30  1
> >> 6S  1  0  2.00  0.00  2.50  2.50  1
> >>    /
> >> &test
> >>       nconf=5
> >>       file_pseudo='Hf.srl-pbe-rrkjus.UPF'
> >>       ecutmin=20.0, ecutmax=50.0, decut=10.0
> >>       configts(1)='5d2.0 6s2.0 6p0.0'
> >>       configts(2)='5d1.0 6s2.0 6p0.0'
> >>       configts(3)='5d1.0 6s1.0 6p0.0'
> >>       configts(4)='5d0.0 6s1.0 6p0.0'
> >>       configts(5)='5d0.0 6s0.0 6p0.0'
> >>    /
> >>
> >> Note that the test results for different charged (d-depleted) states of
> >> Hf are pretty bad.  For those interested in using this as a starting
> >> point, an analogous fully relativistic USPP can be generated using the
> >> input file:
> >>
> >> &input
> >>       title='Hf',
> >>       zed=72,
> >>       rel=2,
> >>       iswitch=3,
> >>       config='[Xe] 4f14.0 5d2.0 6s2.0 6p0.0',
> >>       dft='PBE',
> >> /
> >> &inputp
> >>      lloc=0,
> >>      pseudotype=3,
> >>      file_pseudopw='Hf.rel-pbe-rrkjus.UPF',
> >>      nlcc=.true.,
> >>      rcore=0.9,
> >>      author='test',
> >>    /
> >> 7
> >> 6P  2  1  0.00  0.00  2.70  2.70  0.5
> >> 6P  2  1  0.00  0.00  2.70  2.70  1.5
> >> 5D  3  2  2.00  0.00  1.90  2.30  1.5
> >> 5D  3  2  0.00 -0.18  1.90  2.30  1.5
> >> 5D  3  2  0.00  0.00  1.90  2.30  2.5
> >> 5D  3  2  0.00 -0.18  1.90  2.30  2.5
> >> 6S  1  0  2.00  0.00  2.50  2.50  0.5
> >>    /
> >> &test
> >>       nconf=3
> >>       file_pseudo='Hf.rel-pbe-rrkjus.UPF'
> >>       ecutmin=20.0, ecutmax=80.0, decut=10.0
> >>       configts(1)='5d2.0 6s2.0'
> >>       configts(2)='5d2.0 6s1.0 6p1.0'
> >>       configts(3)='5d1.0 6s2.0 6p0.0'
> >>    /
> >>
> >> The structural discrepancies persist for different oxygen USPP,
> >> different optimization procedures, and different sets of parameters
> >> (charge density cutoffs, convergence criteria, etc.).
> >>
> >> I am now trying to check if the structural properties can be improved by
> >> the inclusion of semicore states, and am starting with the "simplest"
> >> case, that of a scalar relativistic NCPP with explicit inclusion of 5S
> >> and 5P.  After starting with the fewest number of projectors (one each
> >> for 5S, 5P, and 5D), and running into all kinds of problems (anyone who
> >> runs ld1.x knows about the kinds of mysterious errors that are
> >> generated, and the equally mysterious modifications which result in said
> >> errors disappearing), I searched the pw_forum and found the following
> >> thread:
> >>
> >> http://www.democritos.it/pipermail/pw_forum/2009-July/013453.html
> >>
> >> Following from this (and making the implicit corrections to the provided
> >> files in order to render them processable, such as modifying the 2nd
> >> column in the definition of the projectors), I have been working off of
> >> the following NCPP input file,
> >>
> >> &input
> >>       title='Hf',
> >>       zed=72,
> >>       rel=1,
> >>       iswitch=3,
> >>       config='[Xe] 4f14 5d2 6s2 6p0',
> >>       dft='PBE',
> >>    /
> >> &inputp
> >>      lloc=0,
> >>      pseudotype=2,
> >>      file_pseudopw='Hf.semicore.srl-pbe-rrkjus.UPF',
> >>      nlcc=.f.,
> >>      author='test',
> >>      rho0=0.01,
> >>    /
> >> 5
> >> 5P  2  1  6.00  0.00  1.50  1.50  1
> >> 5P  2  1  0.00 -1.00  1.50  1.50  1
> >> 5D  3  2  2.00  0.00  1.90  1.90  1
> >> 5D  3  2  0.00 -0.20  1.90  1.90  1
> >> 5S  1  0  2.00  0.00  1.20  1.20  1
> >>    /
> >> &test
> >>       nconf=1
> >>       file_pseudo='Hf.semicore.srl-pbe-rrkjus.UPF'
> >>       ecutmin=20.0, ecutmax=50.0, decut=10.0
> >>       configts(1)='5s2 5p6 5d2 6s2 6p0',
> >>    /
> >>
> >> and have been varying the energy for the empty 5P projector, changing
> >> lloc (and rcloc when applicable), toying with rho0, and fiddling with
> >> the cutoffs, to no avail.  The latest error is the not-so-helpful:
> >>
> >>    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> >>        from run_pseudo : error #         1
> >>        Errors in PS-KS equation
> >>    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> >>
> >> Changing parameters merely changes the error, it seems.  I know this is
> >> a highly-specific cooking problem, but if anyone has any suggestions on
> >> how to proceed, I would be extremely grateful.  With some help,
> >> hopefully I can generate a good, tested set of USPPs for Hf and fill in
> >> that blank on PWSCF's pseudopotential page!
> >>
> >> Joseph Turnbull
> >> NC State University
> >>
> >>
> >>
> >> _______________________________________________
> >> Pw_forum mailing list
> >> Pw_forum at pwscf.org
> >> http://www.democritos.it/mailman/listinfo/pw_forum
> 





More information about the users mailing list