1
% Manual for the ATOM program
3
% To generate the printed version:
6
% makeindex manual (Optional if you have a current manual.ind)
11
\documentclass[11pt]{article}
13
%\usepackage{graphicx}
27
\newcommand{\gpfig}[2][1.0]{
28
\includegraphics[angle=-90,width=#1\textwidth] {#2}
31
\newcommand{\singlefig}[2][1.0]{
41
% --------------------------------------------------------------
49
{\Huge {\bf ATOM User Manual}}
53
{\Large {\bf Version 3.3.2, 29 May 2014}}
57
{\Large Alberto Garc\'{\i}a \\
66
% --------------------------------------------------------------
73
{\sc ATOM} is the name of a program originally written (circa 1982) by
74
Sverre Froyen at the University of California at Berkeley, modified
75
starting in 1990 by Norman Troullier and Jose Luis Martins at the
76
University of Minnesota, and currently maintained by Alberto Garcia
77
(wdpgaara@lg.ehu.es), who added some features and made substantial
78
structural changes to the April 1990 (5.0) Minnesota version while at
79
Berkeley and elsewhere.
81
Jose Luis Martins is maintaining his own version of the code:
82
\begin{verbatim}{\tt http://bohr.inesc-mn.pt/~jlm/pseudo.html\end{verbatim}
85
The program's basic capabilities are:
88
\item All-electron DFT atomic calculations for arbitrary electronic
91
\item Generation of ab-initio pseudopotentials (several flavors).
93
\item Atomic calculations in which the effect of the core is represented
94
by a previously generated pseudopotential. These are useful to make
95
sure that the pseudopotential correctly reproduces the all-electron
96
results for the valence complex.
102
\section{A PRIMER ON AB-INITIO PSEUDOPOTENTIALS}
104
Time constraints prevent the inclusion of this section in this first
105
release of the {\sc ATOM} manual. But, in this case more than ever,
106
there is a lot to be gained from reading the original literature...
107
Here are some basic references:
110
\item Original idea of the ab-initio pseudopotential:
112
Kerker, J. Phys. C 13, L189-94 (1980)\\
113
Hamann, Schluter, Chiang, Phys. Rev. Lett. 43, 1494 (1979)
115
\item More on HSC scheme:
117
Bachelet, Schluter, Phys. Rev. B 25, 2103 (1982)\\
118
Bachelet, Hamann, Schluter, Phys. Rev. B 26, 4199 (1982)
120
\item Troullier-Martins elaboration of Kerker method:
122
Troullier, Martins, Phys. Rev. B 43, 1993 (1991)\\
123
Troullier, Martins, Phys. Rev. B 43, 8861 (1991)
125
\item Core corrections:
127
Louie, Froyen, Cohen, Phys. Rev. B 26, 1738 (1982)
129
\item The full picture of plane-wave pseudopotential ab-initio calculations:
131
W. E. Pickett, ``Pseudopotential Methods in Condensed Matter
132
Applications'', Computer Physics Reports 9, 115 (1989)
134
M. C. Payne, M. P. Teter, D. C. Allan, T. A. Arias and
135
J. D. Joannopoulos, ``Iterative minimization techniques for ab initio
136
total-energy calculations: molecular dynamics and conjugate
137
gradients'', Rev. Mod. Phys. 64, 1045, (1992)
139
Also, the book by Richard Martin
140
``Electronic Structure: Basic Theory and Practical Methods''
141
(Cambridge University Press) has a chapter on pseudopotentials.
143
\item Use in {\sc SIESTA}:
145
J.M. Soler, E. Artacho, J.D. Gale, A. Garcia, J. Junquera, P. Ordejon,
146
D. Sanchez-Portal, ``The SIESTA method for ab initio O(N)
147
materials simulation'', Jour. Phys.: Condens. Matter, 14, 2745-2779
152
\section{COMPILING THE PROGRAM}
154
(Please note that {\sc ATOM} now depends on the SiestaXC and FoX libraries
155
for its correct compilation. It is not currently possible to have
156
a ``standalone'' version independent of the rest of the Siesta package.)
158
The Fortran compiler and auxiliary file settings are specified in the
159
appropriate {\tt arch.make} file in the Siesta compilation directory.
161
Just type {\tt make} in the main {\sc ATOM} source directory ({\tt
162
Pseudo/atom}). After a short while you will have the executable (called
163
{\tt atm}) in that same directory. The program should work for any atom
164
without recompilation.
166
Directory {\tt Tutorial} in the source distribution contains a set of
167
scripts to automate the process of running {\sc ATOM} and to analyze
168
the results. The file-manipulation details involved in each of the
169
basic functions of all-electron calculations, generation of
170
pseudopotentials, and testing of the pseudopotentias, are taken care
171
of by {\tt ae.sh}, {\tt pg.sh}, and {\tt pt.sh}, respectively, all in
172
the {\tt Tutorial/Utils} directory. These
173
scripts need to know where the {\sc ATOM} executable {\tt atm}
174
is. If you have moved the {\tt Tutorial} directory around, or you do
175
not have the source, the default location might not be right for you.
176
The easiest way to fix it is to define an environmental
177
variable {\tt ATOM\_PROGRAM}. Assuming {\tt atm} is in {\tt
178
/somedir/somewhere}, you would do:
181
ATOM_PROGRAM=/somedir/somewhere/atm ; export ATOM_PROGRAM # sh-derived shells
182
setenv ATOM_PROGRAM /somedir/somewhere/atm # csh-derived shells
186
Due to the shortcommings of the basic (GNUplot) plotting package used in the
187
Tutorial section, it is also necessary to copy some scripts from a
188
central repository. Again, if the default does not work for you,
189
define the {\tt ATOM\_UTILS\_DIR} variable:
192
ATOM_UTILS_DIR=/somewhere ; export ATOM_UTILS_DIR # sh-derived shells
193
setenv ATOM_UTILS_DIR /somewhere # csh-derived shells
197
\section{USING THE ATOM PROGRAM}
200
\subsection{All-electron calculations}
202
Assume we want to find the orbital eigenvalues, total energy, and/or
203
charge density of Si in its ground state. (You should now go to the
204
{\tt Tutorial/All\_electron} directory and try the following.) Our
205
input file is named {\tt si.ae.inp} and contains the lines (see
206
Sect.~\ref{sec:inputfile} for more details):
209
ae Si ground state all-electron
216
#2345678901234567890123456789012345678901234567890 Ruler
219
We can run the calculation by using the {\tt ae.sh} script. Following
220
the layout of the {\tt Tutorial} directory, we will assume that the
221
script is in the {\tt Tutorial/Utils} directory. We run the
222
script and go into the directory created for the calculation (named
223
as the input file without the extension {\tt .inp}):
226
$ sh ../Utils/ae.sh si.ae.inp
227
==> Output data in directory si.ae
230
AECHARGE CHARGE RHO charge.gplot vcharge.gps
231
AEWFNR0 INP ae.gplot charge.gps vspin.gplot
232
AEWFNR1 OUT ae.gps vcharge.gplot vspin.gps
236
We see some data files (those in all caps) and a few GNUPLOT plotting
237
scripts\footnote{GNUPLOT is not a publication-quality package, and
238
suffers from serious shortcomings, but it is free, and installed
239
almost everywhere. Hence we have chosen it as the lowest-common
240
denominator for basic plotting} .
245
\item {\tt INP:} A copy of the input file for the calculation.
246
\item {\tt OUT:} Contains detailed information about the run.
250
\item {\tt AECHARGE:} Contains in four
251
columns values of $r$, the ``up'' and ``down'' parts of the {\sl
252
total} charge density, and the total core charge density (the charges
253
multiplied by $4\pi r^2$). {\tt CHARGE} is exactly identical and is
254
generated for backwards compatibility.
256
\item {\tt RHO:} Like {\tt CHARGE}, but without the $4\pi r^2$ factor.
257
\item {\tt AEWFNR0...AEWFNR3:} All-electron valence wavefunctions as function
258
of radius, for $s$, $p$, $d$, and $f$ valence orbitals (0, 1, 2, 3,
259
respectively --- some channels might not be available). They include
260
a factor of $r$, the $s$ orbitals also going to zero at the origin.
264
It is interesting to peruse the {\tt OUT} file.
265
In particular, it lists the orbital eigenvalues (in Rydbergs, as
266
every other energy in the program):
269
nl s occ eigenvalue kinetic energy pot energy
271
1s 0.0 2.0000 -130.36911241 183.01377616 -378.73491463
272
2s 0.0 2.0000 -10.14892694 25.89954259 -71.62102169
273
2p 0.0 6.0000 -7.02876268 24.42537874 -68.74331203
274
3s 0.0 2.0000 -0.79662742 3.23745215 -17.68692611
275
3p 0.0 2.0000 -0.30705179 2.06135782 -13.62572515
278
(For a relativistic or spin-polarized calculation, there would be
279
``up'' and ``down'' flags in the {\tt s} column above.)
282
The {\bf plotting} scripts come in two flavors: {\tt .gplot} for
283
terminal use (default X11, use {\tt gnuplot -persist}), and {\tt .gps}
284
for postscript output.
286
For all-electron calculations, the relevant scripts (without {\tt
287
.gplot} or {\tt .gps} extensions) are:
290
\item {\tt charge:} Charge density (separated core and valence
291
contributions, multiplied by $4\pi r^2$).
292
\item {\tt vcharge:} Valence charge density (same normalization).
293
\item {\tt ae:} Orbital valence wavefunctions (radial part multiplied by $r$)
296
\subsection{Pseudopotential generation}
298
(You should now go to the {\tt Tutorial/Si} directory and try the
299
following.) We are going to generate a pseudopotential for Si, using
300
the Troullier-Martins scheme. The calculation is relativistic and we
301
use the LDA (Ceperley-Alder flavor). The input file is named {\tt
302
Si.tm2.inp} and contains the lines (see Sect.~\ref{sec:inputfile} for more
307
# Pseudopotential generation for Silicon
308
# pg: simple generation
311
tm2 3.0 # PS flavor, logder R
312
n=Si c=car # Symbol, XC flavor,{ |r|s}
313
0.0 0.0 0.0 0.0 0.0 0.0
314
3 4 # norbs_core, norbs_valence
319
1.90 1.90 1.90 1.90 0.00 0.00
322
# rc(s) rc(p) rc(d) rc(f) rcore_flag rcore
324
#23456789012345678901234567890123456789012345678901234567890
327
Note the two extra lines with respect to an all-electron calculation.
328
The pseudopotential core radii for all channels are 1.90 bohrs. Even
329
though they are nominally empty in the ground state, we include the
330
$3d$ and $4f$ states in order to generate the corresponding
333
We can run the calculation by using the {\tt pg.sh} script. Following
334
the layout of the {\tt Tutorial} directory, we will assume that the
335
script is in the {\tt Tutorial/Utils} directory. We run the
336
script and go into the directory created for the calculation (named
337
as the input file without the extension {\tt .inp}):
340
$ sh ../../Utils/pg.sh Si.tm2.inp
341
==> Output data in directory Si.tm2
342
==> Pseudopotential in Si.tm2.vps and Si.tm2.psf
344
$ ls [A-Z]* # show only the data filesAE
345
CHARGE AEWFNR3 PSLOGD3 PSPOTR3 PSWFNR3
346
AELOGD0 CHARGE PSPOTQ0 PSWFNQ0 RHO
347
AELOGD1 INP PSPOTQ1 PSWFNQ1 SCRPSPOTR0
348
AELOGD2 OUT PSPOTQ2 PSWFNQ2 SCRPSPOTR1
349
AELOGD3 PSCHARGE PSPOTQ3 PSWFNQ3 SCRPSPOTR2
350
AEWFNR0 PSLOGD0 PSPOTR0 PSWFNR0 SCRPSPOTR3
351
AEWFNR1 PSLOGD1 PSPOTR1 PSWFNR1 VPSFMT
352
AEWFNR2 PSLOGD2 PSPOTR2 PSWFNR2 VPSOUT
355
There are quite a few data files now. The new ones are:
358
\item {\tt PSCHARGE:} Contains in four
359
columns values of $r$, the ``up'' and ``down'' parts of the {\sl
360
pseudo valence} charge density, and the pseudo core charge density
361
(see Sect.~\ref{sec:cc}) (the charges
362
multiplied by $4\pi r^2$).
364
\item {\tt PSWFNR0...PSWFNR3:} Valence pseudowavefunctions as function
365
of radius, for $s$, $p$, $d$, and $f$ valence orbitals (0, 1, 2, 3,
366
respectively --- some channels might not be available). They include
367
a factor of $r$, the $s$ orbitals also going to zero at the origin.
369
\item {\tt PSPOTR0...PSPOTR3:} Ionic pseudopotentials (i.e. unscreened)
370
as a function of $r$, for $s$, $p$, $d$, and $f$ channels (0, 1, 2, 3,
371
respectively --- some channels might not be available). The last
372
column is $-2Z_{ps}/r$, that is, the Coulomb potential of the pseudo
373
atom. All the ionic pseudopotentials tend to this Coulomb tail for $r$
374
beyond the range of the core electrons.
376
\item {\tt SCRPSPOTR0...SCRPSPOTR3:} Screened pseudopotentials
377
as a function of $r$, for $s$, $p$, $d$, and $f$ channels (0, 1, 2, 3,
378
respectively --- some channels might not be available).
379
They tend to $-2Z_{ion}/r$ for large $r$, where $Z_{ion}$ is the
380
global charge of the reference configuration used in pseudopotential generation.
382
\item {\tt PSPOTQ0...PSPOTQ3:} Fourier transform $V(q)$ (times
383
$q^2/Z_{ps}$) of the ionic pseudopotentials as a function of $q$ (in
384
bohr$^{-1}$), for $s$, $p$, $d$, and $f$ channels (0, 1, 2, 3,
385
respectively --- some channels might not be available).
387
\item {\tt PSWFNQ0...PSWFNQ3:} Fourier transform $\Psi(q)$ of the
388
valence pseudowavefunctions as a function of $q$ (in
389
bohr$^{-1}$), for $s$, $p$, $d$, and $f$ channels (0, 1, 2, 3,
390
respectively --- some channels might not be available).
392
\item {\tt VPSOUT, VPSFMT:} Files (formatted and unformatted)
393
containing pseudopotential information. They are used for {\it
394
ab-initio} codes such as {\sc SIESTA} and {\sc PW}. Copies of these
395
files are deposited in the top directory after the run.
399
The {\tt OUT} file has two sections, one for the all-electron (AE) run, and
400
another for the pseudopotential (PS) generation itself. It is instructive to
401
compare the AE and PS eigenvalues. Simply do
405
ATM3 12-JUL-02 Silicon
406
3s 0.5 2.0000 -0.79937161 0.00000000 -17.74263363
407
3p -0.5 0.6667 -0.30807129 0.00000000 -13.66178958
408
3p 0.5 1.3333 -0.30567134 0.00000000 -13.60785822
409
3d -0.5 0.0000 0.00000000 0.00000000 -0.27407047
410
3d 0.5 0.0000 0.00000000 0.00000000 -0.27407047
411
4f -0.5 0.0000 0.00000000 0.00000000 -0.26482365
412
4f 0.5 0.0000 0.00000000 0.00000000 -0.26482365
413
---------------------------- &v
414
3s 0.5 2.0000 -0.79936061 0.50555315 -3.74113059
415
3p -0.5 0.6667 -0.30804995 0.77243805 -3.26356669
416
3p 0.5 1.3333 -0.30565760 0.76702460 -3.25197500
417
3d -0.5 0.0000 0.00000000 0.00140505 -0.07847269
418
3d 0.5 0.0000 0.00000000 0.00140505 -0.07847269
419
4f -0.5 0.0000 0.00000000 0.00243411 -0.07586534
420
4f 0.5 0.0000 0.00000000 0.00243411 -0.07586534
421
---------------------------- &v
424
(The AE and PS eigenvalues are not {\sl exactly} identical because the
425
pseudopotentials are changed slightly to make them approach their
428
The relevant plotting scripts (without {\tt .gplot} or {\tt .gps}
432
\item {\tt charge:} It compares the AE and PS charge densities.
433
\item {\tt pseudo:} A multi-page plot showing, on one page/window per
436
\item The AE and PS wavefunctions
437
\item The AE and PS logarithmic derivatives.
438
\item The real-space pseudopotential
439
\item The Fourier-transformed pseudopotential (times $q^2/Z_{ps}$)
441
\item {\tt pots:} All the real-space pseudopotentials.
442
\item {\tt scrpots:} Comparison of the screened and unscreened
446
\subsubsection{Core Corrections}
448
The program can generate pseudopotentials with the non-linear
449
exchange-correlation correction proposed in S. G. Louie, S. Froyen,
450
and M. L. Cohen, Phys. Rev. B 26, 1738 (1982).
452
In the traditional approach (which is the default for LDA
453
calculations), the pseudocore charge density equals the charge density
454
outside a given radius $r_{pc}$, and has the smooth form
456
\rho_{pc}(r) = A r \sin(b r)
458
inside that radius. A smooth matching is provided with suitable $A$
459
and $b$ parameters calculated by the program.
461
A new scheme has been implemented to fix some problems in the generation
462
of GGA pseudopotentials. The smooth function is now
464
\rho_{pc}(r) = r^2 \exp{(a + b r^2 +c r^4)}
466
and derivatives up to the second are continuous at $r_{pc}$.
468
To use core corrections in the pseudopotential generation
469
the jobcode in the first line should be {\tt pe} instead of {\tt pg}.
471
The radius $r_{pc}$ should be given in the sixth slot in the last
472
input line (see above). If it is negative or zero (or blank), the
473
radius is then computed using the fifth number in that line ({\tt
474
rcore\_flag}, see the example input file above)
475
and the following criterion: at $r_{pc}$ the core charge density
476
equals {\tt rcore\_flag}*(valence charge density).
477
It is {\it highly recommended} to set an explicit value for the pseudocore
478
radius $r_{pc}$, rather than letting the program provide a default.
480
If {\tt rcore\_flag} is input as negative, the full core charge is used.
481
If {\tt rcore\_flag} is input as zero, it is set equal to one, which will be
482
thus the default if {\tt pe} is given but no numbers are given for these
485
The output file contains the radius used and the $A$ ($a$) and $b$ (and $c$)
486
parameters used for the matching. The {\tt VPSOUT} and {\tt VPSFMT}
487
files will contain the pseudocore charge in addition to the pseudopotential.
489
It is possible to override the default (new scheme for GGA
490
calculations, old scheme for LDA calculations) by using the directives
495
The program will issue the appropriate warnings. (See Sect.~\ref{sec:inputfile})
500
\item {\tt PSCHARGE:} Contains the pseudocore charge in column four.
501
(multiplied by $4\pi r^2$).
503
\item {\tt COREQ:} Fourier transform of the pseudocore charge density
504
$\rho_{pc}(q)$ in units of electrons, with $q$ in bohr$^{-1}$.
507
Useful plotting scripts (without {\tt .gplot} or {\tt .gps}
511
\item {\tt charge:} Shows also the pseudocore charge.
512
\item {\tt coreq:} Shows the Fourier transform of the pseudocore charge.
515
\subsection{Pseudopotential test}
517
While it is helpful to ``have a look'' at the plots of the
518
pseudopotential generation to get a feeling for its quality, there is
519
no substitute for a proper {\bf transferability testing}. A
520
pseudopotential with good transferability will reproduce the
521
all-electron energy levels and wavefunctions in arbitrary
522
environments, (i.e., in the presence of charge transfer, which always
523
takes place when forming solids and molecules). We know that norm
524
conservation guarantees a certain degree of transferability (usually
525
seen clearly in the plot of the logarithmic derivative), but we can
526
get a better assessment by performing all-electron and ``pseudo''
527
calculations on the same series of atomic configurations, and comparing
528
the eigenvalues and excitation energies.
530
In the same {\tt Tutorial/Si} directory we can find file {\tt
531
Si.test.inp}, containing the concatenation of ten jobs. The first
532
five are all-electron ({\tt ae}) calculations, and the last five,
533
pseudopotential test ({\tt pt}) runs for the same configurations:
537
# All-electron calculations for a series of Si configurations
539
ae Si Test -- GS 3s2 3p2
545
ae Si Test -- 3s2 3p1 3d1
552
ae Si Test -- 3s1 3p3
558
ae Si Test -- 3s1 3p2 3d1
565
ae Si Test -- 3s0 3p3 3d1
573
# Pseudopotential test calculations
575
pt Si Test -- GS 3s2 3p2
581
pt Si Test -- 3s2 3p1 3d1
588
pt Si Test -- 3s1 3p3
594
pt Si Test -- 3s1 3p2 3d1
601
pt Si Test -- 3s0 3p3 3d1
610
The configurations differ in the promotion of electrons from one level
611
to another (it is also possible to transfer {\sl fractions} of an
614
We can run the file by using the {\tt pt.sh} script. Following
615
the layout of the {\tt Tutorial} directory, we will assume that the
616
script is in the directory directly above the current one. We need to
617
give it {\bf two} arguments: the calculation input file, and the
618
file containing the pseudopotential we want to test. Let's make the
619
latter {\tt Si.tm2.vps}:
622
$ sh ../../Utils/pt.sh Si.test.inp Si.tm2.vps
623
==> Output data in directory Si.test-Si.tm2
626
AECHARGE AEWFNR1 CHARGE OUT PTWFNR0 PTWFNR2 VPSIN
627
AEWFNR0 AEWFNR2 INP PTCHARGE PTWFNR1 RHO
630
The working directory is named after {\sl both} the test and
631
pseudopotential files. It contains several new files:
634
\item {\tt VPSIN:} A copy of the pseudopotential file to be tested.
635
\item {\tt PTCHARGE:} Contains in four
636
columns values of $r$, the ``up'' and ``down'' parts of the {\sl
637
pseudo valence} charge density, and the pseudo core charge density
638
(see Sect.~\ref{sec:cc}) (the charges
639
multiplied by $4\pi r^2$).
641
\item {\tt PTWFNR0...PTWFNR3:} Valence pseudowavefunctions as function
642
of radius, for $s$, $p$, $d$, and $f$ valence orbitals (0, 1, 2, 3,
643
respectively --- some channels might not be available). They include
644
a factor of $r$, the $s$ orbitals also going to zero at the origin.
648
The {\tt OUT} file has two sections, one for the all-electron (AE) runs, and
649
another for the pseudopotential tests (PT). At the end of each series
650
of runs there is a table showing the excitation energies. A handy way
651
to compare the AE and PT energies is:
655
&d total energy differences in series
659
&d 3 0.4961 0.0653 0.0000
660
&d 4 0.9613 0.5305 0.4652 0.0000
661
&d 5 1.4997 1.0689 1.0036 0.5384 0.0000
662
*----- End of series ----* spdfg &d&v
663
ATM3 12-JUL-02 Si Test -- GS 3s2 3p2
664
ATM3 12-JUL-02 Si Test -- 3s2 3p1 3d1
665
ATM3 12-JUL-02 Si Test -- 3s1 3p3
666
ATM3 12-JUL-02 Si Test -- 3s1 3p2 3d1
667
ATM3 12-JUL-02 Si Test -- 3s0 3p3 3d1
668
&d total energy differences in series
672
&d 3 0.4993 0.0694 0.0000
673
&d 4 0.9635 0.5336 0.4642 0.0000
674
&d 5 1.5044 1.0745 1.0051 0.5409 0.0000
675
*----- End of series ----* spdfg &d&v
678
The tables (top AE, bottom PT) give the cross-excitations among all
679
configurations. Typically, one should be all right if the AE-PT
680
differences are not much larger than 1~mRy.
682
You can also compare the AE and PT eigenvalues. Simply do
685
$ grep '&v' OUT | grep s
686
ATM3 12-JUL-02 Si Test -- GS 3s2 3p2
687
3s 0.0 2.0000 -0.79662742 3.23745215 -17.68692611
688
ATM3 12-JUL-02 Si Test -- 3s2 3p1 3d1
689
3s 0.0 2.0000 -1.08185979 3.53885995 -18.40569836
690
ATM3 12-JUL-02 Si Test -- 3s1 3p3
691
3s 0.0 1.0000 -0.85138783 3.35438895 -17.96219240
692
ATM3 12-JUL-02 Si Test -- 3s1 3p2 3d1
693
3s 0.0 1.0000 -1.11431855 3.62997498 -18.60814708
694
ATM3 12-JUL-02 Si Test -- 3s0 3p3 3d1
695
3s 0.0 0.0000 -1.14358268 3.71462770 -18.79448684
696
*----- End of series ----* spdfg &d&v
697
ATM3 12-JUL-02 Si Test -- GS 3s2 3p2
698
1s 0.0 2.0000 -0.79938037 0.50556261 -3.74114712
699
ATM3 12-JUL-02 Si Test -- 3s2 3p1 3d1
700
1s 0.0 2.0000 -1.08384468 0.55070398 -3.81988817
701
ATM3 12-JUL-02 Si Test -- 3s1 3p3
702
1s 0.0 1.0000 -0.85392666 0.52020429 -3.76852577
703
ATM3 12-JUL-02 Si Test -- 3s1 3p2 3d1
704
1s 0.0 1.0000 -1.11546463 0.56048425 -3.83646615
705
ATM3 12-JUL-02 Si Test -- 3s0 3p3 3d1
706
1s 0.0 0.0000 -1.14353959 0.56945741 -3.85106049
707
*----- End of series ----* spdfg &d&v
710
(and similarly for $p$, $d$, and $f$, if desired). Again, the typical
711
difference should be of around 1~mRyd for a ``good'' pseudopotential.
712
(The {\sl real\/} proof of good transferability, remember, can only come
713
from a molecular or solid-state calculation). Note that the PT levels
714
are labeled starting from principal quantum number 1.
716
The relevant plotting scripts (without {\tt .gplot} or {\tt .gps}
720
\item {\tt charge:} It compares the AE and PT charge densities.
721
\item {\tt pt:} Compares the valence all-electron and pseudo-wavefunctions.
726
\section{APPENDIX: THE INPUT FILE}
727
\label{sec:inputfile}
729
For historical reasons, the input file is in a rigid column
730
format. Fortunately, most of the column fields line up, so the
731
possibility of errors is reduced. We will begin by describing in
732
detail a very simple input file for an {\bf all-electron calculation} for
733
the ground state of Si. More examples can be found in the {\tt
739
# Comments allowed here
741
ae Si ground state all-electron
748
# Comments allowed here
750
#2345678901234567890123456789012345678901234567890 Ruler
754
\item The first line specifies:
756
\item The calculation code ({\tt ae} here stands for ``all-electron'').
757
\item A title for the job (here {\tt Si ground state all-electron}).
764
\item Chemical symbol of the nucleus (here {\tt Si}, obviously)
765
\item Exchange-correlation type. Here, {\tt ca} stands for
766
Ceperley-Alder. The options are:
768
Local density approximations (LDA):
770
\item {\tt wi}: Wigner, PR 46, 1002 (1934)
771
\item {\tt hl}: Hedin and Lundqvist, J. Phys. C 4, 2064 (1971)
772
\item {\tt gl}: Gunnarson and Lundqvist, PRB 13, 4274 (1976)
773
\item {\tt bh}: von Barth and Hedin, J. Phys. C 5, 1629 (1972)
774
\item {\tt ca}: Ceperley-Alder, parametrized by Perdew and Zunger,
776
\item {\tt pw}: PW92 (Perdew and Wang, PRB, 45, 13244 (1992))
777
(recommended LDA functional)
780
Generalized gradient approximations (GGA), implemented as
781
Balb\'as, Martins, and Soler, PRB 64, 165110 (2001):
783
\item {\tt pb}: PBE (Perdew, Burke, and Ernzerhof,
784
PRL 77, 3865 (1996)) (recommended GGA)
785
\item {\tt wp}: PW91 (Perdew and Wang, JCP, 100, 1290 (1994))
786
\item {\tt rp}: RPBE (Hammer, Hansen, and Norskov,
788
\item {\tt rv}: revPBE (Zhang and Yang, PRL 80, 890 (1998))
789
\item {\tt ps}: PBEsol (Perdew et al, PRL 100, 136406 (2008))
790
\item {\tt wc}: WC (Wu and Cohen, PRB 73, 235116 (2006))
791
\item {\tt jo}: PBEJsJrLO. This and the next three functionals
792
are reparametrizations of the PBE functional by
793
Pedroza et al, PRB 79, 201106 (2009) and
794
Odashima et al, J. Chem. Theory Comp. 5, 798 (2009).
795
Js and Jr refer to jellium surface energy and
796
jellium response, respectively.
797
LO refers to Lieb-Oxford bound.
798
Gx and Gc refer to gradient expansions for
799
exchange and correlation, respectively.
800
HGE refers to the low-density limit of the
801
homogeneous electron gas.
802
\item {\tt jh}: PBEJsJrHEG
803
\item {\tt go}: PBEGcGxLO
804
\item {\tt gh}: PBEGcGxHEG
805
\item {\tt am}: AM05 (Armiento and Mattsson
806
PRB 72, 085108 (2005), PRB 79, 155101 (2009)),
807
\item {\tt bl}: BLYP (Becke, PRA 38, 3098 (1988) and
808
Lee, Yang, and Parr, PRB 37, 785 (1988))
811
Van der Waals (VDW) density functionals, implemented as
812
Rom\'an-P\'erez and Soler, PRL 103, 096102 (2009):
814
\item {\tt vw} or {\tt vf}: DRSLL (Dion et al, PRL 92, 246401 (2004))
815
\item {\tt vl}: LMKLL (Lee et al, PRB 82, 081101 (2010))
816
\item {\tt vk}: KBM (Klimes, Bowler, and Michaelides,
817
JPCM 22, 022201 (2009))
818
\item {\tt vc}: C09 (Cooper, PRB 81, 161104 (2010))
819
\item {\tt vb}: BH (Berland and Hyldgaard, PRB 89, 035412 (2014))
820
\item {\tt vv}: VV (Vydrov and VanVoorhis, JCP 133, 244103 (2010))
823
\item The character {\tt r} next to {\tt ca} is a flag to perform the
824
calculation relativistically, that is, solving the Dirac equation
825
instead of the Schrodinger equation.
826
The full range of options is:
828
\item {\tt s} : Spin-polarized calculation, non-relativistic.
829
\item {\tt r}: Relativistic calculation, obviously polarized.
830
\item (blank) : Non-polarized (spin ignored), non-relativistic
835
(format 3x,a2,3x,a2,a1,2x)
837
\item Third line. Its use is somewhat esoteric and for most
838
calculations it should contain just a 0.0 in the position shown, but
839
that first field might be useful to generate pseudopotentials for
840
``atoms'' with a fractional atomic number (see the example for ON in
841
the {\tt Tutorial/PS\_Generation} directory).
844
The rest of the file is devoted to the specification of the electronic
850
Number of core and valence orbitals. For example, for Si, we
851
have $1s$, $2s$, and $2p$ in the core (a total of 3 orbitals), and
852
$3s$ and $3p$ in the valence complex (2 orbitals).
856
\item Fifth, sixth... lines: (there is one line for each valence
859
\item {\tt n} (principal quantum number)
860
\item {\tt l} (angular momentum quantum number)
861
\item Occupation of the orbital in electrons.
866
(There are two f input descriptors to allow the input of ``up''
867
and ``down'' occupations in spin-polarized calculations (see
872
Comments or blank lines may appear in the file at the beginning and at the end.
873
It is possible to perform two or more calculations in
874
succession by simply concatenating blocks as the one described above.
875
For example, the following file is used to study the ground state of N
876
and an excited state with one electron promoted from the $2s$ to the $2p$
877
orbital taking into account the spin polarization:
881
ae N ground state all-electron
888
# Second calculation starts here
890
ae N 1s2 2s1 2p4 all-electron
897
#2345678901234567890123456789012345678901234567890 Ruler
901
The different treatment of core and valence orbitals in the input for an
902
all-electron calculation is purely cosmetic. The program ``knows'' how
903
to fill the internal orbitals in the right order, so it is only
904
necessary to give their number. That is handy for heavy atoms...
905
Overzealous users might want to check the output to make sure that the
906
core orbitals are indeed correctly treated.
910
For a {\bf pseudopotential test calculation}, the format is exactly
911
the same, except that the job code is {\tt pt} instead of {\tt ae}.
914
For a {\bf pseudopotential generation run}, in addition to the
915
electronic configuration chosen for the generation of the
916
pseudopotentials (which is input in the same manner as above), one has
917
to specify the ``flavor'' (generation scheme) and the set of core
918
radii $r_c$ for the construction of the pseudowavefunction. Here is an
919
example for Si using the Hamann-Schluter-Chiang scheme:
923
pg Si Pseudopotencial
931
1.12 1.35 1.17 0.0 0.0 0.0
933
#23456789012345678901234567890123456789012345678901234567890 Ruler
934
---------------------------------------
937
Apart from the {\tt pg} (pseudopotential generation) job code in the
938
first line, there are two extra lines:
943
Flavor and radius at which to compute logarithmic
944
derivatives for test purposes.
946
The flavor can be one of :
948
hsc &Hamann-Schluter-Chiang\\
950
tm2 &Improved Troullier-Martins\\
953
The {\tt ker} and {\tt tm2} schemes can get away with larger $r_c$,
954
due to their wavefunction matching conditions.
956
(format 8x, a3, f9.3)
958
\item The last line (before the blank line) specifies:
961
\item The values of the $r_c$ in atomic units (bohrs) for the $s$,
962
$p$, $d$, and $f$ orbitals (it is a good practice to input the valence
963
orbitals in the order of increasing angular momentum, so that there is
964
no possible confusion).
968
\item Two extra fields (2f10.5) which are relevant only if non-local
969
core corrections are used (see Sect~\ref{sec:cc}).
973
In the {\tt hsc} example above, only $s$ ,$p$, and $d$ $r_c$'s are
974
given. Here is an example for Silicon in which we are only interested
975
in the $s$ and $p$ channels for our pseudopotential, and use the Kerker
980
pg Si Kerker generation
987
1.80 1.80 0.00 0.0 0.0 0.0
989
#23456789012345678901234567890123456789012345678901234567890 Ruler
993
This completes the discussion of the more common features of the input
994
file. See the Appendix~\ref{sec:directives} for more advanced options.
996
\section{APPENDIX: INPUT FILE DIRECTIVES}
997
\label{sec:directives}
999
The fixed format can be a source of desperation for the beginner, and
1000
its rigidity means that it is not easy to add new items to the
1001
input. For this purpose, the program takes another route: several
1002
variables can be entered in a specially flexible format by means of
1003
{\sl directives} at the top of the file. For example
1007
.... rest of the input file
1010
would signal that we want to use a new core-correction scheme.
1012
There are two kinds of directives, with syntax:
1018
In the first case we assign the value {\tt value} to the variable {\tt
1019
VARIABLE}. The program can look at the value via a special
1022
The second form is a bit more abstract, but can be understood as
1023
assigning a special ``existence'' value of {\tt 1} to the variable
1024
{\tt NAME}. Again, the program can check for the existence of the
1025
variable via a special subroutine call.
1027
Currently, the program understands the following {\tt NAME}s:
1030
\item {\tt COMPAT\_UCB:} Revert to the standard circa 1990 UCB values. Note
1031
that these correspond to the first released version
1032
of Jose Luis Martins code, not to the old Froyen
1034
(The defaults are: use a denser grid up to larger radii.
1035
Use a larger value for the pseudopotential
1036
cutoff point. Use the Soler-Balbas XC package.)
1038
\item {\tt NEW\_CC:} New core-correction scheme
1039
\item {\tt OLD\_CC:} Old core-correction scheme (see Sect.~\ref{sec:cc})
1041
\item {\tt USE\_OLD\_EXCORR:} Use the old exchange-correlation package.
1043
\item {\tt NO\_PS\_CUTOFFS:} Avoid cutting off the tails of the
1044
pseudopotentials. Currently, a simple exponential tapering function is
1045
used, which introduces a discontinuity in the first derivative of the
1046
ionic pseudopotential.
1048
\item {\tt FREE\_FORMAT\_RC\_INPUT:} Use free-format for the input of
1049
the cutoff radii and the specification of the core-correction
1050
parameters. This is useful for externally-driven runs of ATOM. In this
1051
case the user should make sure that all six values (four rc's plus
1052
the two cc parameters) are present in the input line.
1057
%\addcontentsline{toc}{section}{Index}