linear response TDDFT calculations


Clicked A Few Times
I am using the latest NWChem 6.5 version.
I want to compute the excited state charge density and electrostatic potential of a system. For this I used the grad directive of TDDFT. But everytime error comes as 'unknown directive'. Where am I going wrong?

My input file is
START water
TITLE "tddft test"
GEOMETRY
O  0.00000000 0.00000000  0.12982363
H 0.75933475 0.00000000 -0.46621158
H -0.75933475 0.00000000 -0.46621158
END

BASIS
  • library 6-31G*
END

DFT
XC B3LYP
END

TDDFT
cis
NROOTS 20
civecs
grad
root 1
end
END
TASK tddft optimize
TASK TDDFT ENERGY


and the output error is

tddft_input: filename not found; default name will be used
------------------------------------------------------------------------
tddft_input: unknown directive 0
------------------------------------------------------------------------
There is an error in the input file
------------------------------------------------------------------------

Gets Around
You have two errors. You need to specify "* library 6-31G*" instead of "library 6-31G*" and you need to choose a single spin state in the tddft block. Put in "notriplet" if you want the singlet and "nosinglet" if you want the triplet.

Clicked A Few Times
Quote:Mernst Jun 27th 3:33 pm
You have two errors. You need to specify "* library 6-31G*" instead of "library 6-31G*" and you need to choose a single spin state in the tddft block. Put in "notriplet" if you want the singlet and "nosinglet" if you want the triplet.


I modified the code as per your suggestions but its still displaying the same error.

START water
TITLE "tddft test"
GEOMETRY
O  0.00000000 0.00000000  0.12982363
H 0.75933475 0.00000000 -0.46621158
H -0.75933475 0.00000000 -0.46621158
END

BASIS
* library 6-31G*
END

DFT
XC B3LYP
END

TDDFT
cis
NROOTS 20
civecs
nosinglet
grad
root 1
end
END
TASK tddft optimize
TASK TDDFT ENERGY


Output error is
tddft_input: filename not found; default name will be used
------------------------------------------------------------------------
tddft_input: unknown directive 0
------------------------------------------------------------------------
There is an error in the input file
------------------------------------------------------------------------

Gets Around
I am not sure why it is failing. This job completes without errors for me:

START water
TITLE "tddft test"
print low

GEOMETRY
 O  0.00000000 0.00000000  0.12982363
 H  0.75933475 0.00000000 -0.46621158
 H -0.75933475 0.00000000 -0.46621158
END

BASIS
 * library 6-31G*
END

DFT
 XC B3LYP
END

TDDFT
 cis
 NROOTS 20
 civecs
 nosinglet
 grad
  root 1
 end
END

TASK tddft optimize
TASK TDDFT ENERGY


log is here: http://pastebin.com/3R5dy02y

Clicked A Few Times
I tried using RT_TDDFT in place of TDDFT. I had to get the charge density of the system when an external oscillating field (1mV/nm 16GHz) is applied. But the cube file I am getting shows no changes even if I apply no field. Can you figure this out? How to get the excited state induced charge density?

START water
TITLE "tddft test"
GEOMETRY "system" units angstroms nocenter noautoz noautosym
O  0.00000000 0.00000000  0.12982363
H 0.75933475 0.00000000 -0.46621158
H -0.75933475 0.00000000 -0.46621158
END
set geometry "system"
BASIS
* library 6-31G*
END

DFT
XC B3LYP
END
task dft property
unset rt_tddft:*
rt_tddft
tmax 200.0
dt 0.2
field "resonant"
type cw
polarization z
frequency 0.00000039
max 0.000019
spin total
end
excite "system" with "resonant"
end
task dft rt_tddft
dplot
TITLE water
vectors water.movecs
LimitXYZ
-3.0 3.0 10
-3.0 3.0 10
-3.0 3.0 10
spin total
gaussian
output chargedensity.cube
end
task dplot

