Excitation energies: UV/Vis, X-ray, CD, MCD

Ultraviolet-visible (UV/Vis) spectroscopy studies electronic excitations of valence electrons, whereas X-ray spectroscopy studies electronic excitations of core electrons. Excitation energies and oscillator strengths are all available in ADF as applications of time-dependent DFT (TD-DFT). Excitation energies can be calculated for closed-shell as well as for open-shell molecules. It is also possible to include spin-orbit coupling and to calculate core excitations (X-ray absorption spectra). Circular dichroism (CD) is the differential absorption of left- and right-handed circularly polarized light. Starting from AMS2023 it is also possible to calculate excitation energies and oscillator strengths using the GW-Bethe-Salpeter equation (GW-BSE) formalism.

Tip

See also the ADF Advanced TD-DFT tutorial: TDDFT Study of 3 different Dihydroxyanthraquinones

Excitation energies, UV/Vis spectra

You can perform a calculation of singlet-singlet and singlet-triplet excitation energies of a closed-shell molecule by supplying in the input file the block key EXCITATIONS. See the next sections for settings of technical parameters, the calculation of excitation energies for open shell molecules, inclusion of spin-orbit coupling, and the calculation of CD spectra.

EXCITATIONS
 EXACT
   {IRREP1 N1}
   {IRREP2 N2}
 END
 DAVIDSON
   {IRREP3 N3}
   {IRREP4 N4}
 END
 ALLOWED
 ONLYSING
 ONLYTRIP
 LOWEST nlowest
End

Several options can be addressed with subkeys in the data block. This functionality is based on TD-DFT and consequently has a different theoretical foundation than the SCF techniques described elsewhere in this User’s Guide. Two possible ways are available to solve the eigenvalue equation from which the excitation energies and oscillator strengths are obtained, of which the iterative Davidson procedure is the default. In this case, the program needs to know how many excitation energies are needed per irrep, what accuracy is required, and what type of excitation energies are required (singlet-singlet or singlet-triplet). Suitable defaults have been defined for all of these. Each of these points is discussed below.

Exact diagonalization vs. iterative Davidson procedure

The most straightforward procedure is a direct diagonalization of the matrix from which the excitation energies and oscillator strengths are obtained. Since the matrix may become very large, this option is possible only for very small molecules. It can be activated by specifying the block EXACT as one of the subkeys in the Excitations data block. The default is the iterative Davidson method. A few of the lowest excitation energies and oscillator strengths are then found within an error tolerance. An advantage of the EXACT option is that additional information is produced, such as the Cauchy coefficients that determine the average dipole polarizability. The EXACT option can not be used in unrestricted calculations.

Singlet versus triplet

By default, the singlet-singlet and singlet-triplet excitation energies are both calculated. The singlets are handled first, then the corresponding triplet excitation energies. One can skip one of these two parts of the calculation by specifying either ONLYSING or ONLYTRIP as a subkey in the data block.

In case of a calculation including spin-orbit coupling one can not separate the singlet-singlet and singlet-triplet excitations. The subkeys ONLYSING and ONLYTRIP are misused in this case to do a spin-restricted calculation, or a spin-polarized calculation, respectively. One should in fact only use the results of the spin-polarized calculation.

Dipole-allowed versus general excitations.

If you are interested in the optical absorption spectrum, you may not want to compute singlet-triplet excitation energies, nor singlet-singlet excitation energies which, by symmetry, have zero oscillator strengths. This subkey should not be used in case of spin-orbit coupling. The subkey ALLOWED tells ADF to treat only those irreducible representations for which the oscillator strengths will be nonzero. Of course, the oscillator strengths may still be negligibly small. The ALLOWED subkey automatically implies ONLYSING. The simplest, fastest, and recommended way to obtain information about the ten lowest dipole-allowed excitation energies would be:

EXCITATIONS
 ALLOWED
 LOWEST 10
END
Which excitation energies and how many?

The user can specify how many excitation energies per irrep should be calculated. If no pertaining input is available the program determines these numbers from the smallest differences between occupied and virtual Kohn-Sham orbital energies. By default it looks at the 10 lowest orbital energy differences. This number can be modified, by specifying inside the Excitation block key, for example:

LOWEST 30

One should be aware that this procedure does not guarantee that the lowest 10 (or 30) excitation energies will actually be found, since the orbital energy difference approximation to the excitation energy is rather crude. However, if the program decides on the basis of this procedure to calculate 4 excitation energies in a certain irreducible representation, these 4 excitation energies are certainly the lowest in that particular irrep.

The user has more control when the number of excitations per irrep is explicitly specified within the EXCITATIONS block key by the Davidson subkey:

DAVIDSON
 E'' 5
 T1.u 2
END

The DAVIDSON sub block may contain any number of records and must end with a record END. In the subkey data block a list of irreps, followed by the number of requested excitation energies is specified. Note that the irrep name may not be identical to the usual ADF name. For example E’’ is called EEE in ADF. The Excitation code will skip an irrep if the label is not recognized. For multidimensional irreps, only the first column is treated, because the other would produce identical output. This implies that the oscillator strengths for E-irreps have to be multiplied by 2 and the oscillator strengths for T-irreps by 3. The ALLOWED subkey should not be used if irreps are specified with the Davidson block subkey, however, the subkey ONLYSING (or ONLYTRIP) can be used in this case.

The EXACT sub-block, mentioned already above, can also be used to treat only a few irreps instead of all. The number of excitation energies does not have to be specified then.

Some early applications of the Excitation feature in ADF can be found in Refs. [45] [46] [47] [48] [49] [50].

In case of closed shell molecules the unrelaxed excited state electric dipole moment is calculated, see Ref. [60]. In case of a TDDFT-gradients calculation also the relaxed excited state electric dipole moment is calculated. For the definition of unrelaxed and relaxed excited state density, see Ref. [59].

Tamm-Dancoff approximation

Excitation energies can be calculated using the Tamm-Dancoff approximation (TDA) [1] if one includes, besides the EXCITATIONS block key, the key TDA:

TDA

GW-Bethe-Salpeter equation (GW-BSE)

Starting from AMS2023 it is possible to calculate excitation energies using the GW-BSE method instead of TD-DFT. The implementation in ADF is described in Ref. [61] Currently, the BSE kernel is compatible with all options inside the XC block and also with the TDA and spin-orbit coupling. As GW-BSE uses the results of a GW calculation, GW-BSE should also not be used in combination with solvent models, like COSMO, or other environments. A GW-BSE calculation is performed by including the BSE key in the EXCITATIONS block,

EXCITATIONS
 ...
 BSE
END

In a GW-Bethe-Salpeter Equation calculation a GW calculation is performed to calculate single-particle energies and the screened electron-electron interaction which are then used to calculate optical excitation energies. In a hybrid-DFT calculation, KS-DFT single-particle energies and the unscreened electron-electron interaction are used instead to calculate optical excitation energies.

By default the G0W0 variant of the GW approximation is used in a BSE calculation. This can be changed in the GW block, see the GW description. Almost all options in the GW block are compatible with a BSE calculation. For open-shell systems, partially self-consistent GW options are currently not supported.

The recommended numerical settings for a GW-BSE calculation are the same as for a GW calculation, see the MBPT description. ADF uses Dependency bas=5e-3 and RIHartreeFock DependencyThreshold=5e-3 in case of (any variant of) GW and GW-BSE. This can be overwritten but it is not recommended to do so. It case of convergence problems and/or variational collapse it is recommended to switch on the MODIFYEXCITATION key and restrict the particle-hole basis in which the BSE is solved to particle-hole pairs with energy differences below for instance 2 Hartree.

For instance, one could do the following:

EXCITATIONS
 ...
 BSE
END

MODIFYEXCITATION
   UseOccVirtRange 0.0 2.0
END

GW
...
END

MBPT
...
END

Full XC kernel

With XCFUN the full (non-ALDA) kernel can be evaluated, see the XCFUN description. To use the non-ALDA kernel the keyword FULLKERNEL should be put in the EXCITATIONS block. FULLKERNEL can be used with GGAs (including hybrids and RS functionals) but not meta-GGAs or meta-hybrids. For some of the LibXC functionals (mostly GGA’s and hybrids) it also possible to use the Full (non-ALDA) kernel. FULLKERNEL can not be used in combination with excited state geometry optimizations or other response properties. If symmetry is used, recommended is to check that SYMMETRY NOSYM gives the same results.

XC
 ...
 XCFUN
End
EXCITATIONS
 ...
 FullKernel
END
XC
 LibXC ...
End
EXCITATIONS
 ...
 FullKernel
END

Singlet-triplet excitations are now also possible with FULLKERNEL.

Plasmons in Molecules

In Ref. [2] a scaling approach was used to identify plasmons in molecules. To identify plasmons in general molecules, they proposed to analyze the excitations by scaling the electron-electron interaction in the response calculation. While single-particle excitations are only slightly affected by this scaling, plasmonic excitations are sensitive to variations in the scaling parameter \(\lambda\). More specifically, their squared excitation energies should increase linearly with the scaling parameter \(\lambda\). Scaling of Coulomb, XC, and HF parts of the response kernel in TD-DFT, can be performed using the subkeywords SCALECOUL, SCALEXC, SCALEHF in the EXCITATIONS block.

