Spectrum analysis#

The breakdown of spectra into the Cartesian components, as well as decomposing to occupied MOs is discussed in the X-ray section. The study of excited states using natural transition orbitals and detachment/attachment densities are currently in the visualization section, and here we will now focus on using OrbitalViewer and decomposition of eigenstates.

import copy

import gator
import matplotlib.pyplot as plt
import numpy as np
import veloxchem as vlx

# for vlx
silent_ostream = vlx.OutputStream(None)
from mpi4py import MPI

comm = MPI.COMM_WORLD

# au to eV conversion factor
au2ev = 27.211386


def lorentzian(x, y, xmin, xmax, xstep, gamma):
    """
    Lorentzian broadening function

    Call: xi,yi = lorentzian(energies, intensities, start energy, end energy, energy step, gamma)
    """
    xi = np.arange(xmin, xmax, xstep)
    yi = np.zeros(len(xi))
    for i in range(len(xi)):
        for k in range(len(x)):
            yi[i] = yi[i] + y[k] * (gamma / 2.0) / (
                (xi[i] - x[k]) ** 2 + (gamma / 2.0) ** 2
            )
    return xi, yi

First, we calculate the six lowest states of methanol using ADC(2):

ch3oh_xyz = '''
C       0.6627602692    -0.0195253241    -0.0000000000
O      -0.7482324502     0.1217146925     0.0000000000
H       1.0282229693    -0.5397922417    -0.8872632580
H       1.0282229693    -0.5397922417     0.8872632580
H       1.0781531801     0.9835591659    -0.0000000000
H      -1.1253011321    -0.7605402778     0.0000000000
'''

# Construct structure and basis objects
struct = gator.get_molecule(ch3oh_xyz)
basis = gator.get_molecular_basis(struct, "6-31G")

# Perform SCF calculation
scf_gs = gator.run_scf(struct, basis)

# Calculate the 6 lowest eigenstates
adc_res = gator.run_adc(struct, basis, scf_gs, method="adc2", singlets=6)
* Info * Reading basis set from file: /home/emi/miniconda3/envs/echem/lib/python3.9/site-packages/veloxchem/basis/6-31G   
                                                                                                                          
                                                                                                                          
                                            Self Consistent Field Driver Setup                                            
                                           ====================================                                           
                                                                                                                          
                   Wave Function Model             : Spin-Restricted Hartree-Fock                                         
                   Initial Guess Model             : Superposition of Atomic Densities                                    
                   Convergence Accelerator         : Two Level Direct Inversion of Iterative Subspace                     
                   Max. Number of Iterations       : 50                                                                   
                   Max. Number of Error Vectors    : 10                                                                   
                   Convergence Threshold           : 1.0e-06                                                              
                   ERI Screening Scheme            : Cauchy Schwarz + Density                                             
                   ERI Screening Mode              : Dynamic                                                              
                   ERI Screening Threshold         : 1.0e-12                                                              
                   Linear Dependence Threshold     : 1.0e-06                                                              
                                                                                                                          
* Info * Nuclear repulsion energy: 40.3876414915 a.u.                                                                     
                                                                                                                          
* Info * Overlap matrix computed in 0.00 sec.                                                                             
                                                                                                                          
* Info * Kinetic energy matrix computed in 0.00 sec.                                                                      
                                                                                                                          
* Info * Nuclear potential matrix computed in 0.00 sec.                                                                   
                                                                                                                          
* Info * Orthogonalization matrix computed in 0.02 sec.                                                                   
                                                                                                                          
* Info * SAD initial guess computed in 0.00 sec.                                                                          
                                                                                                                          
* Info * Starting Reduced Basis SCF calculation...                                                                        
* Info * ...done. SCF energy in reduced basis set: -114.986646483208 a.u. Time: 0.12 sec.                                 
                                                                                                                          
* Info * Overlap matrix computed in 0.00 sec.                                                                             
                                                                                                                          
* Info * Kinetic energy matrix computed in 0.00 sec.                                                                      
                                                                                                                          
* Info * Nuclear potential matrix computed in 0.00 sec.                                                                   
                                                                                                                          
