<< >> Up Title Contents SCM

First List


ACCINT
General precision parameter for numerical integration. Default value = 3.5. High values (larger than 4.5 say) should only be used in extreme cases. Values below 3.0 produce unreliable results, due to the limited precision in integrals.
ACCINT plays in fact the role of a very general accuracy parameter, and determines not only the generation of integration points, but also the (default) values of many other parameters and settings that are related to the accuracy of the results.
ANGSTROM
Occurrence of this key specifies that geometrical data (keys LATTICE and ATOMS) refer to angstroms, rather than to atomic units (bohr), which is default.
ATOMS (block-type)
Nuclear coordinates The chemical symbol (H, C, Cu, etc.), which defines the atom type, must be given on the keyword-line. The data-records contain the coordinates, one atom per line. The coordinates are in cartesian representation unless the key COORDINATES has been given in input with the value NATURAL, in which case the numbers are interpreted as expansion coefficients in the Bravais lattice vectors (see key LATTICE). In case of the cartesian representation the values are in atomic units (angstroms if the key ANGSTROM occurs in input). The ATOMS key must occur once for every atom type, i.e. the number of atom types is defined as the number of occurrences of this key.
BASISFUNCTIONS (block-type)
Slater-type orbitals, specified by one integer (n), one character (l) and one real (alpha) per STO. One STO per record. The information pertains to one atom type, the type being the same as that of the preceding DIRAC-key (see below). Hence this is a case in which the ordering of keys is not arbitrary.
Use of this key is optional in the sense that Slater-type functions are not needed if other basis functions have been specified (In the first place: numerical atomic orbitals, see key DIRAC. In the second place (only in bulk crystals): plane waves, see the key PLANEWAVES)
COMMENT (block-type)
text that will be copied to the output header, where general program information is also printed.
COORDINATES.
The only sensible value for this key is: NATURAL, which specifies that nuclear coordinates (key ATOMS) are given as expansions in the Bravais lattice vectors, rather than in a Cartesian representation.
DEFINE (block-type)
Definition of user-supplied functions and variables that can subsequently be used in the input file. (see the note on auxiliary input features)
DIRAC ( block-type)
Specification of the numerical ('Herman-Skillman') free atom, which defines the initial guess for the SCF density, and which also (optionally) supplies Numerical Atomic Orbitals (NOs) as basis functions, and/or as fit functions for the crystal calculation. The key corresponds to one atom type. The ordering of the DIRAC sub keys (in case of more than one atom type) is not arbitrary. It is interpreted as corresponding to the ordering of the ATOMSkeys. The n-th DIRAC key supplies information for the numerical atom of the n-th type, which in turn has atoms at positions defined by the n-th ATOMS key.
The data records of the DIRAC key are: 1.the number of atomic shells (1s,2s,2p,etc.) and the nr. of core-shells (two integers on one line). 2,3... quantum numbers and electronic occupation of the shells. Optionally one may insert anywhere in the DIRAC block a record VALENCE, which signifies that all numerical valence orbitals will be used as basis functions (NOs) in the crystal calculation.
You can also insert FIT followed by a number (max. l-value) in the key block, which causes the program to use numerical fit functions. For example FIT 2 means that the squares of all s,p, and d NOs will be used as fit functions with l=0, since the NOs are spherically symmetric.
If you insert SPINORBIT, a spin-orbit relativistic calculation for the single-atom will be carried out.
The Herman-Skillman program generates all its functions (atomic potential, charge density, one-electron states) as tables of values in a logarithmic radial grid. The number of points in the grid, and the min. and max. r-value are defaulted at 2000, 0.0001, and 30.0 (a.u.) respectively. These defaults can be overwritten by specifying anywhere in the DIRAC block the (sub)key RADIAL, followed by the new values (in order: number of points, rmin, rmax).

example:

DIRAC :: Carbon atom
3 1 :: Three shells, one of them is a core function
VALENCE :: Include NAO's of non-core shells in valence basis
RADIAL 1000 1E-6 100 :: optional
FIT 0 :: optional
1 0
2 0
2 1 2.0
**