EXCITATIONS
   SCALECOUL scalecoul
   SCALEXC   scalexc
   SCALEHF   scalehf
END
SCALECOUL scalecoul

Scaling of Coulomb kernel with scale parameter scalecoul.

SCALEXC scalexc

Scaling of the XC-kernel (excluding a possible HF-part) with scale parameter scalexc.

SCALEHF scalehf

Scaling of the HF part of the kernel with scale parameter scalehf.

Transition dipole moments between excited states

In Ref. [60] transition dipole moments (electric dipole approximation) between different excited states are calculated. In ADF these transition dipole moments between different calculated excited states can be calculated if the subkey ESESTDM is included. Spin-orbit coupling can also be included. Only implemented for closed shell molecules.

EXCITATIONS
   ESESTDM
END
ESESTDM

Compute transition dipole moments between excited states.

Accuracy and other technical parameters

For details regarding the (near linear scaling and parallelized) implementation, please check Refs. [3] [4].

A summary of technical parameters with their defaults is:

EXCITATIONS
 VECTORS 40
 TOLERANCE 1e-6
 ORTHONORMALITY 1e-8
 ITERATIONS 200
 KFWRITE 3
END
VECTORS vectors

The maximum number of trial vectors in the Davidson algorithm for which space is allocated. If this number is small less memory will be needed, but the trial vector space is smaller and has to be collapsed more often, at the expense of CPU time. The default if usually adequate.

TOLERANCE tolerance

Specifies the error tolerance in the square of the excitation energies in Hartree units. The default is probably acceptable but we recommend that you verify the results against a stricter default (e.g. 1e-8) for at least a few cases. In case of a BSE calculation, the default is 1e-5.

ORTHONORMALITY orthonormality

The Davidson algorithm orthonormalizes its trial vectors. Increasing the default orthonormality criterion increases the CPU time somewhat, but is another useful check on the reliability of the results.

ITERATIONS iterations

The maximum number of attempts within which the Davidson algorithm has to converge. The default appears to be adequate in most cases.

KFWRITE kfwrite

If kfwrite is 0 then do not write contributions, transition densities, and restart vectors to adf.rkf, since this can lead to a huge adf.rkf, especially if many excitations are calculated. Default value kfwrite is 3, which means that contributions, transition densities, and restart vectors are written to adf.rkf.

Excitation energies for open-shell systems

Excitation energies can be obtained for open-shell systems in a spin-unrestricted TDDFT calculation [5]. To perform an open-shell TD-DFT calculation (unrestricted TDDFT) one just needs to do an unrestricted SCF calculation and use the EXCITATIONS keyword. For ROKS TDA-DFT [10] in addition one needs to include the subkey ROSCF of the key SCF and the the key TDA (Tamm-Dancoff approximation). Presently the excitation energies can only be found with Davidson’s procedure. In case of spin-orbit coupling, see the section on spin-orbit coupled excitation energies open shell molecule.

The printed symmetry in the output in TDDFT calculations is actually the symmetry of transition density. For closed-shell systems, the symmetry of the excited state is the same as the symmetry of the transition density, while for open-shell systems, the symmetry of the excited states is the direct product between the symmetry of the transition density and the ground state symmetry. Note that the ground state symmetry of an open shell molecule is not necessarily A1.

For degenerate representations such as the 2-dimensional E-representations or the 3-dimensional T-representations, the occupation should be either fully occupied or zero. For example, for an orbital in an E-representation the \(\alpha\) and \(\beta\) occupation number should be either 2 or 0. The \(\alpha\) occupation number can of course be different from the \(\beta\) occupation number.

Unrestricted TDDFT

In case of unrestricted TDDFT the spin of the excited state is not well defined. As for the spin-state in unrestricted TDDFT, the general rule is that if the excited state mainly results from transitions from the singly occupied orbitals to virtual orbitals or from fully occupied orbitals to the singly occupied orbitals, the spin state of the excited state should roughly be the same as that of the ground state. However, if the excited state mainly comes from transitions from fully occupied orbitals to virtual orbitals, the spin state of the excited state are usually a mixture since TDDFT can only deal with single excitations within adiabatic approximation for the XC kernel [7]. Sometimes we just suppose the spin state of this kind of excited states to be the same as that of ground state [5]. In the MO → MO transitions part for the excitations of the output file, the spin of each molecular orbitals are also specified to help assign the spin state of the excited states. The transitions are always from \(\alpha\) spin-orbital to \(\alpha\) spin-orbital or from \(\beta\) spin-orbital to \(\beta\) spin-orbital.

Excited state gradients can be calculated.

Unrestricted TDDFT: spin-flip excitations

Spin-flip excitation energies [8] [9] can only be calculated with Tamm-Dancoff approximation (TDA) [1] and Davidson’s method. This unrestricted TDDFT method can not be used in case of spin-orbit coupling. Excited state gradients can be calculated.

To calculate spin-flip excitation energies, one must specify two keys SFTDDFT and TDA:

SFTDDFT
TDA
Unrestricted
SpinPolarization spinpolarization
EXCITATIONS
   {...}
End

For open-shell molecules, spin-flip transition can result in transition to the ground state with a different Sz value, while the symmetry of the transition density is A1. The excitation energy of this transition should be zero and this can be used to test the reliability of spin-flip TDDFT.

The symmetry of the excited states can be determined in the same way as that in spin-unrestricted TDDFT calculations. As for the spin state, similar to that in the spin-unrestricted TDDFT calculations, some states may be more or less pure spin states, others may just be mixtures. The users can interpret the excited state through the transitions that contribute to this state. Note that the transitions are always from \(\alpha\) spin-orbital to \(\beta\) spin-orbital in spin-flip calculations, or from \(\beta\) spin-orbital to \(\alpha\) spin-orbital.

ROKS TDA-DFT

In case of ROKS-TDA-DFT [10] the spin of the excited state is well defined. The default is that the spin of the excited state is the same as that of the ground state (\(S_{excited} = S_{ground state}\)). In spin-flip ROKS TDA-DFT calculations the spin of the excitation is 1 higher than the spin of the ground state (\(S_{excited} = S_{ground state} + 1\)). The case where the spin of the excitation is 1 lower than the spin of the ground state is not implemented. This ROKS TDA-DFT method can be used in case of spin-orbit coupling if one includes spin-orbit coupling perturbatively, see spin-orbit coupled excitation energies open shell molecule.

There are several flavours of spin-conserved ROKS TDA-DFT [10] [30], namely R-TDA [7], S-TDA [34], and X-TDA [35]. R-TDA is the original restricted open-shell TD-DFT method within the TDA by Rinkevicius and co-workers. S-TDA stands for spin-adapted TD-DFT within TDA in which also triplet coupled closed-to-virtual single excitation are incorporated. S-TDA is the default method in ADF. When one applies RPA corrections to the frequency-independent kernel in S-TDA, one obtaines the X-TDA method. Li and Liu have shown that X-TDA is just as good as S-TDA but due to simplicity, X-TDA may be more efficient. Note that for X-TDA the calculation of HF exchange integrals is needed, thus for LDA and GGA functionals one needs to include the key HARTREEFOCK.

Excited state gradients can not be calculated with ROKS-TDA-DFT.

The ROKS method implemented in ADF needs integer occupation numbers, and a positive spin polarization, see ROKS for high spin open shell molecules. It requires the subkey ROSCF of the key SCF (and the keyword UNRESTRICTED, and the key SPINPOLARIZATION), and the the key TDA (Tamm-Dancoff approximation), thus add:

TDA
Scf
   ROSCF
   End
End
Unrestricted
SpinPolarization spinpolarization
EXCITATIONS
   {...}
End

The type of spin-conserved ROKS TDA-DFT can be defined with:

Excitations
   ROKSTDDFTType [R-TDA | S-TDA | X-TDA]
End
Excitations
ROKSTDDFTType
Type:

Multiple Choice

Default value:

S-TDA

Options:

[R-TDA, S-TDA, X-TDA]

Description:

Specifies the type of method to be used in case of ROKS-TDA-DFT spin conserved excitations. SF-TDA will be used in case of spin-flip excitations.

ROKS TDA-DFT: spin-flip excitations

In spin-flip ROKS TDA-DFT (SF-TDA) calculations the spin of the excitation is 1 higher than the spin of the ground state. For example if the groud state is a doublet, then the excited states in spin-flip ROKS TDA-DFT will be quartet states. Excited state gradients can not be calculated with ROKS-TDA-DFT.

To calculate ROKS TDA-DFT spin-flip excitation energies, one must specify:

SFTDDFT
TDA
Scf
    ROSCF
    End
End
Unrestricted
SpinPolarization spinpolarization
EXCITATIONS
   {...}
End

Spin-flip excitations: ALDA kernel

In spin-flip unrestricted TDDFT and spin-flip ROKS-TDA, the XC kernel can be calculated directly from the XC potential. To use the LDA potential for the XC kernel, which roughly corresponds to the ALDA in ordinary TDDFT, one must specify the key

FORCEALDA

