Searching....

# 7.4.4 Calculation of Absorption Spectra

(July 14, 2022)

The absorption cross-section $\sigma_{ii}(\omega)$ for light polarized in the $i$ direction ($i\in\{x,y,z\}$) can be obtained from the imaginary part ($\Im$) of the frequency-dependent polarizability, $\alpha_{ii}(\omega)$: 1362 Zhu Y., Herbert J. M.
J. Chem. Phys.
(2018), 148, pp. 044117.

 $\sigma_{ii}(\omega)=\left(\frac{4\pi\omega}{c}\right)\Im\bigl{[}\alpha_{ii}(% \omega)\bigr{]}\;.$ (7.32)

A rotationally-averaged absorption spectrum $A(\omega)$ is then simply

 $A(\omega)=\tfrac{1}{3}\bigl{[}\sigma_{xx}(\omega)+\sigma_{yy}(\omega)+\sigma_{% zz}(\omega)\bigr{]}$ (7.33)

within the electric dipole approximation. Components $\alpha_{ij}(\omega)$ of the frequency-dependent polarizability tensor $\bm{\alpha}(\omega)$ are obtained from the Fourier transform ($\mathcal{F}$) of the time-dependent dipole moment component $\mu_{i}(t)$, for a perturbing field $\mathcal{E}_{j}$ in the $j$ direction: 1362 Zhu Y., Herbert J. M.
J. Chem. Phys.
(2018), 148, pp. 044117.

 $\alpha_{ij}(\omega)=\frac{\mathcal{F}\bigl{[}\mu_{i}(t)\bigr{]}}{\mathcal{F}% \bigl{[}\mathcal{E}_{j}(t)\bigr{]}}\;.$ (7.34)

To compute the spectrum in Eq. (7.33), three separate perturbations in the $x$, $y$, and $z$ directions are required, else some excitations may be missing if their transition moment is strictly perpendicular to the applied field, causing the matrix element $\langle\Psi_{n}|\mathcal{E}_{j}|\Psi_{0}\rangle$ to vanish. However, these three perturbations $\mathcal{E}_{x}$, $\mathcal{E}_{y}$, and $\mathcal{E}_{z}$ can be applied all at once in a single calculation, in order to generate a superposition consisting of all possible excitations out of the ground state.

Two different scripts are provided to obtain the spectrum after the TDKS simulation is completed:

• $QC/bin/tools/tdks_fft.py •$QC/bin/tools/tdks_pade.py

The first of these uses the Fourier transform method in Eq. (7.34) directly while the second makes use of Padé approximants to obtain comparable spectra with shorter propagation times. The scripts can be run as follows:

$QC/bin/tools/tdks_fft.py output spectrum.txt$QC/bin/tools/tdks_pade.py output spectrum.txt


The file spectrum.txt produced by the processing script will contain two columns: frequency (eV) and strength (arbitrary units). This data can be visualized as an $(x,y)$ plot to view the spectrum.

Example 7.20  TDKS job using a CW field and a CAP.

$molecule 0 1 H 0.000000 0.000000 0.000000 H 0.000000 0.000000 0.750000$end

$rem BASIS 6-31G METHOD lrc-wpbe SYMMETRY false TDKS true LRC_DFT true OMEGA 300 SCF_CONVERGENCE 9$end

$tdks DT 0.10 MAXITER 5 PROPAGATOR MMUT FIELD_VECTOR 1 1 1 FIELD_TYPE cw FIELD_FREQUENCY 1.55 FIELD_AMP 0.0001 DO_CAP true CAP_TYPE atom_centered_spherical CAP_R0 18.5 ! units are bohr CAP_ETA 0.1 ! units are hartree/bohr^2$end