The program will do a spin-unrestricted calculation for the atoms in addition to the restricted one. The occupation of the spin-orbitals will be of maximum spin-multiplicity and cannot be controlled in the DIRAC key-block.
DOS (block-type)
general Density-Of-States information: the number of (equidistant) energy-values, the min. and max. e-values (with respect to the Fermi energy), and the (formatted) file on which the DOS-information will be written. If the file is omitted, the information will be printed in the output file.
example:

DOS
FILE plotfile
ENERGIES 500
MIN -.35
MAX 1.05
**

According to this example, density-of-states values will be generated in an equidistant mesh of 500 energy values, ranging from 0.35 below the Fermi level to 1.05 above it (atomic units). All information will be written to a file plotfile in the result directory (see key RESULTDIRECTORY). The information on the plot file is a long list of pairs of values (energy and DOS), with some informative text-headers and general information; since the file is formatted one can easily inspect its contents; it should be suitable for graphical software like IGOR.

Density-of-states values are generated for the total D.O.S. and optionally also for some partial densities of states (see the keys GROSSPOPULATIONS and OVERLAPPOPULATIONS).

If the key DOS is omitted, no Density-of-States information is generated at all. If the key is given, but one or more of the 'subkeys' (file, energies, min, max) are omitted, default values are inserted (: direct printing on output, 300, -0.75, 0.75).
EXECUTE
Specifies that the program is stopped after execution of a specified program-part (subroutine). The specified name should be one of a pre-defined list. The most relevant ones are GEMTRY (all geometrical aspects are checked, symmetry analysis is carried out, and numbers of (symmetry-unique) integration points in real space and in k-space are determined; this part takes only little CPU-time) and ATOMIC (in addition to the geometry-part all radial parts of basis- and fit functions are generated, and the spherically symmetric atoms are computed and inserted in the crystal; the initial charge density is defined and integrated (check on integration-precision), and the electrostatic interaction is computed between the unrelaxed free atoms).
FITFUNCTIONS (block-type)
Slater-type fit functions, described in the same way as in BASISFUNCTIONS.Each FITFUNCTIONS key corresponds to one atom type, the type being the one of the preceding DIRAC key. This is one of the cases in which the ordering of keys is not arbitrary.
The selection choice of a `good' fits et is a matter of experience. Fair quality sets are included in the database of the molecular program ADF.
FORMFACTORS
X-ray structure factors (Fourier analysis of the charge density) are computed after termination of the SCF procedure; the key should be followed by an integer specifying the number of stars of K-vectors for which the structure factors are computed. Default (omission of the key): 3 stars.
FRG (block-type)
Define fragments to start calculation with. This feature is not related to the fragment analysis, but is used for restarts from one or more fragments.
1 fragment filename (absolute path or path relative to the executing directory)
2 for each atom in the fragment two integers: atom number in the fragment versus atom number in this calculation. If no such line is found and only one fragment is present, the program assumes the atoms in the current calculation are in the same order as the atoms in the fragment.
GROSSPOPULATIONS (block-type)
Partial densities-of-states are generated for the gross populations listed under this key. Each line contains a PDO instruction. There are three possibilities:
1 Line contains two integers, the first specifying the atom (numbered according to the total list comprised from all ATOMS-keys), the second the l-value (0:s, 1:p, 2:d, and so on). Partial densities of states are generated for all real spherical harmonics belonging to the specified l-value.
2 Line is of the form: FRAG 1, which means that the PDOS of the functions belonging to atom 1 will be calculated.
3 Line is of the form FRAGFUN 3, which refers to the third function of atom 3, including core states of that atom.
You can sum PDOS commands with a sum-block, for instance:

GROSSPOPULATIONS
FRAGFUN 1 2:: Second function of first atom
FRAG 2 :: Sum of all functions from second atom
SUM:: sum following PDOSes
FRAG 1::Atom nr.1
...FRAGFUN 2 1::First function of second atom
....5 1:: All p functions of fifth atom
ENDSSUM
**
IGNORE (block-type)
suppress reading of input until the next end-key code (**).
KLABELS (block-type)
With this key you assign names to symmetry unique k-points. In general you do not know in advance how many k-points will be used, nor the number of points that are symmetry unique among them. Therefore you should first add to your input file the option EXECUTE GEMTRY, which causes the program to stop after the k-points have been generated. In the output you will see under the header K-SPACE INTEGRATION a numbered list of the k-points, with their, symmetry-unique-index number, and coordinates. In the next run you may then give the symmetry unique k-points symbolic names.

Example:

KLABELS
GAMMA
X
M
**

According to this example all k-points with symmetry unique number 1, will be labeled GAMMA, those with symmetry unique number 2 X, and those with symmetry unique number 3 M.
KSPACE
Parameter for numerical integration over the Brillouin Zone (k-space). An integer value should be supplied. 1=absolutely minimal (only the G-point is used), 2=linear tetrahedron method, coarsest possible spacing, 3=quadratic tetrahedron method, coarsest spacing. Higher values should be chosen odd (5, 7,..) to use the quadratic method; even values (4,6,..) trigger the linear tetrahedron method, which is usually by far inferior. CPU-time increases very rapidly with higher KSPACE-values: try 3 for a reasonable result, or 5 for higher precision.
Default depends on ACCINT, the integration parameter in real space.
LATTICE (block-type)
Vectors defining the Bravais lattice, one vector per line. The number of lines defines the periodicity of the system: 1: polymer, 2: slab, 3:bulk crystal. Each vector has three coordinates (Cartesian), in atomic units (angstroms if the key ANGSTROM occurs in input).
MAXMEMORYUSAGE
maximum amount of memory which may be allocated by the program, in Megabytes.
NATOMSASFRAGMENT
This key is followed by a number n, signifying that the first n atoms are to be treated as a fragment. Your input file must contain the FRAGMENT blocks that were produced with the PREPAREFRAGMENT option. You can have more than one fragment, in which case this key should be followed by a series of numbers, n1 n2..., which means that the first fragment consists of the first n1 atoms, the second fragment of the n2 next atoms, etc. Now the file should contain the FRAGMENT blocks of the first fragment, followed by the FRAGMENT blocks of the second fragment...
NLXCPOT
This key existed in release 1999.x and before, but has been disabled. Its functionality is replaced by the (new version of the) block type key XC.
NSPINREFAT
Default the formation energy is calculated with respect to the spherically symmetric spin-restricted atoms. If you want to do an unrestricted calculation for the atoms, you may include in the input file
NSPINREFAT 2
NSPINSTARTAT
By default the program uses as a first guess for the density the sum of the spherically symmetric spin-restricted atoms. In case you do a spin-unrestricted calculation, you may try to use the sum of the unrestricted atoms as start-up density. Including NSPINSTARTAT 2 in the input will give you as start-up density the sum of unrestricted atoms with their net spin `up'. In combination with a frozen core this option can lead to a locally negative valence density, in which case the program will stop and tell you not to use this option.
ORBLABELS (block-type)
The program will generate labels for the valence basis states automatically by default. With this option you can assign your own label to each valence function.
Example:

