Skip to content

1. Basics and Functional Performance: ETFA

This part will show you the basics of ΔSCF calculations using the example molecule ETFA (ethyltrifluoroacetate). ETFA is an experimentally well-characterised molecule with a large spread of C 1s binding energies observed in the XPS data.

To simulate the XPS spectrum of a molecule using the ΔSCF method, we need to perform: - One ground-state calculation - One calculation of the system with a core hole per each symmetry inequivalent carbon atom.

As shown in Scheme 2, there are four chemically different carbon atoms in ETFA, leaving us with the ground state calculation and four hole calculations.

Scheme 2. Structure of the ETFA molecule and numbering scheme used in this tutorial.

The following file can be used for setting up the ETFA calculations:

atom       1.74342172      0.79233009     -2.38607740 C
atom       1.87225299      0.82531137     -0.83161745 C
atom       1.85983154     -0.55069881      1.10298970 C
atom       1.77609805     -2.02516635      1.42902523 C
atom       1.98731130      2.01031027     -2.90139852 F
atom       2.61557025     -0.08958676     -2.93832354 F
atom       0.48395202      0.42008648     -2.74324352 F
atom       2.00651584      1.84892786     -0.20216186 O
atom       1.78925481     -0.42316165     -0.35803629 O
atom       2.80240352     -0.09477382      1.43702621 H
atom       1.02799211      0.02628227      1.53157701 H
atom       0.83503378     -2.45818712      1.06497140 H
atom       2.61261424     -2.57849042      0.98265727 H
atom       1.81641784     -2.15921342      2.51833177 H

The Improved Basis Set

Suppose we want to calculate accurate absolute core-level binding energies from first principles. In that case, the basis sets used should be able to facilitate the relaxation of both the remaining core and valence electrons in the presence of a core hole. For example, suppose we remove a C 1s electron from a given atom. In that case, the remaining C 1s electron will tend to move significantly closer to the nucleus as it no longer experiences electron-electron repulsion with the electron that has been removed. In standard basis sets used in FHI-aims - and more generally in computational chemistry - each core state is described by exactly one basis function that has been optimised for the specific core level for the atom in the electronic ground state. In order to allow the remaining C 1s electron to relax, we must introduce additional basis functions that add flexibility to the core region. One way to do this in FHI-aims is to add the following hydrogenic basis functions in the species description for the C atom.

The additional basis functions to be included are taken from Kahk et al.1 and for a C 1s core hole are as follows:

Additional basis functions for an atom with a core hole
    hydro 1 s 10.0
    hydro 1 s 8.0
    hydro 1 s 4.0
    hydro 2 s 6.0

It is generally advisable to introduce a separate species definition for the C atom with a core hole, for example, C1, and only add the additional basis functions for that atom.

The downside is that a separate ground state calculation will need to be performed for every core hole, but the alternative - adding additional basis functions to every C atom - can significantly increase the computational cost and lead to convergence problems due to basis set over-completeness. In this example, we will include these in all the following calculations for simplicity.

Ground State Calculation

  1. Use the exchange-correlation functional PBE and add a tight-tier-2 basis set for all elements.
  2. Add the basis set augmentation from above to the basis set definition of carbon.
  3. Take care to use the keyword spin collinear, because we will introduce an uneven number of electrons with the core hole in the next step, and the wave function in the restart_file has to be compatible
  4. Run the calculation

The single point ground state calculation serves several purposes:

  • Optimise the settings for convergence, etc.
  • Obtain the reference energy for all calculations
  • Generate a restart_file, which is necessary for the use of the deltascf_projector functionality
  • Checks the localisation of the core states via exporting the wave function of all orbitals: output cube eigenstate N where \(N = 1\) to \(9\)

The table in the link below can be used to find an approximate expectation for the energy of a given core orbital. If this does not describe the core orbital energy well for a particular system, then the Mulliken output can be used, and finally, the cube file as a last resort.

For educational purposes, looking at the eigenstate cube files, we see that the states 1-3 are the F 1s core states, the states 4 and 5 are the O 1s core states, and the states 6-9 are the C 1s core states, which are the ones we are interested in.

As restart files generated by FHI-aims can be very large in size, it is advisable to create a symlink to the original location of the restart file rather than copying it or moving it across. This gets around the large i/o overhead from copying the file and keeps the file in the same location unlike moving it would do.

deltascf_projector Keyword

For the ETFA molecule, the C 1s states are energetically well separated. Therefore, we do not need to take special precautions and can directly address the core states 6 to 9 while using the deltascf_projector command.

The deltascf_projector keyword enforces a chosen electron occupation onto a chosen Kohn-Sham state and spin channel. Between SCF steps, the core hole can move between Kohn-Sham states that have a similar energy, such as degenerate states or similar atomic environments. The algorithm follows the overlap of the different KS-states involved, changing the occupation constraint automatically to the state based on the largest overlap value with the constrained state in the previous SCF step. This technique to enforce core-hole localisation through the SCF cycle is called the maximum overlap method (MOM).

The syntax for deltascf_projector is outlined as follows:

