Here, we give some examples to perform spin-flip TDDFT calculation.
Spin-flip TDDFT to calculate triplet state of H2O molecule
We start from ground state of H2O. It is a close shell 1A1 state. We would like to calculate several triplet excited states using spin-flip TDDFT. Here is a input with comments. Notice: the words after # are comments. You may negelect them in your input.
$COMPASS Title H2O Molecule test run, cc-pvdz Basis cc-pvdz Geometry O 0.000000000 0.000000000 0.369372944 H 0.000000000 -0.783975899 -0.184686472 H 0.000000000 0.783975899 -0.184686472 End geometry Skeleton # You should not neglect this line. $END $XUANYUAN Direct # this line and the following line is important. Direct SCF is required. Schwarz $END $SCF RKS dft functional B3lyp $END # Spin flip up TDDFT calculation from RKS reference. $tddft imethod 1 # Starts from RKS calculation. 1 RKS, 2 UKS isf 1 # require spin flip up calculation idiag 1 itda 0 # TDDFT is evoked. iexit 4 # For each irreps, 4 states are required. $end # Spin flip up TDA calculation from RKS reference. $tddft imethod 1 # Starts from RKS calculation. 1 RKS, 2 UKS isf 1 # require spin flip up calculation idiag 1 itda 1 # TDA is evoked. iexit 4 # For each irreps, 4 states are required. $end
Tips: You may find this input in $BDFHOME/tests/input/h2o_spinflip_TDDFT.inp. TDDFT and TDA calculations are required. You may need only one of them.
Spin-flip TDA for open shell molecules
Spin-flip TDA can be used to calculate open shell systems. Here we calculate singlet of O2 molecule using spin-flip down TDA from triplet.
## Author, Bingbing Suo, Spin-flip TDA calculation of O2 molecule ### %echo " CHECKDATA AO-TDA ===" $COMPASS Title H10 Basis cc-pvdz Geometry O 0. 0. 0. O 0. 0. 1.5 END geometry skeleton Group D(2h) Check $END $XUANYUAN Direct Schwarz $END $SCF ROKS DFT B3LYP charge 0 spin 3 # triplet of O2 $END %echo "=== CHECKDATA Spin-flip down to get singlet. ====" $tddft imethod 2 isf -1 # spin flip down itda 1 idiag 1 iexit 4 ialda 2 $END %echo "=== CHECKDATA Spin-flip up to get quintet. ====" $tddft imethod 2 isf 1 # spin flip up itda 1 idiag 1 iexit 4 ialda 2 $END %echo "=== CHECKDATA Spin-flip up and down together ====" $tddft imethod 2 isf 3 # spin flip up and flip down itda 1 idiag 1 iexit 4 ialda 2 $END
Tips: You may find this input in $BDFHOME/tests/input/O2_spinflip_TDA.inp. Several spin-flip TDA calculations are required. You may need only one of them. Spin-flip U-TDDFT is not preferred.