* Info * Orthogonalization matrix computed in 0.00 sec.                                                                   
                                                                                                                          
                                                                                                                          
               Iter. | Hartree-Fock Energy | Energy Change | Gradient Norm | Max. Gradient | Density Change               
               --------------------------------------------------------------------------------------------               
                  1      -114.986647455185    0.0000000000      0.00019765      0.00003189      0.00000000                
                  2      -114.986647466155   -0.0000000110      0.00008804      0.00001229      0.00014964                
                  3      -114.986647467682   -0.0000000015      0.00001316      0.00000245      0.00005028                
                  4      -114.986647467712   -0.0000000000      0.00000768      0.00000123      0.00000788                
                  5      -114.986647467719   -0.0000000000      0.00000092      0.00000020      0.00000271                
                                                                                                                          
               *** SCF converged in 5 iterations. Time: 0.10 sec.                                                         
                                                                                                                          
               Spin-Restricted Hartree-Fock:                                                                              
               -----------------------------                                                                              
               Total Energy                       :     -114.9866474677 a.u.                                              
               Electronic Energy                  :     -155.3742889592 a.u.                                              
               Nuclear Repulsion Energy           :       40.3876414915 a.u.                                              
               ------------------------------------                                                                       
               Gradient Norm                      :        0.0000009201 a.u.                                              
                                                                                                                          
                                                                                                                          
               Ground State Information                                                                                   
               ------------------------                                                                                   
               Charge of Molecule            :  0.0                                                                       
               Multiplicity (2S+1)           :  1.0                                                                       
               Magnetic Quantum Number (M_S) :  0.0                                                                       
                                                                                                                          
                                                                                                                          
                                                 Spin Restricted Orbitals                                                 
                                                 ------------------------                                                 
                                                                                                                          
               Molecular Orbital No.   5:                                                                                 
               --------------------------                                                                                 
               Occupation: 2.000 Energy:   -0.68674 a.u.                                                                  
               (   1 C   1p+1:     0.18) (   1 C   1p-1:    -0.23) (   2 O   3s  :    -0.17)                              
               (   2 O   1p+1:    -0.23) (   2 O   1p-1:    -0.36) (   2 O   2p-1:    -0.20)                              
               (   6 H   1s  :     0.23)                                                                                  
                                                                                                                          
               Molecular Orbital No.   6:                                                                                 
               --------------------------                                                                                 
               Occupation: 2.000 Energy:   -0.62359 a.u.                                                                  
               (   1 C   1p0 :    -0.38) (   1 C   2p0 :    -0.18) (   2 O   1p0 :    -0.33)                              
               (   2 O   2p0 :    -0.22) (   3 H   1s  :     0.19) (   4 H   1s  :    -0.19)                              
                                                                                                                          
               Molecular Orbital No.   7:                                                                                 
               --------------------------                                                                                 
               Occupation: 2.000 Energy:   -0.58786 a.u.                                                                  
               (   1 C   1p+1:    -0.30) (   1 C   1p-1:    -0.25) (   1 C   2p-1:    -0.16)                              
               (   2 O   1p+1:     0.38) (   2 O   2p+1:     0.27) (   5 H   1s  :    -0.22)                              
                                                                                                                          
               Molecular Orbital No.   8:                                                                                 
               --------------------------                                                                                 
               Occupation: 2.000 Energy:   -0.49474 a.u.                                                                  
               (   1 C   1p-1:    -0.30) (   2 O   3s  :     0.21) (   2 O   1p+1:    -0.19)                              
               (   2 O   1p-1:     0.39) (   2 O   2p+1:    -0.16) (   2 O   2p-1:     0.30)                              
               (   5 H   1s  :    -0.20) (   5 H   2s  :    -0.18)                                                        
                                                                                                                          
               Molecular Orbital No.   9:                                                                                 
               --------------------------                                                                                 
               Occupation: 2.000 Energy:   -0.44686 a.u.                                                                  
               (   1 C   1p0 :    -0.24) (   2 O   1p0 :     0.55) (   2 O   2p0 :     0.46)                              
               (   3 H   1s  :     0.17) (   3 H   2s  :     0.19) (   4 H   1s  :    -0.17)                              
               (   4 H   2s  :    -0.19)                                                                                  
                                                                                                                          
               Molecular Orbital No.  10:                                                                                 
               --------------------------                                                                                 
               Occupation: 0.000 Energy:    0.21888 a.u.                                                                  
               (   1 C   3s  :    -1.06) (   1 C   1p+1:    -0.16) (   1 C   2p+1:    -0.60)                              
               (   2 O   3s  :    -0.96) (   2 O   1p-1:     0.20) (   2 O   2p-1:     0.44)                              
               (   3 H   2s  :     0.63) (   4 H   2s  :     0.63) (   5 H   2s  :     0.47)                              
               (   6 H   2s  :     1.21)                                                                                  
                                                                                                                          
               Molecular Orbital No.  11:                                                                                 
               --------------------------                                                                                 
               Occupation: 0.000 Energy:    0.27257 a.u.                                                                  
               (   1 C   3s  :     2.41) (   1 C   2p+1:     0.17) (   2 O   3s  :    -0.77)                              
               (   2 O   2p+1:    -0.17) (   2 O   2p-1:     0.30) (   3 H   2s  :    -1.11)                              
               (   4 H   2s  :    -1.11) (   5 H   2s  :    -1.04) (   6 H   2s  :     0.73)                              
                                                                                                                          
               Molecular Orbital No.  12:                                                                                 
               --------------------------                                                                                 
               Occupation: 0.000 Energy:    0.31271 a.u.                                                                  
               (   1 C   1p-1:     0.33) (   1 C   2p+1:     0.39) (   1 C   2p-1:     1.45)                              
               (   2 O   2p+1:     0.17) (   2 O   2p-1:    -0.16) (   3 H   2s  :     0.83)                              
               (   4 H   2s  :     0.83) (   5 H   2s  :    -1.98) (   6 H   2s  :     0.21)                              
                                                                                                                          
               Molecular Orbital No.  13:                                                                                 
               --------------------------                                                                                 
               Occupation: 0.000 Energy:    0.32064 a.u.                                                                  
               (   1 C   1p0 :     0.37) (   1 C   2p0 :     1.49) (   2 O   2p0 :    -0.25)                              
               (   3 H   2s  :     1.67) (   4 H   2s  :    -1.67)                                                        
                                                                                                                          
               Molecular Orbital No.  14:                                                                                 
               --------------------------                                                                                 
               Occupation: 0.000 Energy:    0.37611 a.u.                                                                  
               (   1 C   3s  :    -0.88) (   1 C   1p+1:     0.20) (   1 C   2p+1:     1.53)                              
               (   1 C   2p-1:    -0.50) (   2 O   3s  :     0.76) (   2 O   1p+1:     0.32)                              
               (   2 O   2p+1:     0.97) (   2 O   2p-1:     0.29) (   3 H   2s  :    -0.35)                              
               (   4 H   2s  :    -0.35) (   5 H   2s  :     0.33) (   6 H   2s  :     0.97)                              
                                                                                                                          