anywhere in the input file. Only calculations using the LDA potential in the SCF are fully tested. Using other GGA potentials in the SCF and using the FORCEALDA key at the same time may introduce unreasonable results, while using LB94 or SAOP potential in the SCF without the FORCEALDA key may give unstable results. Unstable results have been reported for the PW91 functional. In AMS2025 the stability of the results without using the FORCEALDA key have been improved by using for small spin-polarization densities the same as if the FORCEALDA key was used.

Select (core) excitation energies, X-ray absorption

Two methods can be used to reduce the computational costs of, for example, core excitation energies, or some other high lying excitation energy. In the state selective method scheme a guess vector for the orbital transition has to be provided. An overlap criterion is used to follow the wanted eigenvector. In this scheme the one-electron excited state configuration space remains complete, see Ref [12]. In the second scheme, the range of excitations that are calculated is modified, which means that the one-electron excited state configuration space is reduced to the interesting part, see Ref. [11]. The calculated excited states are more accurate with the state selective method if convergence is reached, however, the second scheme is more robust, and it is easier to find convergence.

These selection methods can, for example, also be used in case one calculates excitation energies as Kohn-Sham orbital energy differences, see subkey SINGLEORBTRANS of the key EXCITATIONS.

For X-ray spectra it can be important to include quadrupole intensities.

State selective optimization excitation energies

The state selective method (key SELECTEXCITATION) can be used to reduce the computational costs of, for example, core excitation energies. In this scheme a guess vector for the orbital transition has to be provided. It should be used in combination with the Davidson method to calculate excitation energies. An overlap criterion is used to follow the wanted eigenvector. This method for state selective optimization of excitation energies is based on the method by Kovyrshin and Neugebauer, see Ref. [12]. This key can also be used in case of spin-orbit coupling. The use of the key SELECTEXCITATION is similar as the use of the key MODIFYEXCITATION. However, the key SELECTEXCITATION can not be used in combination with the key MODIFYEXCITATION. In the state selective method (key SELECTEXCITATION) the one-electron excited state configuration space remains complete, whereas it is reduced in case the scheme with the MODIFYEXCITATION key.

The starting guess vector(s) for the excitation energies can be selected, for example by selecting 1 occupied orbital and 1 virtual orbital.

SELECTEXCITATION
   OscStrength oscstrength
   UseOccVirtRange elowoccvirt ehighoccvirt
   UseOccVirtNumbers nrlowoccvirt nrhighoccvirt
   UseOccRange elowocc ehighocc
   UseVirtRange elowvirt ehighvirt
   UseOccupied
      irrep orbitalnumbers
      irrep orbitalnumbers
      ...
   SubEnd
   UseVirtuaL
      irrep orbitalnumbers
      irrep orbitalnumbers
      ...
   SubEnd
   UseScaledZORA
end
OscStrength oscstrength

Use only pairs of an occupied and virtual orbital as guess vectors, for which the oscillator strength of the single-orbital transition is larger than oscstrength.

UseOccVirtRange elowoccvirt ehighoccvirt

Use only pairs of an occupied and virtual orbital as guess vectors, for which the orbital energy difference is between elowoccvirt and ehighoccvirt (in hartree). If one is interested in the lowest excitation energies, use for elowoccvirt a value smaller than the HOMO-LUMO gap, and for ehighoccvirt a value larger than the energy range one is interested in.

UseOccVirtNumbers nrlowoccvirt nrhighoccvirt

Use only pairs of an occupied and virtual orbital as guess vectors, for which in the sorted list of the orbital energy differences, the number of the single-orbital transition is between nrlowoccvirt and nrhighoccvirt.

UseOccRange elowocc ehighocc

Use only occupied orbitals in the guess vectors which have orbital energies between elowocc and ehighocc (in hartree).

UseVirtRange elowvirt ehighvirt

Use only virtual orbitals in the guess vectors which have orbital energies between elowvirt and ehighvirt (in hartree).

UseOccupied

Use only the occupied orbitals in the guess vectors which are specified.

UseVirtual

Use only the virtual orbitals in the guess vectors which are specified.

irrep

The name of one of the irreducible representations (not a subspecies) of the point group of the system. See the Appendix for the irrep names as they are used in ADF.

orbitalnumbers

A series of one or more numbers: include all numbers of the orbitals in the guess vectors that are to be used. In an unrestricted calculation the same numbers are used for the spin-\(\alpha\) orbitals and the spin-\(\beta\) orbitals.

Modify range of excitation energies

The key MODIFYEXCITATION can be used to reduce the computational costs of, for example, core excitation energies. This key can also be used in case of spin-orbit coupling. The use of the key MODIFYEXCITATION is similar as the use of the key SELECTEXCITATION. However, the key MODIFYEXCITATION can not be used in combination with the key SELECTEXCITATION. In the state selective method (key SELECTEXCITATION) the one-electron excited state configuration space remains complete, whereas it is (effectively) reduced in case the scheme with the MODIFYEXCITATION key.

One possibility is to allow only selected occupied orbitals and or selected virtual orbitals in the TDDFT calculations. In this scheme the complete one-electron excited state configuration space is reduced to the subspace where only the core electrons are excited, see Stener et al. [11]. In the actual implementation this is done by artificially changing the orbital energies of the uninteresting occupied orbitals to a large negative value (default -1d6 Hartree), and by by artificially changing the orbital energies of the uninteresting virtual orbitals to a large positive value (default 1d6).

In ADF2010 an extra possibility is added with the new subkey UseOccVirtRange, which restricts the space of excitation energies, by allowing only pairs of occupied and virtual orbitals, for which the difference in orbital energy is between a certain range.

MODIFYEXCITATION
   OscStrength oscstrength
   UseOccVirtRange elowoccvirt ehighoccvirt
   UseOccVirtNumbers nrlowoccvirt nrhighoccvirt
   UseOccRange elowocc ehighocc
   UseVirtRange elowvirt ehighvirt
   UseOccupied
      irrep orbitalnumbers
      irrep orbitalnumbers
      ...
   SubEnd
   UseVirtuaL
      irrep orbitalnumbers
      irrep orbitalnumbers
      ...
   SubEnd
   SetOccEnergy esetocc
   SetLargeEnergy epsbig
   UseScaledZORA
end
OscStrength oscstrength

Use only pairs of an occupied and virtual orbital as guess vectors, for which the oscillator strength of the single-orbital transition is larger than oscstrength.

UseOccVirtRange elowoccvirt ehighoccvirt

Use only pairs of an occupied and virtual orbital, for which the orbital energy difference is between elowoccvirt and ehighoccvirt (in hartree).

UseOccVirtNumbers nrlowoccvirt nrhighoccvirt

Use only pairs of an occupied and virtual orbital as guess vectors, for which in the sorted list of the orbital energy differences, the number of the single-orbital transition is between nrlowoccvirt and nrhighoccvirt.

UseOccRange elowocc ehighocc

Use only occupied orbitals which have orbital energies between elowocc and ehighocc (in Hartree).

UseVirtRange elowvirt ehighvirt

Use only virtual orbitals which have orbital energies between elowvirt and ehighvirt (in Hartree).

UseOccupied

Use only the occupied orbitals which are specified.

UseVirtual

Use only the virtual orbitals which are specified.

irrep

The name of one of the irreducible representations (not a subspecies) of the point group of the system. See the Appendix for the irrep names as they are used in ADF.

orbitalnumbers

A series of one or more numbers: include all numbers of the orbitals that are to be used. In an unrestricted calculation the same numbers are used for the spin-\(\alpha\) orbitals and the spin-\(\beta\) orbitals.

SetOccEnergy esetocc

All occupied orbitals that have to be used will change their orbital energy to esetocc. In practice only useful if one has selected one occupied orbital energy, and one want to change this to another value. Default: the orbital energies of the occupied orbitals that are used are not changed.

SetLargeEnergy epsbig

The orbital energies of the uninteresting occupied orbitals are changed to -epsbig Hartree, and the orbital energies of the uninteresting virtual orbitals are changed to epsbig Hartree (Default: epsbig = 1d6 Hartree).

UseScaledZORA

Use everywhere the scaled ZORA orbital energies instead of the ZORA orbital energies in the TDDFT equations. This can improve deep core excitation energies. Only valid if ZORA is used. Default: use the unscaled ZORA orbital energies.

Excitations as orbital energy differences

Instead of the relative expensive TDDFT calculation of excitation energies, sometimes just calculating Kohn-Sham orbital energy differences may already be useful. The subkeyword SINGLEORBTRANS in the block key EXCITATIONS, will calculate excitation energies as Kohn-Sham orbital energy differences. The subkeyword SINGLEORBTRANS in the block key EXCITATIONS replaces the obsolete key KSSPECTRUM. For a given excitation from an occupied orbital to a virtual orbital the oscillator strength is calculated from the the dipole transition moment between this occupied orbital and this virtual orbital. This method is best suited if LDA or a GGA is used in the SCF.

