Example: NaCl: Bulk Crystal¶
A bulk crystal computation for Sodium Chloride (common salt), with a subsequent DOS analysis, using a Restart facility to use the results from a preceding calculation.
Calculations on periodic systems are carried out with the BAND program. Its input format has recently been changed substantially. It is now more similar in style to ADF. Old BAND input files are no longer compatible with the new version however.
The BAND input still follows slightly different conventions from the ADF input, for historical reasons.
The COMMENT
keyword allows users to provide some information about the run which may be of use later. Usually a brief summary of the run is given here.
Numerical integration precision is controlled with the key Accuracy
(in ADF: Integration)
The accuracy for integrals over the Brillouin Zone is set by the Kspace
key. The latter should, generally, take as value an odd number (3, 5...) to invoke the accurate quadratic tetrahedron integration procedure. For even values it will revert to the linear tetrahedron method, which is almost always inferior in accuracy.
The key Angstroms
specifies that geometric data, such as lattice constants are in angstrom units.
Since there are 3 data records in the Lattice
block, the calculation will assume 3-dimensional periodicity, with lattice vectors as indicated. Note that lattice vectors are undefined up to linear combinations among themselves. Internally, the program will recombine the input vectors so as to minimize the size of the actually used vectors.
The input line Coordinates NATURAL
means that atomic positions are input as coefficients in terms of the lattice vectors, rather than as absolute (Cartesian) coordinate values.
For each of the atoms in the calculations, Na and Cl here, there must be data blocks to specify various items. First, their positions in the crystal unit cell (key Atoms
). Second, the single isolated atom computation that will serve as start-up (Dirac
). Third, any Slater-type orbital basis functions (BasisFunctions
) for that atom. Fourth, the fit functions (FitFunctions
) for the calculation of the Coulomb potential and. The third item (BasisFunctions
) is optional and not present in this example.
It is recommended to include the numerical atomic orbitals that are computed by the Herman-Skillman type subprogram DIRAC as basis functions for the periodic structure calculation. This is effectuated by putting the word VALENCE in the Dirac data blocks. If that is done, additional STO basis functions (key BasisFunctions
) are optional and are used to increase the basis set flexibility. In absence of the numerical (DIRAC/VALENCE) orbitals, a minimal STO set is necessary of course, lest we wouldn’t have any basis set at all.
In an equivalent ADF calculation, basis and fit functions would be provided through the Create runs, which pick up the basis and fit functions from a database file. The Create runs would also serve to provide the start-up density, as the DIRAC runs do in BAND.
The basis and fit sets that one has to insert into the BAND input files can be taken from the corresponding ADF database. Note, however, that ADF does not use any numerical orbitals. Since it is recommended to include such numerical orbitals in a BAND calculation, one has to adjust the STO-type basis set for BAND, in comparison with ADF, so as to avoid linear dependency with the numerical orbitals. As a general guideline: for each of the included numerical orbitals (the occupied valence orbitals of the DIRAC calculation), one should remove one STO of the appropriate (n,l)-value. This keeps the overall size and flexibility of the basis at the same level and is usually sufficient to avoid dependency troubles.
The RUNKF key, early in the input, specifies that this standard result file from BAND must be saved under the name ‘t21.NaCl’. This file will be used in the follow-up calculation of Density-of-States properties.
Note, finally, that the data blocks of block type keys in the input for BAND end with a record ‘END’, as in ADF, whereas previously ‘==’ was used in BAND to end a record.
$ADFBIN/band << eor
Title Title NaCl (from neutral atoms)
Comment
Technical
Hybrid K space integration (3D)
Low real space integration accuracy
Natural coordinates
Lengths in Angstrom
Parameters Dirac procedure
Features
Lattice : 3D
Unit cell : 2 atoms
Basis : NO w/ core
Options : Save restart file
End
Accuracy 3.5
Kspace 3
Units
Length Angstrom
End
Lattice
0 2.75 2.75
2.75 0 2.75
2.75 2.75 0
End
ATOMS NA
0
End
Coordinates Natural
Atoms Cl
.5 .5 .5
End
AtomType Na
Dirac Na
4 1
Radial 2000
RMin 1E-4
RMax 60
VALENCE
1 0
2 0
2 1
3 0 1.0
SubEnd
FitFunctions
1 0 18.9
2 0 30.3
2 0 15.5
3 0 14.9
3 0 8.9
4 0 7.8
4 0 5.1
4 0 3.3
5 0 2.8
5 0 1.9
5 0 1.3
2 1 14.3
3 1 9.9
4 1 6.7
4 1 3.4
5 1 2.4
5 1 1.3
3 2 10.5
4 2 5.4
5 2 3.0
5 2 1.3
4 3 5.8
5 3 1.7
5 4 2.0
SubEnd
End
AtomType Cl
Dirac Cl
5 3
VALENCE
1 0
2 0
2 1
3 0
3 1 5.0
SubEnd
FitFunctions
1 0 29.1
2 0 49.5
2 0 26.1
3 0 25.8
3 0 15.8
4 0 14.2
4 0 9.4
4 0 6.2
5 0 5.4
5 0 3.8
5 0 2.6
2 1 21.2
3 1 16.5
4 1 12.4
4 1 6.8
5 1 5.1
5 1 3.1
3 2 16.6
4 2 9.4
5 2 5.5
5 2 2.6
4 3 8.7
5 3 3.3
5 4 4.0
SubEnd
End
End Input
eor
mv RUNKF t21.NaCl
rm Points
The next run has largely the same input and provides a restart of the previous run.
The key RESTARTDOS
tells the program to pick up the indicated file as restart file and to use it for DOS analysis purposes.
The DOS
key block details the energy grid (and range) and the file to write the data to. The optional keys GROSSPOPULATIONS
and OverlapPopulations
invoke the computation of, respectively, gross populations and overlap populations (i.e. for each of these the density-of-states values in the user-defined energy grid).
$ADFBIN/band << eor
Title Title NaCl (from neutral atoms) DOS analysis (restart)
Comment
Technical
Hybrid K space integration (3D)
Low real space integration accuracy
Natural coordinates
Lengths in Angstrom
Parameters Dirac procedure
Features
Lattice : 3D
Unit cell : 2 atoms
Basis : NO w/ core
Options : Use restart file for DOS
Analysis: DOS, PDOS, COOP
End
Restart
File t21.NaCl
DOS
End
Accuracy 3.5
Kspace 3
SCF
Iterations 15
End
Units
Length Angstrom
End
Lattice
0 2.75 2.75
2.75 0 2.75
2.75 2.75 0
End
DOS
File NaCl.dos
Energies 1000
Min -0.5
Max 0.5
End
GROSSPOPULATIONS
FRAG 1
FRAG 2
SUM
1 0
2 0
ENDSUM
End
OVERLAPPOPULATIONS
LEFT
FRAG 1
RIGHT
FRAG 2
LEFT
1 0
1 1
RIGHT
2 0
2 1
End
Atoms NA
0
End
Coordinates Natural
Atoms Cl
.5 .5 .5
End
AtomType Na
Dirac Na
4 1
Radial 2000
RMin 1E-4
RMax 60
VALENCE
1 0
2 0
2 1
3 0 1.0
SubEnd
FitFunctions
1 0 18.9
2 0 30.3
2 0 15.5
3 0 14.9
3 0 8.9
4 0 7.8
4 0 5.1
4 0 3.3
5 0 2.8
5 0 1.9
5 0 1.3
2 1 14.3
3 1 9.9
4 1 6.7
4 1 3.4
5 1 2.4
5 1 1.3
3 2 10.5
4 2 5.4
5 2 3.0
5 2 1.3
4 3 5.8
5 3 1.7
5 4 2.0
SubEnd
End
AtomType Cl
Dirac Cl
5 3
VALENCE
1 0
2 0
2 1
3 0
3 1 5.0
SubEnd
FitFunctions
1 0 29.1
2 0 49.5
2 0 26.1
3 0 25.8
3 0 15.8
4 0 14.2
4 0 9.4
4 0 6.2
5 0 5.4
5 0 3.8
5 0 2.6
2 1 21.2
3 1 16.5
4 1 12.4
4 1 6.8
5 1 5.1
5 1 3.1
3 2 16.6
4 2 9.4
5 2 5.5
5 2 2.6
4 3 8.7
5 3 3.3
5 4 4.0
SubEnd
End
End Input
eor
Finally, we copy the contents of the DOS result file to standard output
echo Contents of DOS file
cat NaCl.dos