SCF converged in 5 iterations.
Total Energy: -114.9866474677 au
Starting adc2 singlet Jacobi-Davidson ...
Niter n_ss  max_residual  time  Ritz values
  1    12       0.23909  786ms  [0.40241316 0.48084642 0.51034518 0.52072285 0.55248738 0.55772689]
  2    24      0.010561   6.6s  [0.29557131 0.37845885 0.39618815 0.4170348  0.44699784 0.45009195]
  3    36     0.0038423   8.7s  [0.29423544 0.37469582 0.38629969 0.41095523 0.43604013 0.43686795]
  4    48    0.00035144  11.2s  [0.29417706 0.37426126 0.38422222 0.40954519 0.43305633 0.43490802]
  5    60    1.7396e-05  13.3s  [0.29417387 0.37422958 0.38413954 0.40949836 0.43288848 0.43484835]
=== Restart ===
  6    24    3.5709e-06  12.5s  [0.29417373 0.37422705 0.3841368  0.40949611 0.4328759  0.43484511]
  7    36    3.3958e-07  10.1s  [0.29417371 0.37422666 0.38413652 0.40949598 0.43287347 0.43484478]
=== Converged ===
    Number of matrix applies:    84
    Total solver time:            63s 654ms

Dominant contributions to eigenstates#