deltascf_projector KS_state spin occ KS_start KS_stop

  • KS_state is the state we want to constrain. Therefore, it will be set to 6 to 9 for the four respective carbon atoms we are interested in.
  • spin is the spin channel to be constrained. It is arbitrarily set to 1
  • occ is the occupation to which we constrain the state. Because we want to calculate XPS binding energies, we need a full core hole, and occ is set to 0.0. For a transition potential calculation, it would be set to 0.5.
  • KS_start and KS_stop limit the states that the MOM localisation procedure includes. KS_start should always be set to 1, while KS_stop should be set to the highest 1s state, in our case, 9.

Core Hole Calculation

Now we can perform core hole calculations using deltascf_projector:

  • Create a folder for each carbon atom
  • Copy the restart file from the previous single point calculation into each folder
  • Include the following keywords for each file:
  • charge = 1.0 to remove one electron from the system
  • deltascf_projector N 1 0.0 1 9, to constrain the missing electron as a core hole at one of the carbon atoms. Use \(N=6\) to \(9\) for the four different hole calculations
  • Run all four hole calculations

It is important to check for the proper localisation of the core hole. A straightforward option is to output the spin density by including the output cube spin_density keyword in the control file of each hole calculation. Alternatively, as mentioned above, it is also possible to check the Mulliken populations of the atoms. Note that experimentally, while the core hole is usually localised, this is not always the case, and it is at this point that the ΔSCF approximation breaks down. As ΔSCF requires the core hole to be localised to obtain reasonable results, we recommend not using ΔSCF for these systems.2

Calculating the Core-Electron Binding Energies

We can now calculate each core-electron binding energy \(E_B\) as the difference in total energies according to equation (3). For this, we need to take the total energies of each hole calculation and subtract the total energy of the previous ground state reference calculation. The results for all four carbon atoms are summarised in Table 1.

Table 1. Absolute and relative C 1s binding energies for ETFA, calculated using the deltascf_projector keyword with the PBE functional. All values are given in eV.

Carbon Atom Absolute Binding Energy Shift Relative to C4
C1 297.52 6.73
C2 294.52 3.73
C3 292.32 1.53
C4 290.79 0.00

Using a Different Functional

We can use ETFA as a test bed to check for functional performance. We, therefore, repeat the ground state and hole calculations with the same settings, just changing PBE to scan to get the binding energies for the SCAN meta-GGA functional. The results for all four carbon atoms are summarised in Table 2.

Table 2. Absolute and relative C 1s binding energies for ETFA, calculated using the deltascf_projector keyword with the SCAN functional. All values are given in eV.

Carbon Atom Absolute Binding Energy Shift Relative to C4
C1 298.78 7.14
C2 295.72 4.08
C3 293.24 1.60
C4 291.64 0.00

Simulation of Experimentally Observed Broadening

In order to simulate the broadening that is observed in experimental spectra, it is possible to apply a broadening scheme to each of the Dirac peaks generated from the computations. Below, we describe our approach to broaden the spectra to enable direct comparison with the experiment; however, other options are available depending on your specific use case.

The binding energies obtained by the ΔSCF calculations neglect lifetime-broadening effects. Therefore, to compare with experiment, we apply an empirical broadening to the infinitely sharp peaks obtained from the calculations.

An experimental line shape is often approximated by assuming a Gaussian, Lorentzian, or convoluted Gaussian–Lorentzian (i.e., Voigt) function for each atomic peak. The lifetime effects of the excited states justify the Lorentzian broadening. In contrast, Gaussian broadening simulates experimental effects (e.g., analyser resolution or uncertainty in the energy of the exciting radiation).

A simplified way to incorporate both kinds of broadening into the simulated spectra is by using a pseudo-Voigt function, which reduces the convolution needed for a proper Voigt function to a summation or multiplication operation. A convenient expression of a summation based Pseudo Voigt was published by Schmid et al.3 and is employed in this tutorial.

When using pseudo-Voigt functions, the parameters for line width (full width at half maximum, FWHM) and the peaks' Gaussian–Lorentzian (GL) ratio are chosen according to the expected or observed experimental resolution. The summation of all peak functions leads to a spectral shape comparable to what is commonly observed in experiments.

Comparison with Experimental Data

The binding energies from Tables 1 and 2 were broadened according to the method described above using a FWHM of 0.5 eV and a GL-ratio of 0.3. The results are plotted together with the experimental data of Travnikova et al.4 on a relative energy scale in Figure 1.

Figure 1. Comparison of the calculated and experimental C 1s XP spectrum of gas-phase ETFA.

As can be seen, the SCAN results compare better with the experiment than the PBE results. However, both methods have problems reproducing the extreme chemical shifts of C1 introduced by the three fluorine substituents. Note that the experimental data has been taken from Travnikova et al.4


  1. J.M. Kahk, G.S. Michelitsch, R.J. Maurer, K. Reuter, J. Lischner, J Phys. Chem. Lett. 2021, 12, 9353-9359. 

  2. K. Ueda, R. Püttner, N. A. Cherepkov, F. Gel'mukhanov, M. Ehara, Eur. Phys. J. Spec. Top. 2009, 169, 95-107. 

  3. M. Schmid,H.-P. Steinrück, J.M. Gottfried, Surf. Interface Anal. 2014, 46, 505. and Surf. Interface Anal. 2015, 47, 

  4. O.Travnikova, K.J. Børve, M. Patanen, J. Söderström, C. Miron, L.J. Sæthre, N. Mårtensson, S. Svensson, Journal of Electron Spectroc. Rel. Phenom. 2012, 185, 191.