Especially useful for core excitation energy calculations. If SINGLEORBTRANS is used, it is possible to use fractional occupation numbers in the SCF, like is used in the DFT transition state (DFT-TS) scheme, see, for example, Ref. [15]. Note: for fractional occupation numbers, typically an orbital is treated in the excitation calculation as if it is fully occupied if the occupation number is 1.5 or more, and it is treated as if it is fully unoccupied if the occupation number is 0.5 or less. In the transition state procedure for core excitations half an electron is moved from an initial core orbital to final virtual orbital and the SCF KS eigenvalue difference is taken as excitation energy. This is the original Slater formulation and is justified doing a Taylor expansion of total energy with respect to occupation numbers, it can be shown that errors arise from third order terms which are small. This, however, is not very practical: to converge SCF by putting half an electron in virtual orbitals is very hard, usually it works only for the lowest virtuals. In order to avoid this problem one neglects the half an electron in virtual, this scheme (only half an electron removed from occupied orbital) is called Transition Potential (TP) and is widely employed in XAS from K-edges.

EXCITATIONS
 SingleOrbTrans
END
SingleOrbTrans

keyword to use only orbital energy differences

The value for the subkeyword KFWRITE in the EXCITATIONS block key is set by default to 0 in case of SINGLEORBTRANS. If kfwrite is 0 then do not write contributions, transition densities, and restart vectors to adf.rkf, since this can lead to a huge adf.rkf, especially if many excitations are calculated.

Quadrupole intensities in X-ray spectroscopy

For electronic excitations in the ultraviolet and visible range of the electromagnetic spectrum, the intensities are usually calculated within the dipole approximation, which assumes that the oscillating electric field is constant over the length scale of the transition. For the short wavelengths used in hard X-ray spectroscopy, the dipole approximation may not be adequate. In particular, for metal K-edge X-ray absorption spectroscopy (XAS), it becomes necessary to include higher-order contributions. An origin-independent calculation of quadrupole intensities in XAS was implemented in ADF by Bernadotte et al., see Ref. [16]. These quadrupole intensities may also be important for the calculation of X-ray emission spectroscopy, see section on XES. Can not be used in combination with spin-orbit coupling.

Usage

EXCITATIONS
  ...
  XAS
  {ALLXASMOMENTS}
  {ALLXASQUADRUPOLE}
END
XAS

Use XAS within the EXCITATIONS block to initiate the calculation of the higher oder multipole moment integrals and the calculation of the quadrupole oscillator strengths. This will only print the total oscillator strength and the excitation energy.

ALLXASMOMENTS

Use ALLXASMOMENTS within the EXCITATIONS block in combination with the XAS keyword. This will print out all the individual transition moments used within the calculation of the total oscillator strength.

ALLXASQUADRUPOLE

Use ALLXASQUADRUPOLE within the EXCITATIONS block in combination with the XAS keyword. This will print out the individual oscillator strength components to the total oscillator strength.

The MODIFYEXCITATION or SELECTEXCITATION keyword could be used to select a core orbital.

XES: X-ray emission spectroscopy

For the calculation of XES (X-ray emission spectroscopy) spectra the approach of Ref. [17] is implemented in the ADF program by Atkins et. al., see Ref. [18]. This is a frozen orbital, one-electron ΔDFT approach which uses orbital energy differences between occupied orbitals to model the X-ray emission energies. Even though it is the simplest possible approximation for the calculation of XES spectra, it has been shown to work well for V2C-XES (valence-to-core X-ray emission spectroscopy) spectra of transition metal complexes.

The XES keyword initiates the calculation of X-ray emission energies to a core orbital. In addition to dipole oscillator strengths this keyword also triggers the calculation of the higher order moment integrals and the calculation of the quadrupole oscillator strengths. By default it calculates the emission to the first orbital in the first symmetry, often the deepest core orbital, and only prints the total oscillator strength and the excitation energy. Can not be used in combination with spin-orbit coupling.

XES
   {COREHOLE irrep number}
   {ALLXESMOMENTS}
   {ALLXESQUADRUPOLE}
END
COREHOLE irrep number

This allows the selection of the acceptor orbital for the calculation of the emission oscillator strengths. For example ‘COREHOLE A1 2’ calculates oscillator strengths to the orbital 2 in irrep A1.

ALLXESMOMENTS

Use ALLXESMOMENTS within the XES block. This will print out all the individual transition moments used within the calculation of the total oscillator strength.

ALLXESQUADRUPOLE

Use ALLXESQUADRUPOLE within the XES block. This will print out the individual oscillator strength components to the total oscillator strength.

Excitation energies and Spin-Orbit coupling

Spin-orbit coupling can be included in the TDDFT calculation of excitation energies. Two methods can be used in ADF. The first one includes spin-orbit coupling as a perturbation to a scalar relativistic calculation of excitation energies, in which spin-orbit coupling matrix elements (SOCMEs) between excited states are calculated. The second one includes spin-orbit coupling self-consistently in the ground state calculation. If spin-orbit coupling is large, the second one is more accurate for closed shell ground states, but is also more time-consuming. For open shell ground states the perturbative ROKS-TDA-SOC method is to be preferred over the highly approximate method which includes spin-orbit coupling self-consistently.

The results of these spin-orbit coupled TDDFT calculations include the calculation of the zero field splitting (ZFS) of triplet excited states in case of a closed shell ground state and the calculation of radiative rate constants, which could be used to calculate radiative phosphorescence lifetimes.

Perturbative inclusion of spin-orbit coupling

SOPERT
  {NCALC ncalc}
  {ESHIFT eshift}
  {GSCorr Yes/No}
End
Relativity
  Level Scalar
  Formalism ZORA
End
EXCITATIONS
END

The perturbative method, which is described in Ref. [19], is an approximate time-dependent density-functional theory (TDDFT) formalism to deal with the influence of spin-orbit coupling effect on the excitation energies for closed-shell systems. In this formalism scalar relativistic TDDFT calculations are first performed to determine the lowest single-group excited states and the spin-orbit coupling operator is applied to these single-group excited states to obtain the excitation energies with spin-orbit coupling effects included. The computational effort of the present method is much smaller than that of the two-component TDDFT formalism. The compositions of the double-group excited states in terms of single-group singlet and triplet excited states are obtained automatically from the calculations. In Ref. [19] it was shown that the calculated excitation energies based on the present formalism affords reasonable excitation energies for transitions not involving 5p and 6p orbitals. For transitions involving 5p orbitals, one can still obtain acceptable results for excitations with a small truncation error, while the formalism will fail for transitions involving 6p orbitals, especially 6p1/2 spinors. In AMS2025 a bug has been fixed such that one can use symmetry C(2H).

Although this method is not completely correctly implemented for (meta-)hybrids or Hartree-Fock, it still gives reasonable excitation energies, and can thus be useful also in that case.

NCALC=ncalc

Number of spin-orbit coupled excitation energies to be calculated. Default (and maximum) value: 4 times the number of scalar relativistic singlet-singlet excitations.

ESHIFT=eshift

The actually calculated eigenvalues are calculated up to the maximum singlet-singlet or singlet-triplet scalar relativistic excitation energy plus eshift (in Hartree). Default value: 0.2 Hartree.

GSCORR Yes/No

The singlet ground state is included, which means that spin-orbit coupling can also have some effect on energy of the ground state. The spin-orbit matrix in this case is on basis of the ground state and the singlet and triplet excited states. Default Yes.

Some extra information about the spin-obit matrix is written to the output if one includes

SOPERT
  {NCALC ncalc}
  {ESHIFT eshift}
  {GSCorr Yes/No}
End
PRINT SOMATRIX

If one includes PRINT SOMATRIX the spin-orbit matrix (in Hartree) on basis of singlet and triplet excited states will be printed. Note that a triplet has three sublevels. The numbering of the basis of singlets and triplets is given above the spin-orbit matrix. The spin-orbit matrix has a real and imaginary part. On the diagonal the singlet or triplet energies is added. This spin-orbit matrix is the one that is diagonalized to get the spin-orbit coupled excitation energies. For example, for the effect of spin-orbit coupling between T1 and S1 one finds 3 complex values, between the 3 sublevels of T1 and the one level of S1. For a magnitude one could take the square root of the (real part squared + imaginary part squared).

Starting from ADF2018 these spin-orbit coupling matrix elements (SOCMEs) are printed in an easier format in the ouput. The SOCME that is printed is calculated as a root mean square: square root of (the sum of squares of spin-orbit coupling matrix elements of all sublevels of the uncoupled states).

ROKS-TDA-SOC

The perturbative method ROKS-TDA-SOC method is described in Ref. [10], is an approximate time-dependent density-functional theory (TDDFT) formalism to deal with the influence of spin-orbit coupling effect on the excitation energies for open-shell systems. In ROKS-TDA-SOC spin-orbit coupling (SOC) is included perturbatively on top of a restricted open-shell Kohn–Sham (ROKS) time-dependent density functional theory, in which the Tamm–Dancoff approximation (TDA) is used. Thus scalar relativistic excited states are calculated with TDA-DFT, after which the Hamiltonian that includes SOC is diagonalized in the basis of these states.