With describe_amplitudes we can study the dominant contributions of the states:

print(adc_res.describe_amplitudes())
+-------------------------------------------------------+
| State   0 ,     0.2941737 au,      8.004874 eV        |
+-------------------------------------------------------+
| HOMO            -> LUMO             a ->a      +0.652 |
| HOMO -3         -> LUMO             a ->a      -0.153 |
| HOMO            -> LUMO +1          a ->a      +0.146 |
| HOMO -3         -> LUMO +1          a ->a     -0.0575 |
| HOMO            -> LUMO +8          a ->a     -0.0233 |
| HOMO -3         -> LUMO +4          a ->a     -0.0232 |
| HOMO            -> LUMO+15          a ->a     -0.0206 |
| HOMO            -> LUMO+10          a ->a     -0.0196 |
| HOMO            -> LUMO+12          a ->a     -0.0175 |
| HOMO            -> LUMO +7          a ->a     -0.0165 |
| HOMO            -> LUMO +2          a ->a     -0.0105 |
| HOMO -4 HOMO    -> LUMO +4 LUMO     ab->ab    +0.0157 |
| HOMO    HOMO    -> LUMO    LUMO+13  ab->ab     -0.014 |
| HOMO -4 HOMO    -> LUMO    LUMO     ab->ab    +0.0139 |
| HOMO -2 HOMO    -> LUMO +4 LUMO     ab->ab     -0.012 |
| HOMO -6 HOMO    -> LUMO    LUMO     ab->ab    -0.0117 |
| HOMO -1 HOMO    -> LUMO    LUMO+10  aa->aa    -0.0116 |
| HOMO -3 HOMO -2 -> LUMO    LUMO +4  ab->ab     +0.011 |
| HOMO    HOMO -1 -> LUMO    LUMO+10  ab->ab    +0.0109 |

+-------------------------------------------------------+
| State   1 ,     0.3742267 au,      10.18323 eV        |
+-------------------------------------------------------+
| HOMO -1         -> LUMO             a ->a      +0.648 |
| HOMO -2         -> LUMO             a ->a      -0.156 |
| HOMO -1         -> LUMO +1          a ->a        +0.1 |
| HOMO -4         -> LUMO             a ->a     -0.0798 |
| HOMO -2         -> LUMO +1          a ->a     -0.0596 |
| HOMO -2         -> LUMO +4          a ->a      -0.046 |
| HOMO -1         -> LUMO +4          a ->a     -0.0456 |
| HOMO            -> LUMO +3          a ->a     +0.0436 |
| HOMO -4         -> LUMO +1          a ->a     -0.0369 |
| HOMO -1         -> LUMO +2          a ->a     -0.0291 |
| HOMO -5         -> LUMO             a ->a     +0.0278 |
| HOMO -1         -> LUMO +7          a ->a     -0.0198 |
| HOMO -1         -> LUMO+12          a ->a     -0.0198 |
| HOMO -1         -> LUMO +8          a ->a     -0.0159 |
| HOMO -6         -> LUMO             a ->a      -0.015 |
| HOMO -2         -> LUMO +2          a ->a     -0.0133 |
| HOMO -2         -> LUMO+15          a ->a     +0.0126 |
| HOMO            -> LUMO+13          a ->a     -0.0126 |
| HOMO -1         -> LUMO+15          a ->a     -0.0116 |
| HOMO -4 HOMO -1 -> LUMO    LUMO     ab->ab    +0.0187 |
| HOMO -1 HOMO -1 -> LUMO    LUMO     ab->ab    -0.0152 |
| HOMO -4 HOMO -2 -> LUMO    LUMO +4  aa->aa    +0.0146 |
| HOMO -4 HOMO -1 -> LUMO +4 LUMO     ab->ab    +0.0118 |
| HOMO -1 HOMO -1 -> LUMO    LUMO +1  ab->ab    -0.0102 |