ORBLABELS
SIGMA
PY
PZ
PX
**

In this example there are four valence basis functions. The first will be labeled SIGMA, the second PY and so on. The labels are used in combination with options like PRINT EIGENSYSTEM and PRINT ORBPOP. (See also PRINT ORBLABELS).
Description of the automatic labels for the valence basis. This basis contains core functions needed for orthogonalization on the core. A normal atomic basis function, i.e. a numerical orbital or a Slater type orbital, gets a label like
<atom number>/<element>/<orbital type>/<quantum numbers n,l,m>/<exp in STO>
Example with a Li and a H atom:

1/LI/NO/100
1/LI/NO/200
1/LI/STO/200/1.4
1/LI/STO/211/1.3
1/LI/STO/210/1.3
1/LI/STO/21-1/1.3
2/H/NO/100
2/H/STO/100/1.9
...
Core states and plane waves will just get simple numbers as labels
CORE STATE 1
CORE STATE 2
PW1
PW2
ORBPLOT (block-type)
With a RESULTFILE of a previous calculation you may rerun the program, using that file as RESTARTFILE, to make a plot file of the real part of the eigenvectors in a plane.
Only eigenstates are treated that belong to bands which fall (at least partially) in the energy range defined by the DOS key. Therefore, the ORBPLOT key must be used in conjunction with the DOS key.
The first four records in this key-block describe the set of plot points. The first record is the starting point (three coordinates). The second record should contain a vector, relative to the starting point, and a step size. The same holds for the third record. The plot points are generated in a plane spanned by these two vectors. The fourth record determines the amount of steps that are taken in the two directions. A plot point must not coincide with the position of an atom, because that would give rise to a singularity in the potential evaluation. If this happens, you have to displace the starting point.
You control which eigenvectors are used by a next series of records. Each such record contains the index of a k-point in the list of all symmetry unique k-points, and two integers that specify the range of bands to be used.
Example:

ORBPLOT :: Make plot file of eigenvectors
0. 0. 0. :: Starting point
1. 0. 0. .1 :: Vector1 and step1
0. 1. 0. .1 :: Vector2 and step2
10 10 :: N1 and n2
2 1 5 :: Make plots for k=2 from BAND 1 to 5
4 1 1 :: Make plot for k=4 and band =1
...
...
**

The resulting `plot data' are printed in the standard output file, in the format:
x y value,
X and y are relative coordinates in the selected plane, with the origin defined as the lower-left corner, and value is the orbital value. All data for a particular orbital are contiguous, followed by the data for the next orbital, et cetera.
You can make a plot file of the basis functions, instead of eigenvectors, by inserting the option:
PLOTPRIMITIVE into the key-block header.
Example:

ORBPLOT PLOTPRIMITIVE :: Make plot file of basis functions
......
**
OVERLAPPOPULATIONS (block-type)
You can use this to get the overlap population weighted densities-of-states (OPWDOS), also known as the crystal orbital overlap population (COOP), of two functions, or, if you like, one bunch of functions with another bunch of functions. The key-block should consist of left-right pairs. After a line with LEFT you enter lines that specify one or more functions (see GROSSPOPULATIONS), followed by a similar structure beginning with RIGHT, which will produce the OPWDOS of the left functions with the right functions.
Example:

OVERLAPPOPULATIONS
LEFT::First OPWDOS
FRAG 1
RIGHT
FRAG 2
LEFT:: Next OPWDOS
FRAGFUN 1 1
RIGHT
2 1
FRAGFUN 3 5

**
PFDIRECTORY
Default is the current executing directory (`,')
eneral standard directory for location of permanent files (restart files, result files).
Default is the current executing directory (".").
PLANEWAVES
WARNING: currently disabled!
The integer after this key specifies the number of stars of K-vectors, defining plane wave basis functions that will be used in the crystal valence basis. Can be used only in bulk crystals. Default: no plane waves at all, only Atomic Orbitals (numerical from the Herman-Skillman program, and Slater-type, via the key BASISFUNCTIONS).
PREPAREFRAGMENT
Prints in the output the eigenvectors in the gamma point.
PRINT
One or more strings (separated by blanks or comma's) from a pre-defined set may be typed after the key. This induces printing of various kinds of information, usually only used for debugging and checking. The set of recognized strings frequently changes (mainly expands) in the course of software-developments. Useful arguments may be SYMMETRY, and FIT.
PRINT EIGENS
Prints the (complex) coefficients in the form (norm, phase factor) of the eigenvectors with respect to the valence basis. Coefficients with a norm smaller than EIGTHRESHOLD will be skipped. This threshold can be set with the option EIGTHRESHOLD x, default x=.01.
PRINT MEMORY
Print the estimate of the memory usage taken into account to determine the block size and the number of K points treated together.
PRINT MULLIKENOVERLAPPOPULATIONS
Prints overlap population of all basis functions.
PRINT ORBLABELS
Prints the labels of the orbitals. If you are interested in the labels of an old calculation and you don't want to repeat it completely, you can add the option EXECUTE GEMTRY to your input file.
PRINT ORBPOP
Prints the Mulliken population per orbital, for all eigenstates. This is the most detailed population analysis that you can get, one for all k-points and for each band. Populations below a certain threshold are ignored. This threshold can be set with the option POPTHRESHOLD x. By default x=.01.
RESTARTDIRECTORY
directory where the program will search to find a restart file (if applicable). Default: the value of PFDIRECTORY.
RESTARTDOS
If you have the RESULTFILE of a previous calculation you can re-run the program, with this file as RESTARTFILE, along with this key to restart the program for the DOS analysis only. The main advantage is that the PREPAR and SCF procedures are skipped in this case.
RESTARTFILE
Tells the program that it should restart with the indicated file, to be found in RESTARTDIRECTORY
RESTARTSCF
If you have a RESTARTFILE of a previous calculation, you can re-run the program, along with this key, to start the SCF procedure with the self-consistent solution of the previous calculation. This can be useful if you want to increase the accuracy of the SCF solution, for instance when your calculation was terminated because it went beyond the time limit. You should include the following in your input file:

RESTARTDIRECTORY /home
RESTARTFILE tst.rf
RESULTDIRECTORY /home
RESULTFILE tst.rf2
RESTARTSCF
RESULTDIRECTORY
Directory where the program will put any result files (DOS plot file, general result file for restart). Default: the value of PFDIRECTORY.
RESULTFILE
Name of the general result file (needed for restarts), to be placed in RESULTDIRECTORY. No result file will be generated when you omit this key.
SPIN
If this key occurs (no additional data needed), a spin-unrestricted calculation will be carried out. Be aware that CPU-time and disk space requirements are approximately doubled!
SRZORA
Includes the scalar relativistic (without spin-orbit coupling) terms in the Hamiltonian, using the ZORA relativistic formalism. See also ZORA
XC
Specifies the exchange-correlation.
In release 1999.x and before it was a simple key (to specify only the LDA part of the XC functional). With release 2000 it has become a block type key with the same format as in the molecular ADF code:
The Density Functional, also called the exchange-and-correlation (XC) functional, consists of an LDA and a GGA part. LDA stands for the Local Density Approximation, which implies that the XC functional in each point in space depends only on the (spin) density in that same point. GGA stands for Generalized Gradient Approximation and is an addition to the LDA part, by including terms that depend on derivatives of the density. For both terms ADF supports a large number of the formulas advocated in the literature.

In principle you may specify different functionals to be used for the potential, which determines the self-consistent charge density, and for the energy expression that is used to evaluate the (XC part of the) energy of the charge density. To be consistent, one should generally apply the same functional to evaluate the potential and energy respectively. Two reasons, however, may lead one to do otherwise:
1. The evaluation of the GGA part in the potential is rather time-consuming. The effect of the GGA term in the potential on the self-consistent charge density is often not very large. From the point of view of computational efficiency it may, therefore, be attractive to solve the SCF equations at the LDA level (i.e. not including GGA terms in the potential), and to apply the full expression, including GGA terms, to the energy evaluation a posteriori: post-SCF.
2. A particular XC functional may have only an implementation for the potential, but not for the energy (or vice versa). This is a rather special case, intended primarily for fundamental research of Density Functional Theory, rather than for run-of-the-mill production runs.

The key that controls the Density Functional is XC, with sub keys LDA and GGA (or equivalently: GRADIENTS) to define the LDA and GGA parts of the functional. Either subkey is optional (need not be used) and may occur twice in the data block: if one wants to specify different functionals for potential and energy evaluations respectively, see above.

Apply
States whether the functional defined on the pertaining line will be used self-consistently (in the SCF-potential), or only post-SCF, i.e. to evaluate the XC energy corresponding to the charge density.
The value of apply must be SCF or Energy.
A value postSCF will also be accepted and is equivalent to Energy.
A value Potential will also be accepted and is equivalent to SCF.
For each record separately the default (if no Apply value is given in that record) is SCF.
For each of the two terms (LDA, GGA) in the functional: if no record with Energy specification is found in the data block, the evaluation of the XC energy will use the same functional as is applied for the potential.
LDA
Defines the LDA part of the XC functional and can be any of the following:
Xonly : The pure-exchange electron gas formula. Technically this is identical to the Xalpha form (see next) with a value 2/3 for the X-alpha parameter.
Xalpha: the scaled (parameterized) exchange-only formula. When this option is used you may (optionally) specify the X-alpha parameter by typing a numerical value after the string Xalpha (separated by a blank). If omitted this parameter takes the default value 0.7
VWN: the parameterization of electron gas data given by Vosko, Wilk and Nusair (ref [1], formula version V). Among the available LDA options this is the more advanced one, including correlation effects to a fair extent.
Stoll
For the VWN variety of the LDA form you may include Stoll's correction [2] by typing Stoll on the same line, after the main LDA specification. You must not use Stoll's correction in combination with the Xonly or the Xalpha form for the Local Density functional.
GGA
Specifies the GGA part of the XC Functional, in earlier times often called the "non-local" correction to the LDA part of the density functional. It uses derivatives (gradients) of the charge density. Separate choices can be made for the GGA exchange correction and the GGA correlation correction respectively. Both specifications must be typed (if at all) on the same line, after the GGA subkey.
For the exchange part the options are:
Becke : the gradient correction proposed in 1988 by Becke [3].
PW86x : the correction advocated in 1986 by Perdew-Wang [4].
PW91x : the exchange correction proposed in 1991 by Perdew-Wang [5].
For the correlation part the options are:
Perdew : the correlation term presented in 1986 by Perdew [6].
PW91c : the correlation correction of Perdew-Wang (1991), see [5].
LYP : the Lee-Yang-Parr 1988 correlation correction, [7-9]
Some GGA options define the exchange and correlation parts in one stroke. These are:
PW91 : this is equivalent to pw91x + pw91c together.
Blyp : this is equivalent to Becke (exchange) + LYP (correlation).
LB94 : this refers to the XC functional of Van Leeuwen and Baerends [10]. There are no separate entries for the Exchange and Correlation parts respectively of LB94

The string GGA must contain not more than one of the exchange options and not more than one of the correlation options. If options are applied for both they must be separated by a blank or a comma.

Defaults and special cases

If the XC key is not used, the program will apply only the Local Density Approximation (no GGA terms). The chosen LDA form is then VWN.

If only a GGA part is specified, omitting the LDA sub key, the LDA part defaults to VWN, except when the LYP correlation correction is used: in that case the LDA default is Xonly: pure exchange.

The reason for this is that the LYP formulas assume the pure-exchange LDA form, while for instance the Perdew-86 correlation correction is a correction to a correlated LDA form. The precise form of this correlated LDA form assumed in the Perdew-86 correlation correction is not available as an option in ADF but the VWN formulas are fairly close to it.

Be aware that typing only the sub key LDA, without an argument, will activate the VWN form (also if LYP is specified in the GGA part).

The LB94 functional has only a SCF (=Potential) implementation, but no Energy counterpart. Therefore, LB94 must not be used together with the Energy specification for Apply. If LB94 is used for the Potential (SCF), the GGA energy expression defaults to Becke (exchange part) + Perdew (correlation). This can be overruled by selecting another choice in the "GGA Energy..." specification.

The LB94 form is a density functional specifically devised to get the correct asymptotic behavior. This yields much better energies for the highest occupied molecular orbital (HOMO) and better excitation energies in a calculation of response properties (Time Dependent DFT). Energies for lower lying orbitals (sub-valence) should improve as well. The energy expression underlying the LB94 functional is very inaccurate. This does not affect the response properties but it does imply that the energy and its derivatives (gradients) should not be used because LB94-optimized geometries will be wrong, see for instance [11]. The application of the LB94 functional in a runtype that involves the computation of energy gradients is disabled in ADF. You can override this internal check with the key ALLOW.

The LB94 formalism cannot be used in a Create run (due to an implementation limitation in the code). If you need the energy difference of a molecule with respect to LB94-atoms, you have to run the single-atom calculations with LB94 separately, using the same non-LB94 Create atoms as fragments as you did for the whole molecule. This will give you the required energy corrections.

General remarks
ZORA
Includes the ZORA relativistic terms in the Hamiltonian, including spin-orbit coupling. See also SRZORA.


<< >> Up Title Contents