The ROKS method implemented in ADF needs integer occupation numbers, and a positive spin polarization, see ROKS for high spin open shell molecules. It requires the subkey ROSCF of the key SCF (and the keyword UNRESTRICTED, and the key SPINPOLARIZATION), and the the key TDA (Tamm-Dancoff approximation), In order to perform ROKS-TDA-SOC calculations in addition one needs to include the keyword SOPERT. Symmetry can not be used. In such calculations both excitations with the same spin as the ground state (\(S_{excited} = S_{ground state}\)) and excitations with a spin 1 higher than the ground state (\(S_{excited} = S_{ground state} + 1\)) are automatically calculated. The latter spin-up excitation are automatically calculated after the spin-conserved excitations since they can couple with the spin-conserved excitation in the presence of spin-orbit spitting. The type of spin-conserved ROKS TDA-DFT that can be used is dexribed here.

UnRestricted
SpinPolarization spinpolarization
Symmetry NOSYM
Scf
   ROSCF
   End
End
TDA
SOPERT
End
Relativity
  Level Scalar
End
EXCITATIONS
END

Remark: with the subkey Excitations%Lowest one can specify the number of wanted excited states. If 2 numbers are provided the first number is the wanted excited states with same spin and the second number the wanted excited states with higher spin. For open shell excitations typically the excited states with higher spin than the ground state are higher in energy than those of the excited states with the same spin as the ground state.

Self-consistent spin-orbit coupling

Relativity
  Level Spin-Orbit
  Formalism ZORA
End
EXCITATIONS
  {ALSORESTRICTED}
END

Starting from the ADF2006.01 version in ADF the relativistic TDDFT formalism, including spin-orbit coupling, is implemented for closed-shell molecules with full use of double-group symmetry [20]. This relativistic time-dependent density-functional theory (TDDFT) is based on the two-component zeroth-order regular approximation (ZORA) and a noncollinear exchange-correlation (XC) functional. This two-component TDDFT formalism has the correct non-relativistic limit and affords the correct threefold degeneracy of triplet excitations. In AMS2025 a bug has been fixed such that one can use symmetry C(2H).

Starting from AMS2023 spin-orbit coupling can be included in the calculation of CD spectra [32], see section on CD spectra.

In case of a calculation including spin-orbit coupling one can not separate the singlet-singlet and singlet-triplet excitations. By default the spin-polarized excitation energies are calculated (the noncollinear scheme is used for the spin-dependent exchange-correlation kernel). The subkeys ALSORESTRICTED can be used to include also excitation energies in which a spin-restricted exchange-correlation kernel is used. One should in fact only use the results of the spin-polarized calculation, which is based on the noncollinear exchange-correlation (XC) functional. For the same reason, the ALLOWED subkey should not be used if spin-orbit coupling is included.

To perform a spin-orbit coupled TDDFT calculation one just needs to do a spin-orbit coupled SCF calculation and use the EXCITATIONS keyword. The molecule needs to be closed shell, and should be calculated spin-restricted. Thus do not use the UNRESTRICTED, COLLINEAR, or NONCOLLINEAR keyword. See, however, also next section.

The contribution to the double group excited states in terms of singlet and triplet single group excited states can be estimated through the inner product of the transition density matrix obtained from two-component and scalar relativistic TDDFT calculations to better understand the double group excited states [21]. In order to get this analysis one needs to perform a scalar relativistic TDDFT calculation of excitation energies on the closed shell molecule first, and use the resulting adf.rkf as a fragment in the spin-orbit coupled TDDFT calculation of excitation energies, including the keyword STCONTRIB (Singlet and Triplet CONTRIButions):

STCONTRIB

This STCONTRIB analysis is not performed for (meta-)hybrids, unless one uses the Tamm-Dancoff approximation (TDA) approximation, but then it may also fail. If one wants a similar analysis for (meta-)hybrids one may consider to the perturbative inclusion of spin-orbit coupling in the calculation of excitation energies.

Note that if hybrids are used, the dependency key is automatically set, and this may effectively reduce the number of excitations, which may give problems in the STCONTRIB analysis. A workaround for these problems is to first calculate the scalar relativistic fragment without the EXCITATIONS keyword. Use the adf.rkf of this calculation as fragment in a scalar relativistic calculation with the EXCITATIONS keyword. Use the adf.rkf of the second calculation as fragment in the spin-orbit coupled calculation, including the STCONTRIB keyword.

Highly approximate spin-orbit coupled excitation energies open shell molecule

Excitation energies can be obtained for open-shell systems in a spin-unrestricted TDDFT calculation including spin-orbit coupling. This approximate method uses a single determinant for the open shell ground state. The Tamm-Dancoff approximation (TDA) is needed and symmetry NOSYM should be used. Best is to use the noncollinear approximation. For analysis it is advised to calculate the molecule also with the scalar relativistic spin-restricted method and use it as fragment in the spin-orbit coupled calculation. This will make it easier to identify the excitations.

Unrestricted
Symmetry NOSYM
Relativity
  Level Spin-Orbit
  Formalism ZORA
  SpinOrbitMagnetization NONCOLLINEAR
End
TDA
Excitations
End

Note that this approximate method for open shell molecules is not able to show the subtle effects of spin-orbit coupling. Some of the reasons are the approximate nature of the XC functionals for open shell molecules, the single determinant that is used for the open shell ground state, and that only single excitations are included in the excitation. If one does not include spin-orbit coupling the spin-unrestricted TDDFT approach introduces spin-contamination such that the result does not represent transitions between pure spin states. Inclusion of spin-orbit coupling will not simplify this. However, if spin-orbit coupling is large, then this method may help to identify excitations.

Note that the approximations made in this approximate method are much worse than for spin-orbit coupled TDDFT for closed shell systems. In that case one can get a reasonable description of the subtle effects of spin-orbit coupling, for example, for the zero-field splitting of a triplet excited state.

CV(n)-DFT: Constricted Variational DFT

In the constricted nth order variational density functional method (CV(n)-DFT) [22] [6] [23] the occupied excited state orbitals are allowed to relax in response to the change of both the Coulomb and exchange-correlation potential in going from the ground state to the excited state. This theory is not time-dependent nor is it based on response theory. It is instead variational in nature and has been termed constricted variational DFT or CV(n)-DFT.

Due to bugs in older versions it is important to use ADF2016.105 or later. In ADF2017 the relaxation density is a bit differently calculated than in ADF2016, which will slightly modify the results compared to ADF2016. In ADF2017 singlet-triplet excitations are added [24] There have been different working equations implemented in different modified versions of ADF. In ADF2016 and ADF2017 all CV-DFT excitation energies are calculated consistently, this is why some energies may differ from previously published values.

CV(n)-DFT requires an all electron basis set.

The CVNDFT block key regulates the execution of the CV(n)-DFT code, which calculates the singlet or triplet electronic excitations for the closed shell molecules. Note that one has to choose either singlet-singlet excitations (subkey ONLYSING in EXCITATIONS) or singlet-triplet excitations (subkey ONLYTRIP in EXCITATIONS), in case of CV(n)-DFT, one can not calculate them both in one run. The parameter n in (n) describes the order of this theory. There are two limiting cases implemented in the CV(n)-DFT code: n=2 and n= \(\infty\). Since CV(n)-DFT coincides in the second order with TDDFT, CV(n)-DFT code is designed as an extension of the EXCITATIONS module. Therefore, the EXCITATIONS block has to be present in the input file together with CVNDFT. CVNDFT takes all the information about the number of excitations and their symmetry from the EXCITATIONS block. Moreover, the TDDFT transition density vectors are used as an initial guess for the CV(\(\infty\))-DFT calculations.

There are a few approximations within the CV(\(\infty\))-DFT approach, therefore there are a few corresponding sub-blocks in the CVNDFT block. In the simplest case the TDDFT transition density U-vector is substituted into the infinite order CV(\(\infty\))-DFT excitation energy. This approximation corresponds to the CV_DFT sub-block, so the input fragment would look like this:

CVNDFT
  CV_DFT &
  SUBEND
END
EXCITATIONS
  ONLYSING|ONLYTRIP
  ...
END

In general, the U-vector has to be optimized with respect to the infinite order CV(\(\infty\))-DFT excitation energy. It is accomplished iteratively in the SCF-CV(\(\infty\))-DFT method [25], which is invoked when the SCF_CV_DFT sub-block is present. Therefore, there are input parameters that control the SCF procedure, i.e. the total number of iterations and tolerance. The corresponding input fragment would look like this:

CVNDFT
  ITERATION iter
  TOLERANCE tol
  SCF_CV_DFT &
    DAMPING mix
  SUBEND
END
EXCITATIONS
  ONLYSING|ONLYTRIP
  ...
END
iter

iter is the maximum number of iterations. Default 50.

tol

tol is the convergence criterion, i.e. the SCF-CV(\(\infty\))-DFT procedure stops when the given accuracy is achieved. Default 1e-4.

mix

mix is the relative weight of the new U-vector that is added to the one from the previous iteration (default value is mix=0.2).

Another feature of CV(\(\infty\))-DFT is a possibility to optimize (or relax) the molecular orbitals for the particular excitation. This is accomplished in the R-CV(\(\infty\))-DFT method, see for an application Ref. [26]. In the last case, the transition U-vector is frozen, while the orbitals are relaxed. For example, the input fragment which employs the U-vector from TDDFT would look like this:

CVNDFT
  ITERATION iter
  TOLERANCE tol
  R_CV_DFT &
    RELAXALPHA start_a_iter
    RELAXBETA  start_b_iter
    DAMPORBRELAX mix_relax
  SUBEND
END
EXCITATIONS
  ONLYSING|ONLYTRIP
  ...
END
start_a_iter

start_a_iter is the SCF cycle number at which the relaxation of \(\alpha\) orbitals starts. Default value 1.

start_b_iter

start_b_iter is the SCF cycle number at which the relaxation of \(\beta\) orbitals starts. Default value 1.

Since there is no optimization of the U-vector in R-CV(\(\infty\))-DFT, the relaxation of orbitals (either \(\alpha\) or \(\beta\) or both) should be turned on at the very first iteration.

mix_relax

The mix_relax parameter defines the relative weight of the new relaxation vector that is added to the one from the previous iteration (the default value is mix_relax=0.2).

Note that all tree methods can be used in the input file. The corresponding input fragment would look like this:

CVNDFT
  ITERATION iter
  TOLERANCE tol
  CV_DFT &
  SUBEND
  SCF_CV_DFT &
    DAMPING mix
  SUBEND
  R_CV_DFT &
    RELAXALPHA start_a_iter
    RELAXBETA  start_b_iter
    DAMPORBRELAX mix_relax
  SUBEND
END
EXCITATIONS
  ONLYSING|ONLYTRIP
  ...
END

In this case the U-vector will be optimized with respect to the infinite order CV(\(\infty\))-DFT excitation energy by the SCF-CV(\(\infty\))-DFT code and then supplied to the R-CV(\(\infty\))-DFT code.

CVNDFT prints in the output the excitation energies as well as the maximum value of the lambda parameter \(\lambda\). This number corresponds to the largest singular value of the singular value decomposition of the U matrix/vector (i.e. the U-vector can be considered as a matrix with nvir rows and nocc columns, where nvir is the number of virtual orbitals and nocc is the number of occupied orbitals). If this number is close to \(\pi / 2\) (i.e. \(\lambda_{max} \approx 1.57\)), then the corresponding electronic excitation can be approximated by a single natural transition orbital (NTO) to another single NTO transition. This type of transitions are obtained in \(\Delta\) SCF. Therefore, this information can be used, for example, to compare the CV(\(\infty\))-DFT results to the \(\Delta\) SCF excitation energies.

HDA, TD-DFT+TB, TDDFT-aas, sTDDFT

There are several approximations that can be made to speed up the TD-DFT excitation calculations that will be discussed here: HDA, TD-DFT+TB, TDA-DFT+TB, TDDFT-aas, sTDA, and sTDDFT. An alternative to these approximations is PolTDDFT, which is discussed in a different part of the ADF manual.

HDA: Hybrid Diagonal Approximation

This method is only relevant if a (meta-)hybrid is used in the SCF. The hybrid diagonal approximation (HDA) [58] is based on utilizing the hybrid exchange only for the diagonal terms in the response equations to calculate excitations. This allows one to limit the computational cost of the TD-DFT simulation while keeping basically the same accuracy as in the full TD-DFT scheme using hybrid xc-functionals. It is furthermore not necessary to correct all the diagonal terms with hybrid exchange. A cutoff parameter can be chosen in the input in order to reduce the number of diagonal terms that have to be calculated, which can speed up the HDA calculations.

EXCITATIONS
 HDA
 HDA_CutOff hda_cutoff
End
HDA

Activate the hybrid diagonal approximation (HDA).

hda_cutoff

Cutoff on difference in energy between virtual and occupied orbitals eps_virt-eps_occ, in order to reduce the number of diagonal terms that are corrected. Default is a huge value, which means that all diagonal terms are corrected.

This method can not be used in excited state geometry optimizations. For spin-orbit coupled HDA excitations one needs to use symmetry NOSYM:

relativity
 level spin-orbit
end
Symmetry NOSYM
EXCITATIONS
 HDA
 HDA_CutOff hda_cutoff
End

TD-DFT+TB, TDA-DFT+TB

The basic idea of TD-DFT+TB [27] is to use the molecular orbitals from a DFT ground state calculation as input to an excited state calculation with TD-DFTB coupling matrices. TB means tight binding. In ADF2023 TDA-DFT+TB is implemented, which is similar as TD-DFT+TB, but now using TDA. Starting from ADF2023 one can also use TD-DFT+TB and TDA-DFT+TB for open shell molecules. If many excitations are required, this method will speed up the calculation drastically in comparison to the standard time needed for TDDFT calculations of excitation energies. This method is best suited if a (meta-)GGA or LDA is used in the SCF. Since ADF2023 the TD-DFT+TB method can be used in excited state geometry optimizations in case of closed-shell singlet-singlet and closed shell singlet-triplet excitations, see Ref. [13].

For TD-DFT+TB use

SYMMETRY NOSYM
EXCITATIONS
  TD-DFTB
END

For TDA-DFT+TB use

SYMMETRY NOSYM
EXCITATIONS
  TDA-DFTB
END

One can use this, for example, in combination with the MODIFYEXCITATION key to use only single-orbital transitions that have a minimal oscillator strength:

SYMMETRY NOSYM
EXCITATIONS
  TD-DFTB
  ONLYSING
END
MODIFYEXCITATION
  OscStrength 0.001
End

In TD-DFT+TB reducing the space of single-orbital transitions with the key MODIFYEXCITATION will reduce the memory needed in ADF. Starting from ADF2016.102 for TD-DFT+TB only the lowest (in energy) 100000 single orbital transitions are included by default. One can override this by using a different value for the subkey UseOccVirtNumbers of the key MODIFYEXCITATION.

MODIFYEXCITATION
  UseOccVirtNumbers 1 100000
END

The value for the subkeyword KFWRITE in the EXCITATIONS block key is set by default to 0 in case of TD-DFT+TB. If kfwrite is 0 then do not write contributions, transition densities, and restart vectors to adf.rkf, since this can lead to a huge adf.rkf, especially if many excitations are calculated.

TDDFT-aas

TDDFT-aas [14] (TDDFT-approximate auxiliary s function) resembles the TDDFT-as method and the TDDFT+TB method: when solving the K coupling integrals in the excited state, an approximation is made instead of calculating the exact two-electron integrals. TDDFT-aas utilizes the \(\gamma_{AB}\) function from the TDDFT-as method to calculate the coupling matrix K:

\[\begin{split}K_{i a, j b}=\sum_{A B} q_{i a, A} \gamma_{A B} q_{j b, B} \\ \gamma\left(R_{A B}\right)=\frac{\operatorname{erf}\left(R_{A B} \sqrt{\alpha / 2}\right)}{R_{A B}}\end{split}\]

In ADF TDDFT-aas can be calculated for singlet excited states only, symmetry NOSYM is required. This method is best suited if a (meta-)GGA or LDA is used in the SCF. The TDDFT-aas method can be used in excited state geometry optimizations in case of closed-shell singlet-singlet excitations, see Ref. [14].

For TDDFT-aas use

SYMMETRY NOSYM
EXCITATIONS
  ONLYSING
  AAS
  {AASALPHA aasalpha}
END
aasalpha

alpha value for the TDDFT-aas method. Default alpha=0.2.

sTDA, sTDDFT

The simplified Tamm-Dancoff approach (sTDA) [28] and simplified time-dependent DFT approach (sTDDFT) [29] by Grimme et al. are implemented in ADF. In these approaches the time-dependent DFT equations are simplified by the evaluation of the two-electron integrals as short-range damped Coulomb interactions between (transition) charge density monopoles and a truncation of the single excitation expansion space. These methods are best suited if a (meta-)hybrid or a range-separated-hybrid is used in the SCF. These methods will speed up the calculation drastically in comparison to the standard time needed for TDA or TDDFT calculations of excitation energies for hybrids. Starting from ADF2023 one can use sTDA and sTDDFT for open shell molecules. Theses methods can not be used in excited state geometry optimizations.

An example application of sTDDFT is given in the TDDFT advanced tutorial

For sTDA use:

SYMMETRY NOSYM
EXCITATIONS
 sTDA
END

For sTDDFT use:

SYMMETRY NOSYM
EXCITATIONS
 sTDDFT
END

For global hybrids ADF will use the parameters \(\alpha\) and \(\beta\) that depend on the amount of exact exchange \(a_x\) as:

\[\begin{split}\alpha = \alpha_1 + \alpha_2 a_x \\ \beta = \beta_1 + \beta_2 a_x\end{split}\]

where \(\alpha_1 = 1.42\), \(\alpha_2 = 0.48\), \(\beta_1 = 0.2\), \(\beta_2 = 1.83\) are used in ADF. These values are fitted parameters by Grimme [28]. For range-separated hybrids one should set the parameters \(\alpha\), \(\beta\) and \(a_x\) in the input of ADF with the keyword MODIFYEXCITATION. See Ref. [31] for parameters that are used by Risthaus et al. for a few range-separated functionals. However the \(\alpha\) and \(\beta\) parameters are mixed up in Ref. [31]. Thus use:

Functional

\(a_x\)

\(\alpha\)

\(\beta\)

CAM-B3LYP

0.38

0.90

1.86

WB97