+-------------------------------------------------------+
| State   2 ,     0.3841365 au,      10.45289 eV        |
+-------------------------------------------------------+
| HOMO            -> LUMO +1          a ->a       -0.64 |
| HOMO            -> LUMO             a ->a      +0.152 |
| HOMO            -> LUMO +2          a ->a       +0.11 |
| HOMO            -> LUMO +4          a ->a     +0.0918 |
| HOMO -3         -> LUMO +1          a ->a     +0.0871 |
| HOMO            -> LUMO +7          a ->a     +0.0437 |
| HOMO -3         -> LUMO +7          a ->a     -0.0258 |
| HOMO            -> LUMO+10          a ->a     +0.0214 |
| HOMO            -> LUMO+11          a ->a     +0.0192 |
| HOMO            -> LUMO+12          a ->a     -0.0176 |
| HOMO -3         -> LUMO +4          a ->a     -0.0167 |
| HOMO -3         -> LUMO             a ->a     +0.0165 |
| HOMO -3         -> LUMO +2          a ->a     -0.0139 |
| HOMO    HOMO    -> LUMO +1 LUMO +3  ab->ab    -0.0199 |
| HOMO -4 HOMO    -> LUMO +4 LUMO +1  ab->ab     -0.018 |
| HOMO -2 HOMO    -> LUMO +4 LUMO +1  ab->ab    +0.0179 |
| HOMO    HOMO    -> LUMO +1 LUMO+13  ab->ab     +0.016 |
| HOMO -2 HOMO    -> LUMO +1 LUMO +4  aa->aa    -0.0157 |
| HOMO -4 HOMO    -> LUMO +1 LUMO +4  aa->aa    +0.0149 |
| HOMO -1 HOMO    -> LUMO +1 LUMO+10  aa->aa    +0.0122 |
| HOMO -3 HOMO -2 -> LUMO +1 LUMO +4  ab->ab    -0.0121 |
| HOMO -4 HOMO -3 -> LUMO +1 LUMO +4  aa->aa    -0.0113 |
| HOMO -4 HOMO -3 -> LUMO +4 LUMO +1  ab->ab    +0.0111 |
| HOMO    HOMO -1 -> LUMO +1 LUMO+10  ab->ab    -0.0111 |
| HOMO -1 HOMO    -> LUMO +2 LUMO +1  ab->ab     -0.011 |
| HOMO -3 HOMO -2 -> LUMO +1 LUMO +4  aa->aa    -0.0109 |

+-------------------------------------------------------+
| State   3 ,      0.409496 au,      11.14295 eV        |
+-------------------------------------------------------+
| HOMO            -> LUMO +2          a ->a      +0.529 |
| HOMO            -> LUMO +4          a ->a      +0.389 |
| HOMO            -> LUMO +1          a ->a      +0.137 |
| HOMO            -> LUMO +7          a ->a     +0.0715 |
| HOMO -3         -> LUMO +4          a ->a     -0.0705 |
| HOMO -3         -> LUMO +2          a ->a     -0.0628 |
| HOMO -3         -> LUMO             a ->a     -0.0623 |
| HOMO            -> LUMO             a ->a     -0.0354 |
| HOMO -3         -> LUMO +1          a ->a       -0.03 |
| HOMO            -> LUMO+15          a ->a     -0.0261 |
| HOMO            -> LUMO +8          a ->a     -0.0239 |
| HOMO            -> LUMO+14          a ->a     -0.0175 |
| HOMO            -> LUMO+12          a ->a     +0.0152 |
| HOMO -3         -> LUMO +7          a ->a     -0.0151 |
| HOMO -2         -> LUMO +3          a ->a     -0.0113 |
| HOMO -3         -> LUMO+11          a ->a     -0.0108 |
| HOMO            -> LUMO+10          a ->a     +0.0108 |
| HOMO -2 HOMO    -> LUMO +4 LUMO +2  ab->ab    -0.0148 |
| HOMO -4 HOMO    -> LUMO +4 LUMO +2  ab->ab    +0.0138 |
| HOMO    HOMO    -> LUMO +2 LUMO+13  ab->ab     -0.013 |
| HOMO -4 HOMO    -> LUMO +2 LUMO +4  aa->aa    -0.0121 |
| HOMO -2 HOMO    -> LUMO +2 LUMO +4  aa->aa    +0.0106 |
| HOMO -3 HOMO -2 -> LUMO +2 LUMO +4  ab->ab    +0.0105 |
| HOMO -4 HOMO -3 -> LUMO +2 LUMO +4  aa->aa    +0.0102 |
| HOMO -1 HOMO    -> LUMO +2 LUMO +2  ab->ab    +0.0101 |

