Skip to content

Core Level (Shifts)

Julien Steffen edited this page Apr 21, 2024 · 8 revisions

Core level energies are often useful when DFT results shall be compared to spectroscopy, e.g., XPS. Unfortunately, core level energies cannot be extracted directly from usual VASP calculations, since the core level electrons are described by the parametrized PAW potentials.

Instead, separate calculations need to be done, of which two kinds are available: initial state and final state. Most settings can be similar to those of DOS calculations. For final state core levels, it is important that the unit cell is large enough since the whole electronic structure is affected by the removal of the respective electron. At least 50-100 atoms should be included into the cell. If the current cell is too small, consider multiplying it with the [modify_poscar.py script](add link)!

Initial State

The energies of the core level electrons are calculated in the actual system before any excitation takes place (therefore: initial state). To perform such a calculation, only add:

  • ICORELEVEL = 1

to the INCAR file! After performing the single point calculation, open the OUTCAR file and seach for:

the core state eigenenergies are
   1-  1s -10224.4810  2s -1257.8857  2p -1094.3492  3s -144.0040  3p -94.7441  3d -155.0985
   ....

Here, the core level energies of all orbitals included into the PAW cores of all atoms in the system are listed for the atoms with the same ordering as in the POSCAR. Search for the respective atom and orbital you need to calculate.

Final State

The energy of a certain core level orbital after emitting one electron from it into the valence band and relaxing the whole wave function is calculated. Since only one electron will be excited, it must be specified explicitly. The following keywords must be added to a usual single point calculation to initiate this:

  • ICORELEVEL = 2 Activates the final state mode

  • CLNT = [number] The number of the species which shall be exited (with respect to the element header line in the POSCAR file). Since only one atom shall be considered, a new species must be defined. This species will usually be located at the end of the elements list. To do this, POSCAR and POTCAR must be changed. In POSCAR, change the header, for example like this:

    Ni Ga H C 1 179 4 2

to

  Ni  Ga  H   C   C 
1   179  4  1   1

such that two carbon species are now present. Per convention, the last species (the last C atom) will now be the one for which the final state core level shall be calculated. Since we now have five instead of four elements in the system, add the "new" one to the POTCAR, in this case:

cat /location/potcar/PAW_PBE.52/C/POTCAR >> POTCAR