[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