+-------------------------------------------------------+
| State   4 ,     0.4328735 au,      11.77909 eV        |
+-------------------------------------------------------+
| HOMO            -> LUMO +3          a ->a      -0.652 |
| HOMO -3         -> LUMO +3          a ->a      +0.119 |
| HOMO -1         -> LUMO +1          a ->a     -0.0857 |
| HOMO -1         -> LUMO +2          a ->a     +0.0766 |
| HOMO -1         -> LUMO             a ->a     +0.0627 |
| HOMO -2         -> LUMO +4          a ->a     -0.0411 |
| HOMO            -> LUMO +9          a ->a       -0.03 |
| HOMO -2         -> LUMO +1          a ->a      +0.027 |
| HOMO            -> LUMO +6          a ->a      -0.022 |
| HOMO -4         -> LUMO             a ->a     +0.0202 |
| HOMO -3         -> LUMO +9          a ->a     +0.0147 |
| HOMO            -> LUMO+13          a ->a     -0.0144 |
| HOMO -1         -> LUMO+10          a ->a     +0.0144 |
| HOMO -2         -> LUMO +5          a ->a     +0.0122 |
| HOMO -4         -> LUMO +1          a ->a     +0.0116 |
| HOMO -1         -> LUMO +4          a ->a     +0.0115 |
| HOMO -5         -> LUMO             a ->a     +0.0105 |
| HOMO    HOMO    -> LUMO +3 LUMO +3  ab->ab    -0.0346 |
| HOMO -4 HOMO    -> LUMO +4 LUMO +3  ab->ab    -0.0197 |
| HOMO -2 HOMO    -> LUMO +4 LUMO +3  ab->ab    +0.0194 |
| HOMO -2 HOMO    -> LUMO +3 LUMO +4  aa->aa    -0.0183 |
| HOMO    HOMO    -> LUMO +3 LUMO+13  ab->ab    +0.0178 |
| HOMO -4 HOMO    -> LUMO +3 LUMO +4  aa->aa    +0.0163 |
| HOMO -3 HOMO    -> LUMO +3 LUMO +9  ab->ab    +0.0143 |
| HOMO -3 HOMO -2 -> LUMO +3 LUMO +4  ab->ab    -0.0132 |
| HOMO -3 HOMO -2 -> LUMO +3 LUMO +4  aa->aa    -0.0126 |
| HOMO -1 HOMO    -> LUMO +3 LUMO+10  aa->aa    +0.0126 |
| HOMO    HOMO -1 -> LUMO +3 LUMO+10  ab->ab    -0.0122 |
| HOMO -4 HOMO -3 -> LUMO +3 LUMO +4  aa->aa    -0.0122 |
| HOMO -4 HOMO -3 -> LUMO +4 LUMO +3  ab->ab    +0.0121 |
| HOMO    HOMO    -> LUMO +3 LUMO +6  ab->ab    +0.0119 |
| HOMO -2 HOMO    -> LUMO +7 LUMO +3  ab->ab    +0.0117 |
| HOMO -3 HOMO    -> LUMO +3 LUMO +3  ab->ab    +0.0104 |
| HOMO -2 HOMO    -> LUMO +3 LUMO +7  aa->aa    -0.0103 |
| HOMO -6 HOMO    -> LUMO    LUMO +3  ab->ab    +0.0101 |

