Hey everyone!
I was running the example for the use of RT-TDDFT for the excitation of water but I'm having some issues with the post-treatment.
The calculation seems to go fine and extraction of the dipole moment with nw_rtparse.py seems to goes fine.
I can then apply the Fourier transform with the fft1d.m utility (octave -q fft1d.m x.dat > xw.dat).
Sample xw.dat
period = 1.0200e+04
0.0000e+00 7.4918e-05 0.0000e+00 7.4918e-05
6.1606e-04 7.4913e-05 -9.9712e-08 7.4913e-05
1.2321e-03 7.4896e-05 -1.9808e-07 7.4897e-05
1.8482e-03 7.4870e-05 -2.9376e-07 7.4870e-05
2.4642e-03 7.4833e-05 -3.8548e-07 7.4834e-05
3.0803e-03 7.4787e-05 -4.7201e-07 7.4789e-05
3.6964e-03 7.4733e-05 -5.5220e-07 7.4735e-05
4.3124e-03 7.4670e-05 -6.2499e-07 7.4672e-05
4.9285e-03 7.4600e-05 -6.8945e-07 7.4603e-05
5.5445e-03 7.4525e-05 -7.4476e-07 7.4528e-05
6.1606e-03 7.4444e-05 -7.9025e-07 7.4449e-05
6.7766e-03 7.4361e-05 -8.2539e-07 7.4365e-05
7.3927e-03 7.4275e-05 -8.4981e-07 7.4280e-05
8.0088e-03 7.4189e-05 -8.6331e-07 7.4194e-05
8.6248e-03 7.4102e-05 -8.6584e-07 7.4108e-05
9.2409e-03 7.4018e-05 -8.5754e-07 7.4023e-05
9.8569e-03 7.3937e-05 -8.3869e-07 7.3942e-05
But the rotate utility doesn't work for me, seemingly getting stuck in a loop.
$ python rotate_fft.py xw.dat > xw1.dat
^CTraceback (most recent call last):
File "rotate_fft.py", line 50, in <module>
main()
File "rotate_fft.py", line 42, in main
data = parse_stdin ()
File "rotate_fft.py", line 30, in parse_stdin
lines = sys.stdin.readlines ()
KeyboardInterrupt
I figured I'd just apply the same transformations the rotate tool provides using something else, but this appears not to do much to the values.
Attempting to plot all of this gives me a nonsense result, has I both have no shape corresponding to the expected spectrum, with negative values going for the "absorption" and a coordinate axis that extends to thousands of eV's.
https://imgur.com/qz35gZy
So my guess is I'm missing something in the application of the Fourier transform, does anyone have an idea what I might be missing?
|