Forum Regular
The RT-TDDFT code does not modify the movecs file so with the input file you have, you will always generate the ground state charge distribution, regardless of what is specified for the RT-TDDFT calculation. If you want to plot the charge density from a RT-TDDFT simulation you need to add a visualization sub-block to your RT-TDDFT block (see http://nwchemgit.github.io/index.php/Release65:RT-TDDFT#VISUALIZATION_--_Sub-block_for_contr...).

Another note, water is not going to have an electronic resonance at ~1x10^-5 eV. With B3LYP/6-31G*, the lowest singlet state is at 7.95 eV, so the charge distribution you would calculate with the above set up would not correspond to an electronic excited state. Additionally, even if your field was tuned to the electronic transition energy, with a maximum amplitude of only 0.000019 a.u., you are going to see very little in the way of an excitation out of the ground state. Consider adding

print moocc

to your RT-TDDFT block in order to monitor the occupations of the molecular orbitals during the RT-TDDFT simulation.

If you are interested in the charge distribution for an excited state, the LR-TDDFT calculation is more straightforward and faster for small systems. Have you verified that you are running the calculation with NWChem 6.5? This is the only reason I can think of for the error message that you are seeing with the above TDDFT input.

Best,
Sean

Clicked A Few Times
Oh yes! I was using version 6.3 and that is why grad was not working. I downloaded it from the Software centre but didnt see it was the older one.
Thanks Sean.

So now in version 6.3 as there is no grad directive, how do I get the excited state charge density? I tried print "excited state" but it didnt make any difference.

Forum Regular
Since analytic gradients for TDDFT were not implemented in version 6.3, it would not be possible to use the LR-TDDFT code to get the excited state density. Your options would be to update to version 6.5 or you could use the RT-TDDFT code as described above to try to resonantly excite your system to the excited state and use the visualization feature to generate the charge density plot. I would recommend upgrading to version 6.5 in order to generate the excited state charge density with the LR-TDDFT code. If you decide to pursue the RT-TDDFT option, I would recommend taking a look at some of the literature on resonant excitations in RT-TDDFT (J. Chem. Phys. 141, 184112 (2014); http://dx.doi.org/10.1063/1.4900514 this article and the references within would be a good place to start).

Best,
Sean

Clicked A Few Times
I upgraded it to the 6.5 version. Now TDDFT grad is working.
and my final code is like this --

start nodna
TITLE "tddft test"
GEOMETRY "system" units angstroms nocenter noautoz noautosym
Au        0.000000        0.000000        0.000000
Au 0.000000 0.000000 2.883758
Au 2.497408 0.000000 1.441879
Au 2.497408 0.000000 -1.441879
Au 0.000000 0.000000 -2.883758
Au -2.497408 0.000000 -1.441879
Au -2.497408 0.000000 1.441879
Au 0.832469 2.354579 1.441879
Au 0.832469 2.354579 -1.441879
Au -1.664939 2.354579 0.000000
Au 0.000000 4.709157 0.000000
Au 0.000000 4.709157 2.883758
Au 2.497408 4.709157 1.441879
Au 2.497408 4.709157 -1.441879
Au 0.000000 4.709157 -2.883758
Au -2.497408 4.709157 -1.441879
Au -2.497408 4.709157 1.441879
Au 0.832469 7.063736 1.441879
Au 0.832469 7.063736 -1.441879
Au -1.664939 7.063736 0.000000
Au 0.000000 9.418315 0.000000
Au 0.000000 9.418315 2.883758
Au 2.497408 9.418315 1.441879
Au 2.497408 9.418315 -1.441879
Au 0.000000 9.418315 -2.883758
Au -2.497408 9.418315 -1.441879
Au -2.497408 9.418315 1.441879
Au 0.832469 11.772894 1.441879
Au 0.832469 11.772894 -1.441879
Au -1.664939 11.772894 0.000000
Au 0.000000 14.127473 0.000000
Au 0.000000 14.127473 2.883758
Au 2.497408 14.127473 1.441879
Au 2.497408 14.127473 -1.441879
Au 0.000000 14.127473 -2.883758
Au -2.497408 14.127473 -1.441879
Au -2.497408 14.127473 1.441879
Au 0.832469 16.482052 1.441879
Au 0.832469 16.482052 -1.441879
Au -1.664939 16.482052 0.000000
Au 0.000000 -15.399999 0.000000
Au 0.000000 -15.399999 2.883758
Au 2.497408 -15.399999 1.441879
Au 2.497408 -15.399999 -1.441879
Au 0.000000 -15.399999 -2.883758
Au -2.497408 -15.399999 -1.441879
Au -2.497408 -15.399999 1.441879
Au 0.832469 -17.754580 1.441879
Au 0.832469 -17.754580 -1.441879
Au -1.664939 -17.754580 0.000000
Au 0.000000 -20.109158 0.000000
Au 0.000000 -20.109158 2.883758
Au 2.497408 -20.109158 1.441879
Au 2.497408 -20.109158 -1.441879
Au 0.000000 -20.109158 -2.883758
Au -2.497408 -20.109158 -1.441879
Au -2.497408 -20.109158 1.441879
Au 0.832469 -22.463736 1.441879
Au 0.832469 -22.463736 -1.441879
Au -1.664939 -22.463736 0.000000
Au 0.000000 -24.818316 0.000000
Au 0.000000 -24.818316 2.883758
Au 2.497408 -24.818316 1.441879
Au 2.497408 -24.818316 -1.441879
Au 0.000000 -24.818316 -2.883758
Au -2.497408 -24.818316 -1.441879
Au -2.497408 -24.818316 1.441879
Au 0.832469 -27.172895 1.441879
Au 0.832469 -27.172895 -1.441879
Au -1.664939 -27.172895 0.000000
Au 0.000000 -29.527473 0.000000
Au 0.000000 -29.527473 2.883758
Au 2.497408 -29.527473 1.441879
Au 2.497408 -29.527473 -1.441879
Au 0.000000 -29.527473 -2.883758
Au -2.497408 -29.527473 -1.441879
Au -2.497408 -29.527473 1.441879
Au 0.832469 -31.882051 1.441879
Au 0.832469 -31.882051 -1.441879
Au -1.664939 -31.882051 0.000000
end
set geometry "system"
BASIS
Au library crenbs_ecp
END

ecp
Au library crenbs_ecp
end

dft
xc b3lyp
end

tddft
cis
nroots 2
nosinglet
civecs
grad
root 1
end
end
task tddft gradient
task tddft energy

dplot
densmat nodna.dmat
LimitXYZ
-2.5 2.5 80
-32.0 16.5 20
-2.5 3.0 80
gaussian
output fullcharge.cube
end
task dplot


1. Just to be sure, the fullcharge.cube file contains the value of charge induced (charge response) at each specified grid points because of the linear response to external perturbation. Isn't it?
2. Now if I have to know the voltage response of the system beacause of the external perturbation, should i use task esp? I don't think it will work as it gives the potential at each grid point due each atom. Can you suggest a way?

Thanks!

Forum Regular
fullcharge.cube would contain the excited state charge density. Specifically based upon the input that you have copied above, it would contain the charge density of the lowest triplet state. If you are interested in the charge density of the lowest triplet state, my suggestion would be to just do a ground state calculation on the triplet (add mult 3 to the dft block) as this would be much faster than doing the LR-TDDFT calculation from the singlet state. Additionally, the task tddft energy directive is redundant here because the task tddft gradient directive will calculate the excitation energies before calculating the gradient for the state specified in the grad sub-block.

I am not sure about the voltage response.

Best,
Sean

Clicked A Few Times
Okay! Thanks a lot.


Forum >> NWChem's corner >> General Topics