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

Joe josepht at chips.ncsu.edu
Fri Mar 4 00:18:44 CET 2011


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






More information about the users mailing list