Calculating the potential and phase shifts
Potentials and phase shifts are calculated by executing the first modules of feff : atomic, pot, screen, xsph. This sequence corresponds to the first two fields in the CONTROL card, i.e.,
CONTROL 1 1 0 0 0 0
calculates potentials and phase shifts (and nothing more).
Initially the free atom potentials of each atomic type are calculated using a relativistic Dirac–Fock atom code, treating the atoms as if they were isolated in space. Scattering potentials are calculated by overlapping the free atom densities in the muffin tin approximation (Mattheiss prescription), and then including the Hedin–Lundqvist/Quinn self energy for excited states. Non-overlapping muffin-tin radii are determined automatically from the calculated Norman radii. Automatic overlapping of muffin tin spheres (see the AFOLP card) is done by default, since it typically leads to better results than non-overlapping muffin-tin spheres. feff9 can also calculate self-consistent potentials by successively calculating the electron density of states, electron density and Fermi level at each stage within a small cluster and then iterating, using the Mattheiss prescription for the initial iteration. This behavior is activated by the SCF card in ‘feff.inp’. It is strongly recommended for calculation of near-edge properties. In this case, the radius of that small cluster is a parameter that must be converged for good results. Extended spectra, such as EXAFS or EXELFS, can typically be calculated without self-consistent potentials.
XAFS spectra are referenced to the threshold Fermi level. This quantity is best determined with the self-consistent field procedure (typically to within a fraction of an eV), or (less accurate but faster) can be estimated from the electron gas result at the mean interstitial density in the Mattheiss prescription. An absolute energy scale is obtained by an atomic calculation of the total energy of the system with and without the core-hole. Atomic configurations and core-hole lifetimes are built in, and mean free paths are determined from the imaginary part of the average interstitial potential, including self-energy and lifetime contributions.
The potential calculations need as input only the atomic number of the atoms, and, for the absorbing atom, the type of the core hole being considered. To do the overlapping of the unique potentials, the neighboring atoms must be identified, either by position (from a list of the Cartesian coordinates of each atom) or by explicit overlapping instructions using the OVERLAP card described in the previous section.
To save time the code calculates the overlapped atom potential for each unique potential only once, using as a sample geometry the atom with a given unique potential index that is closest to the absorbing atom. Thus it is essential that the neighborhood of each sample atom be appropriate. One should give consideration to adding potentials for sufficiently different atoms of the same atomic number. feff9 only calculates the spherical part of the potential (”muffin tin potential”), so if atoms have environments identical up to a unitary transformation (e.g. a space group symmetry operation in a crystal), they can certainly be considered equivalent in feff. In strongly anisotropic environments, the muffin tin approximation may lead to inaccuracies in the potentials and density of states (DOS).
Note that feff has historically accumulated options for setting the edge and core hole. We highly recommend that users use only the EDGE card for specifying the edge, and the COREHOLE card for setting the core hole treatment. The HOLE and NOHOLE cards are then provided for backward compatibility only.
The potentials are written to file if the PRINT card is set high enough:
PRINT 2 0 0 0 0 0
results in files ‘pot00.dat’, ‘pot01.dat’ and so on. These contain single and overlapped potentials and densities and can be plotted, e.g. in gnuplot.
The progression of a self-consistent calculation can be checked in the ‘.scfconvergence-feff’. FIX add paragraph about screening.
Relativistic dipole matrix elements (alpha form) are calculated using atomic core and nor- malized continuum wave functions. Polarization dependence is optionally incorporated in the dipole-operator. Scattering phase shifts are determined by matching at the muffin-tin radius.
feff is designed to calculate absorption from completely filled shells. You can try to simulate absorption from valence electrons with feff, but you may get unreliable results. If you encounter difficulties and need valence shell absorption, please contact the authors.
xsph writes its main output to ‘xsect.dat’ : this file contains the matrix elements and the atomic background as a function of energy. If you set the PRINT card to 1 or higher, the phases will be written to a file ‘phase.dat’, though this file is not usable for plotting. Setting the PRINT card even higher makes feff calculate hole counts and write them to ‘log2.dat’. Careful - this is quite slow.
PRINT 0 3 0 0 0 0 *hole counts - slow calculation