Tutorial:Triplet Excitations

From OctopusWiki
Jump to: navigation, search

In this tutorial, we will calculate triplet excitations for methane with time-propagation and Casida methods, for comparison with the spectra calculated in Tutorial:Optical Spectra from TD and Tutorial:Optical Spectra from Casida. There are fewer details here, so doing those tutorials first is advised.


We begin with a spin-polarized calculation of the ground-state, as before but with SpinComponents = spin_polarized specified now.

UnitsOutput = eV_angstrom

Radius = 4.*angstrom
Spacing = 0.18*angstrom
SpinComponents = spin_polarized

CH = 1.097*angstrom
  "C" |           0 |          0 |           0
  "H" |  CH/sqrt(3) | CH/sqrt(3) |  CH/sqrt(3)
  "H" | -CH/sqrt(3) |-CH/sqrt(3) |  CH/sqrt(3)
  "H" |  CH/sqrt(3) |-CH/sqrt(3) | -CH/sqrt(3)
  "H" | -CH/sqrt(3) | CH/sqrt(3) | -CH/sqrt(3)

You can verify that the results are identical in detail to the non-spin-polarized calculation since this is a non-magnetic system. Next, we perform time-propagation as before, but with the addition of TDDeltaStrengthMode = kick_spin.

CalculationMode = td
TDDeltaStrength = 0.01/angstrom
TDPolarizationDirection = 1
TDDeltaStrengthMode = kick_spin

tmax = 10
TDPropagator = aetrs
TDTimeStep = 0.0023/eV
TDMaxSteps = 4350  # ~ 10.0/TDTimeStep

This kick mode applies a kick with opposite sign to the two spins. Whereas the ordinary kick (kick_density) yields the response to a homogeneous electric field, i.e. the electric dipole response, this kick yields the response to a homogeneous magnetic field, i.e. the magnetic dipole response. Note however that only the spin degree of freedom is coupling to the field; a different calculation would be required to obtain the orbital part of the response. Only singlet excited states contribute to the spectrum with kick_density, and only triplet excited states contribute with kick_spin. It is possible also to use symmetry (as described in this paper) to obtain both at once with kick_spin_and_density.

When the propagation completes, run oct-propagation_spectrum to obtain the spectrum. The file cross_section_vector now has separate columns for cross-section and strength function for each spin.

# nspin         2
# kick mode    1
# kick strength    0.005291772086
# pol(1)           1.000000000000    0.000000000000    0.000000000000
# pol(2)           0.000000000000    1.000000000000    0.000000000000
# pol(3)           0.000000000000    0.000000000000    1.000000000000
# direction    1
# Equiv. axes  0
# wprime           0.000000000000    0.000000000000    1.000000000000
# kick time        0.000000000000
 # Number of time steps =     4348
# PropagationSpectrumDampMode   =    2
# PropagationSpectrumDampFactor =     4.0817
# PropagationSpectrumStartTime  =     0.0000
# PropagationSpectrumEndTime    =    10.0004
# PropagationSpectrumMaxEnergy  =    20.0000
# PropagationSpectrumEnergyStep =     0.0100
# Electronic sum rule       =         0.000000
# Polarizability (sum rule) =         0.000009
#       Energy        sigma(1, nspin=1)   sigma(2, nspin=1)   sigma(3, nspin=1)   sigma(1, nspin=2)   sigma(2, nspin=2)   sigma(3, nspin=2)   StrengthFunction(1) StrengthFunction(2)
#        [eV]               [A^2]               [A^2]               [A^2]               [A^2]               [A^2]               [A^2]               [1/eV]              [1/eV]       
      0.00000000E+00     -0.00000000E+00     -0.00000000E+00     -0.00000000E+00     -0.00000000E+00     -0.00000000E+00     -0.00000000E+00     -0.00000000E+00     -0.00000000E+00
      0.10000000E-01      0.28461497E-08      0.14355115E-11     -0.10581816E-12     -0.28290615E-08     -0.17883593E-10     -0.28694560E-11      0.25930434E-08     -0.25774748E-08
      0.20000000E-01      0.11345196E-07      0.57352213E-11     -0.42273961E-12     -0.11276909E-07     -0.71449298E-10     -0.11464241E-10      0.10336275E-07     -0.10274060E-07
      0.30000000E-01      0.25379450E-07      0.12878695E-10     -0.94916859E-12     -0.25226048E-07     -0.16044239E-09     -0.25743684E-10      0.23122471E-07     -0.22982711E-07
      0.40000000E-01      0.44754476E-07      0.22832008E-10     -0.16824564E-11     -0.44482368E-07     -0.28443998E-09     -0.45640266E-10      0.40774488E-07     -0.40526579E-07
      0.50000000E-01      0.69201649E-07      0.35547943E-10     -0.26189176E-11     -0.68777698E-07     -0.44285346E-09     -0.71060006E-10      0.63047589E-07     -0.62661340E-07