+-------------------------------------------------------+
| State   5 ,     0.4348448 au,      11.83273 eV        |
+-------------------------------------------------------+
| HOMO            -> LUMO +4          a ->a       -0.53 |
| HOMO            -> LUMO +2          a ->a      +0.404 |
| HOMO -3         -> LUMO +4          a ->a      +0.103 |
| HOMO            -> LUMO +7          a ->a     -0.0685 |
| HOMO -1         -> LUMO +3          a ->a     -0.0624 |
| HOMO -3         -> LUMO             a ->a     +0.0513 |
| HOMO -3         -> LUMO +2          a ->a     -0.0464 |
| HOMO            -> LUMO +5          a ->a     +0.0256 |
| HOMO            -> LUMO+14          a ->a     +0.0242 |
| HOMO            -> LUMO+10          a ->a      +0.023 |
| HOMO            -> LUMO+11          a ->a     -0.0203 |
| HOMO -3         -> LUMO +7          a ->a     +0.0194 |
| HOMO            -> LUMO+15          a ->a     +0.0167 |
| HOMO            -> LUMO +8          a ->a     -0.0164 |
| HOMO -4         -> LUMO +3          a ->a     -0.0159 |
| HOMO            -> LUMO             a ->a     +0.0133 |
| HOMO -4 HOMO    -> LUMO +4 LUMO +2  ab->ab    +0.0135 |
| HOMO -2 HOMO    -> LUMO +2 LUMO +4  aa->aa     +0.013 |
| HOMO -4 HOMO    -> LUMO +4 LUMO +4  ab->ab    -0.0129 |
| HOMO -2 HOMO    -> LUMO +4 LUMO +2  ab->ab    -0.0125 |
| HOMO -4 HOMO    -> LUMO +2 LUMO +4  aa->aa    -0.0121 |
| HOMO    HOMO    -> LUMO +2 LUMO+13  ab->ab    -0.0119 |
| HOMO -2 HOMO    -> LUMO +4 LUMO +4  ab->ab    +0.0115 |
| HOMO -3 HOMO -2 -> LUMO +2 LUMO +4  aa->aa    +0.0112 |

This outputs a string with all transitions and all contributions with an absolute value of 0.01. The printing threshold can be changed, as can the format of the output, but for now we focus on narrowing down on the two strongest state (2 and 4). This can be done by splitting the string at double line-breaks, where we also include a higher tolerance of inclusion of 0.1:

split_res = adc_res.describe_amplitudes(tolerance=0.1).split('\n\n')

Printing the dominant amplitudes of states 2 and 4:

print(split_res[2])
print('\n')
print(split_res[4])
+---------------------------------------------------+
| State   2 ,     0.3841365 au,      10.45289 eV    |
+---------------------------------------------------+
| HOMO          -> LUMO+1         a ->a       -0.64 |
| HOMO          -> LUMO           a ->a      +0.152 |
| HOMO          -> LUMO+2         a ->a       +0.11 |


+---------------------------------------------------+
| State   4 ,     0.4328735 au,      11.77909 eV    |
+---------------------------------------------------+
| HOMO          -> LUMO+3         a ->a      -0.652 |
| HOMO-3        -> LUMO+3         a ->a      +0.119 |

We see that both these excitations are dominate by transitions from HOMO to LUMO+1 and LUMO+3, and from describe() above we note that the transitions are dominated by singly excited configurations (\(|v^2|^2\sim0.07\)).

Visualizing molecular orbitals#

Using OrbitalViewer, we can look at HOMO, LUMO+1, and LUMO+3:

viewer = vlx.OrbitalViewer()
viewer.plot(struct, basis, scf_gs.mol_orbs)

And we obtain:

../../_images/uv-vis_mos.png

Using these MOs and above eigenstate contributions we can assign the features, provided that the excited states are relatively dominated by a few contributions, and the canonical MOs can be assigned. If this is not viable, we would instead turn to, e.g., natural transition orbitals, where we obtain a compact description of the excited states.

Polarization dependence#

Finally, we can look at the Cartesian components of the transition dipole moments, to see how the excitation is polarized:

print('State 2:',adc_res.transition_dipole_moment[2])
print('State 4:',adc_res.transition_dipole_moment[4])
State 2: [-1.95997205e-14  1.69662221e-14 -5.82241208e-01]
State 4: [-5.17627387e-01  3.21072518e-01 -1.32380840e-13]