Constrained DFT module
Constrained density functional theory (CDFT) is one of the generalization approaches of density functional theory (DFT), which allows the physical geometry constraint of molecules based on electron density. You can find a ton of papers that describe CDFT and previous works on its applications in the investigation of electron and charge transfer in material and catalysts.
Example of input file for CDFT calculation
dft
xc b3lyp
direct
cdft #atom_start #atom_final charge xx !! constrain charge=xx for fragment 1 which including atom no # to atom no #
cdft #atom_start #atom_final spin xx !! constrain spin=xx for fragment 1 which including atom no # to atom no #
... !! You can define another fragment within a molecule.
...
convegence nolevelshifting
mulliken
print "mulliken ao"
end
Example of input file for CDFT calculation and calculating electron transfer matrix element.
echo
title "Donor molecule"
start cdft-test
memory total 2 GB
scratch_dir
geometry da units angstroms noautoz noautosym
H -0.795156758 0.000000000 -2.227654133
C -0.795156758 0.487597890 -1.256117947
C -0.795156758 1.860916946 -1.165576758
C -0.795156758 2.493399263 0.102084608
C -0.795156758 1.739878824 1.253783303
C -0.795156758 0.320033769 1.195949286
C -0.795156758 -0.320033769 -0.086914861
C -0.795156758 -1.739878824 -0.144748877
C -0.795156758 -2.493399263 1.006949817
C -0.795156758 -1.860916946 2.274611184
C -0.795156758 -0.487597890 2.365152373
H -0.795156758 2.466184811 -2.067366236
H -0.795156758 3.577893185 0.160790532
H -0.795156758 2.222891720 2.227607108
H -0.795156758 0.000000000 3.336688558
H -0.795156758 -2.466184811 3.176400661
H -0.795156758 -3.577893185 0.948243894
H -0.795156758 -2.222891720 -1.118572683
O 0.450902565 -1.273158752 0.405804063
O 0.486697153 -0.727754909 1.781177974
end
basis
* library 3-21g
end
#-----------------------------------------------------------------------------------
# Driver Control
cosmo; dielec 78.4; lineq 0; end
freq; temp 1 298.15; end
driver; maxiter 200; loose; end
set driver:linopt 0
#-----------------------------------------------------------------------------------
#Fragments for Donor-Acceptor
set geometry da
charge 0
driver
maxiter 100
end
dft
direct
xc b3lyp
iterations 200
grid fine
mult 1
odft
cdft 1 18 charge 0.0 # On the Neutral geometry
cdft 19 20 charge 0.0
vectors input atomic output reactant.mos
convergence nolevelshifting
end
set dft:cdft_maxiter 500
task dft energy
#-----------------------------------------------------------------------------------
# Fragments for Donor-Acceptor in charge transfer state
set geometry da
charge 0
dft
direct
xc b3lyp
iterations 100
grid fine
mult 3
odft
cdft 1 18 charge +1.0 # Donor with positive charge
cdft 19 20 charge -1.0 # Oxygen with negative charge
vectors input atomic output product.mos
convergence nolevelshifting
end
set dft:cdft_maxiter 500
task dft energy
#-----------------------------------------------------------------------------------
charge 0
set geometry da
scf
uhf
singlet
vectors input reactant.mos output reactant-scf.mos
direct
noscf
end
task scf
charge 0
set geometry da
scf
uhf
triplet
vectors input product.mos output product-scf.mos
direct
noscf
end
task scf
#-----------------------------------------------------------------------------------
set geometry da
charge 0
et
vectors reactants reactant-scf.mos
vectors products product-scf.mos
end
task scf et
Rangsiman Ketkaew