The physically meaningful strength function for the magnetic excitation is given by StrengthFunction(1) - StrengthFunction(2) (since the kick was opposite for the two spins). [If we had obtained cross_section_tensor, then the trace in the second column would be the appropriate cross-section to consider.] We can plot and compare to the singlet results obtained in Tutorial:Optical Spectra from TD:

Comparison of absorption spectrum of CH4 calculated with time-propagation for singlets and triplets.

You can also repeat the calculation if you like for TDDeltaStrengthMode = kick_density (the default) and confirm that the result is the same as for the non-spin-polarized calculation.

Casida equation

While the td calculation required a spin-polarized ground state, the casida mode can take advantage of the fact that the two spins are equivalent in a non-spin-polarized system to calculate triplets without the need for a spin-polarized run. The effective kernels in these cases are:

f_{\rm Hxc}^{\rm singlet} \left[ \rho \right] = f^{\uparrow}_{\rm Hxc} \left[ \rho ^{\uparrow} \right] + f^{\uparrow}_{\rm Hxc} \left[ \rho^{\downarrow} \right] = f_{\rm H} \left[ \rho \right] + f^{\uparrow}_{\rm xc} \left[ \rho ^{\uparrow} \right] + f^{\uparrow}_{\rm xc} \left[ \rho^{\downarrow} \right]

f_{\rm Hxc}^{\rm triplet} \left[ \rho \right] = f^{\uparrow}_{\rm Hxc} \left[ \rho ^{\uparrow} \right] - f^{\uparrow}_{\rm Hxc} \left[ \rho^{\downarrow} \right] = f^{\uparrow}_{\rm xc} \left[ \rho ^{\uparrow} \right] - f^{\uparrow}_{\rm xc} \left[ \rho^{\downarrow} \right]

Therefore, we will do a non-spin-polarized ground-state calculation for this run (not continuing from the spin-polarized state used for time propagation). Do ground-state and unoccupied-states runs, as in Tutorial:Optical Spectra from Casida, with the input file

CalculationMode = unocc
UnitsOutput = eV_angstrom

Radius = 4.*angstrom
Spacing = 0.18*angstrom

CH = 1.097*angstrom
  "C" |           0 |          0 |           0 
  "H" |  CH/sqrt(3) | CH/sqrt(3) |  CH/sqrt(3)
  "H" | -CH/sqrt(3) |-CH/sqrt(3) |  CH/sqrt(3)
  "H" |  CH/sqrt(3) |-CH/sqrt(3) | -CH/sqrt(3)
  "H" | -CH/sqrt(3) | CH/sqrt(3) | -CH/sqrt(3)

ExtraStates = 10

Then, do a Casida run by setting CalculationMode = casida, and adding CasidaCalcTriplet = yes. Run oct-casida_spectrum, plot the results, and compare to the singlet calculation. How do the singlet and triplet energy levels compare? Can you explain a general relation between them? How does the run-time compare between singlet and triplet, and why?

Comparison of absorption spectrum of CH4 calculated with the Casida equation for singlets and triplets.

Try doing a spin-polarized calculation, and compare the results to the singlet and triplet kernel Casida calculations.


As for the singlet spectrum, we can compare the time-propagation and Casida results. What is the main difference, and what is the reason for it?

Comparison of triplet absorption spectrum of CH4 calculated with time-propagation and with the Casida equation.

Previous Tutorial:Optical Spectra from TD:Symmetries - Next Tutorial:Recipe

Back to Tutorial