0.61

4.41

8.00

WB97X

0.56

4.58

8.00

For example, for CAM-B3LYP use

MODIFYEXCITATION
  GrimmeAlpha 0.9
  GrimmeBeta 1.86
  GrimmeAex 0.38
END

If one uses the keyword MODIFYEXCITATION one may also set more parameters that are used in the sTDA and sTDDFT approach.

MODIFYEXCITATION
  GrimmeAlpha Alpha
  GrimmeBeta Beta
  GrimmeAex Aex
  GrimmeDEmax DEmax
  GrimmeTPmin TPmin
  GrimmePertC|NoGrimmePertC
END
GrimmeAlpha Alpha

To set the \(\alpha\) parameters, should be used with GrimmeBeta and GrimmeAex.

GrimmeBeta Beta

To set the \(\beta\) parameters, should be used with GrimmeAlpha and GrimmeAex.

GrimmeAex Aex

To set \(a_x\) that is used in the sTDA or sTDDFT part of the calculation, should be used with GrimmeAlpha and GrimmeBeta.

GrimmeDEmax DEmax

Single orbital transitions that have an orbital energy difference less than DEmax (in Hartree) are included. Default value DEmax = 0.4 Hartree. See also the meaning of \(E_{max}\) in Grimme [28].

GrimmeTPmin TPmin

Single orbital transitions that would have a cumulative perturbative energy contribution larger than TPmin is included. Default value TPmin = \(10^{-4}\). See also the meaning of \(t_p\) in Grimme [28].

GrimmePertC|NoGrimmePertC

In case of GrimmePertC, which is the default, if the cumulative perturbative energy contribution for a single orbital transition is smaller TPmin, this contribution is used to modify the diagonal value of a matrix that is used in the sTDA or the sTDDFT method. If NoGrimmePertC is included such contributions are neglected. See Grimme [28] for more details on the truncation of the single excitation space.

Starting from ADF2016.102 for sTDA or sTDDFT only the lowest (in energy) 10000 single orbital transitions are included by default. One can override this by using a different value for the subkey UseOccVirtNumbers of the key MODIFYEXCITATION.

MODIFYEXCITATION
 UseOccVirtNumbers 1 10000
END

The value for the subkeyword KFWRITE in the EXCITATIONS block key is set by default to 0 in case of sTDA or sTDDFT. If kfwrite is 0 then do not write contributions, transition densities, and restart vectors to adf.rkf, since this can lead to a huge adf.rkf, especially if many excitations are calculated.

CD spectra

Circular dichroism (CD) is the differential absorption of left- and right-handed circularly polarized light. Starting from ADF2010 Hartree-Fock and hybrids can also be used to calculate CD spectra.

Starting from AMS2023 spin-orbit coupling can be included in the calculation of CD spectra, see Ref. [32], which allows one, for example, to calculate circularly polarized luminescence (CPL) for spin-forbidden transitions such as T1-S0 emission, and spin-forbidden electronic circular dichroism. These are spin-forbidden if one would not include spin-orbit coupling. Phosphorescence dissymmetry factors are calculated.

EXCITATIONS
 CDSPECTRUM
 ANALYTICAL
 VELOCITY
End
CDSPECTRUM

If the subkey CDSPECTRUM is included in the key EXCITATIONS the rotatory strengths for the calculated excitations are calculated, in order to simulate Circular Dichroism (CD) spectra [36] [37]. Interesting for chiral molecules.

Velocity

If the subkey VELOCITY is included ADF calculates the dipole-velocity representation of the oscillator strength. If applicable (use of subkey CDSPECTRUM) the dipole-velocity representation of the rotatory strength is calculated. Default the dipole-length representation of the oscillator strength and rotatory strength is calculated. Remark: in case of (range separated) (meta-) hybrids and TDA the dipole-length and velocity representation of the oscillator strength are not the same (not even in the basis set limit), see Ref. [33].

MCD

MCD or magnetic circular dichroism is the differential absorption of left and right circularly polarized light in the presence of a magnetic field. MCD intensity is usually described in terms of different contributions called A, B and C terms, see Refs. [38] [39]. A further parameter D is often discussed in MCD studies. D is proportional to the intensity of an absorption band and is closely related to the oscillator strength. A and B terms for closed and open-shell molecules and C terms of open-shell molecules induced by spin-orbit coupling can be calculated. Starting from ADF2010 C terms related to spatially degenerate states, i.e. breaking of degeneracies can be calculated. The A term is only calculated in case the molecule has symmetry and then only for excited states that belong to multi-dimensional irreps.

For MCD calculations for molecules that have C(2) or D(2) symmetry use SYMMETRY NOSYM.

Input options

EXCITATIONS
   MCD {options}
   ONLYSINGLET
   {SELECT transition number}
   {DTENSOR {Dxx Dxy Dyy Dxz Dyz|D E/D}}
End

ALLPOINTS
{Relativity
   Level Scalar
   Formalism ZORA
 End}
{SOMCD}
{ZFS}
MCD

If the subkey MCD is included in the key EXCITATIONS the MCD parameters of some or all of the excitations considered in the TDDFT procedure are calculated [51] [52] [53] [41]. This subkey should not be used with spin-orbit coupling (but, see below). Several other keywords could be important.

ALLPOINTS: required for an MCD calculation.

ONLYSINGLET: this keyword should be used in combination with a MCD calculation.

RELATIVITY: Scalar Relativistic ZORA: required for a calculation of temperature-dependent C terms. In this case the keyword SOMCD must also be added as a key by itself, and the calculation must be unrestricted. If only A and B terms are calculated then ZORA is not needed but can be included if desired.

ZFS: If the ZFS keyword and MCD with SOMCD are also included then the influence of the calculated zero-field splitting (ZFS) on the temperature-dependent MCD is evaluated. The MCD in the presence of ZFS is described as anisotropic in the output because the Zeeman splitting becomes orientation dependent in the presence of ZFS.

In ADF2010 the temperature-dependent MCD due to the breaking of degeneracies of excited states by spin-orbit coupling can be calculated. Although all temperature-dependent MCD is typically called “C terms”, the parameters associated with the MCD are labeled “CE” to distinguish them from the MCD due to mixing between states caused by spin-orbit coupling that is labeled “C”. The CE terms have a derivative shape like A terms. They have the same temperature-dependence as normal C terms. If they are present, CE terms are calculated automatically along with C terms if the keyword SOMCD is included in the input.

MCD {options}

Options include NMCDTERM, NMIX, DCUTOFF, MCDOUT, CGOUT, NANAL, NANAL2, FULLOMEGA, NOAB, NODIRECT, NOCG, CONVCG, ITERCG, ITER2CG, BMIN, BMAX, TMIN, TMAX and NTEMP.

NMCDTERM=nmcdterm

Number of excitations for which MCD parameters are to be calculated. The nmcdterm lowest energy excitations are treated. The default is the number of transitions considered in the TDDFT calculation.

NMIX=nmix

Number of transitions allowed to mix in a SOS calculation. Default is the number of transitions considered in the TDDFT calculation.

DCUTOFF=dcutoff

MCD parameters will only be calculated for transitions with sufficient intensity. Each Cartesian component of each transition is considered separately. If the dipole strength D of that component is below dcutoff then the MCD is not calculated. The default is 1.0e-6.

MCDOUT=mcdout

Number that determines the amount of output to be printed about the MCD calculation. Higher means more output. Possible values are 0, (orientationally averaged and Cartesian components of MCD parameters only) 1 (as for 0 but with the addition of a short analysis) or 2 (as for 1 but with the addition of a lengthy analysis). Theoretical analyses of MCD parameters are presented in several places including Refs. [38] [39] [52] [53] [41]. The default for MCDOUT is 0.

CGOUT=cgout

The perturbed transition densities used to evaluate the B and C term parameters can be obtained through an iterative conjugate-gradient procedure. Convergence information of the conjugate-gradient algorithm is printed every cgout iterations. Default is 10.

NANAL=nanal, NANAL2=nanal2

If MCDOUT is set to 2, a detailed analysis of the B and/or C term parameters in terms of which states mix and how much MCD each mixing causes, is presented. The parameters NANAL and NANAL2 determine how many contributions are included in the analyses. Defaults are 10 for NANAL and 5 for NANAL2.

FULLOMEGA

A standard TDDFT calculation involves the solution of an eigenvalue equation to obtain the excitation energies and transition densities of interest. ADF can solve this eigenvalue equation two ways: through diagonalization of the full Omega matrix or through the Davidson procedure where Omega is never explicitly constructed. Construction of the complete Omega matrix is generally only feasible for smaller problems. The matrix Omega appears again in the equations solved to obtain MCD. Here again Omega can be built or only the products of Omega with a vector can be used as is the case in the Davidson procedure. The default is to not construct Omega. If the keyword FULLOMEGA is included then Omega is constructed. Note that the choice of FULLOMEGA is completely independent of whether EXACT or DAVIDSON is chosen in the earlier TDDFT calculation.

NOAB

If this keyword is included then A and B terms are not calculated. NOAB only makes sense if SOMCD is included in the input otherwise no MCD will be calculated at all.

NODIRECT

The perturbed transition density needed to evaluate B and C term parameters is obtained through the solution of a large system of equations. This system of equations is solved in two ways: through a sum-over-states (SOS) type approach where the solution is expanded in a known set of transition densities or through the direct solution of the system of equations by the conjugate gradient procedure. The SOS method is much faster but also less accurate, particularly for larger systems. By default MCD parameters are evaluated through both approaches. If the NODIRECT keyword is included then only the SOS calculation is performed.

NOCG

The conjugate gradient procedure is first used in combination with a preconditioner that generally speeds up convergence significantly. If no solution is found in a reasonable number of iterations then the procedure is restarted without the preconditioner. If the NOCG keyword in included then the preconditioner is never used.

CONVCG

Convergence criterion for the CG iterative methods. The default value of 0.01 is probably good enough for most applications. This choice seems to produce B and C terms that are converged to 3 significant figures. Except for small systems, it is not recommended that CONVCG be set to a much smaller number as this will probably cause a large number of convergence failures.

ITERCG=itercg

Number of iterations before failure in the first (preconditioned) CG solver. This solver either succeeds quickly or not at all so the default value is 30.

ITER2CG=iterc2g

Number of iterations before failure in the B of C term parameter calculation of the unconditioned CG solver. This solver is often slow so the default value is 200.

BMIN=bmin, BMAX=bmax, NBFIELD=nbfield, TMIN=tmin, TMAX=tmax, NTEMP=ntemp

Temperature dependent MCD intensity often varies nonlinearly with T and B when T is small and/or B is large. It may therefore be of interest to evaluate the MCD intensity over a range of temperatures and/or magnetic fields. This can be achieved through the use of the BMIN, BMAX, NBFIELD, TMIN, TMAX and NTEMP keywords. The MIN and MAX keywords give the maximum values of B or T. NBFIELD and NTEMp indicate how many values are to be considered. Note that magnetic fields are assumed to be given in Tesla and temperatures in Kelvin. For example, BMIN=1, BMAX=5, NBFIELD=5 means that fields of 1,2,3,4 and 5 T will be considered. Defaults are BMIN=BMAX=1, TMIN=TMAX=5 and NBFIELD=NTEMP=1.

SELECT nselect1 nselect2 nselect3...

Rather than selecting the first nmcdterm transitions for consideration individual transitions can be selected through the SELECT keyword. The transitions of interest are listed after the SELECT keyword. Note that the numbering follows that given in the summary table at the end of the TDDFT calculation. To consider a degenerate transition only the first component need be included. Note that it makes no sense to use both the SELECT and NMCDTERM keywords together.

DTENSOR Dxx Dxy Dyy Dxz Dyz DTENSOR D E/D

As noted earlier, if the ZFS keyword is included with MCD and SOMCD then the influence of zero-field splitting on temperature-dependent MCD will be evaluated. As an alternative to the ZFS keyword the D-tensor parameters can be entered directly through the DTENSOR keyword in the EXCITATIONS block. Two input formats are possible. Five real numbers Dxx Dxy Dyy Dxz Dyz can be entered. These five numbers are sufficient to define the traceless tensor D. Alternatively, the two parameters D and E/D can be entered. In this case the coordinate system chosen to define the molecular geometry must be the the principle axis system of the D-tensor. D, Dxx, Dxy, Dyy, Dxz and Dyz should be given in wavenumbers (cm-1).

Notes

If an MCD calculation is run, the transition densities obtained in the TDDFT calculation are saved to adf.rkf. For large molecules this can result in a very large adf.rkf file.

An MCD calculation relies on the excitation energies and, in particular, the transition densities that result from the preceding TDDFT calculation. If the results of the TDDFT calculation are poor then it is likely that the results of the MCD calculation will be poor. It therefore should be kept in mind that most TDDFT calculations will make use of the Davidson method for finding the eigenvalues and eigenvectors of the TDDFT equation. The Davidson approach involves some approximations that can lead to some variation in results with the applied parameters. The most important example of this is the fact that the results vary depending on how many eigenvalue/eigenvector pairs are calculated, ie how many transitions are selected through the LOWEST keyword. The variation is small for the eigenvalues (excitation energies) but can be significant for the eigenvectors (transition densities). A variation in the transition densities leads to variation in the transition dipoles which can significantly impact calculated MCD parameters. The moral of this story is that when calculating MCD parameters it is best to choose one value of LOWEST and stick with it.

The most time-consuming part of an MCD calculation is the solution of the system of equations through the conjugate-gradient solver. The solver can fail so be aware of warnings concerning convergence in the output. A few hints to improve convergence are: a) choose a value of LOWEST that is at least double the number of transitions for which you desire MCD parameters. This helps to improve the SOS calculation which provides an initial guess for the conjugate gradient solver. The solver is sensitive to the initial guess so changing LOWEST by a small amount may help (or hinder) convergence significantly. Keep the previous note in mind when playing with LOWEST however. b) The preconditioned conjugate gradient solver is usually fast but does not converge monotonically to the correct answer. The unpreconditioned solver is much slower but tends to converge monotonically. If the preconditioned solver fails but leaves a fairly well converged result for the unpreconditioned solver the latter usually converges quickly. If the preconditioned solver does not leave a fairly well converged result it may be worth changing the number of iterations it uses since a few iterations earlier or later may provide a much better converged answer. c) The SELECT keyword can be used to work on the remaining transitions for which converged results have not been obtained.

All MCD parameters are presented in au. To convert A and C terms to the alternative unit D2 (Debye squared) the value in au should be multiplied by 6.46044. To convert the B term to the alternative unit of D2 /cm-1 the value in au should be multiplied by 2.94359e-05.

The A, B and C terms are defined through the equation suggested by Stephens (equation 1 in [41] and also see refs. [38] [39] [40]). This equation assumes that MCD intensity varies linearly with applied magnetic field and that the temperature-dependent component varies linearly with temperature as 1/T. For the most part, these assumptions are reasonable. An exception is that the temperature-dependent part varies from linearity when T is very small. To allow for this situation a temperature and magnetic field dependent multiplicative constant (chi(B,T)) is evaluated whenever temperature-dependent MCD parameters are considered. This constant includes all magnetic field and temperature dependence of the temperature-dependent MCD. Thus chi(B,T)*C can be used in place of B*C/kT in equation 1 of [41] when MCD spectra are to be simulated. Note that, since the g-factor for all states is here approximated by 2.0, chi applies to all transitions.

Analysis

By default the ADF output will show the excitation energies, oscillator strengths from ground state to excited state, and transition dipole moments from ground state to excited state. Also an analysis in terms of single orbital transitions (occupied to virtual) is given, and their contributions to the transition dipole moment. For analysis reasons one might be interested in pure single orbital transition. Such information can be obtained in case one calculates excitation energies as Kohn-Sham orbital energy differences, see subkey SINGLEORBTRANS of the key EXCITATIONS.

NTO: Natural Transition Orbitals

Natural Transition Orbitals [42] come from a transformation of the transition density matrix. They are the closest you can get to visualizing an excitation as a one-electron excitation from 1 orbital to another. They give insight in the localization of excitations. Calculation of Natural Transition Orbitals (NTO’s) will be performed if the subkey NTO is included in the key EXCITATIONS.

EXCITATIONS
  ...
  NTO
End

For (meta-)hybrids and range-separated functionals NTO’s will be calculated only if one uses the Tamm-Dancoff approximation (TDA).

NTOs can be visualized in AMSspectra as shown in the GUI tutorial .

SFO analysis

In ADF2018 an SFO analysis of the excitation is implemented. This includes an analysis of the transition dipole moment. Especially useful in a fragment calculation, where one only has a few fragments. Not implemented for spin-orbit coupled excitations.

EXCITATIONS
  ...
  SFOANALYSIS
  N_SFO NMAXPRINTED
End
SFOANALYSIS

If SFOANALYSIS is included a the SFO analysis of the excitation will be calculated.

N_SFO NMAXPRINTED

NMAXPRINTED is the maximum number of printed contributions. Default value for NMAXPRINTED is 40.

The SFO - SFO dipole matrix elements can be printed in the output with:

PRINT DIPOLEMAT

Charge-transfer descriptors

Two methods for calculating charge-transfer descriptors are implemented (also working for spin-orbit coupled excitations).

The first method is the charge-transfer diagnostic overlap quantity LAMBDA, developed by Peach, Tozer, et al. [43] and a hole-electron distance R_HE, see Guido, Adamo, et al. [44].

The second method is the charge transfer descriptor CT, hole-electron distance R_HE, and some other descriptors, developed by Plasser, Lischka, et al. [54] [55] [56] [57]. For this method a fragment calculation is required. Using a similar method a charge transfer descriptor CT_AT was defined that uses an atomic distance criterion, which will also be calculated in case of atomic fragments.

EXCITATIONS
  ...
  DESCRIPTORS
  {Descriptors_CT_AT_Rab Rab}
END
DESCRIPTORS

If DESCRIPTORS is included the charge transfer descriptors are calculated.

Descriptors_CT_AT_Rab Rab

Rab is the atomic distance criterion used for the calculation of CT_AT (in Angstrom). Default value for Rab is 2 Angstrom.

References