Introduction to the octopus code - TDDFT.org
Introduction to the octopus code - TDDFT.org
Introduction to the octopus code - TDDFT.org
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
8<br />
EigenSolverInitTolerance = 1.0e-6<br />
EigenSolverFinalToleranceIteration = 7<br />
EigenSolverFinalTolerance = 1.0e-6<br />
EigenSolverMaxIter = 50<br />
[The values given are <strong>the</strong> default ones. If you find that <strong>the</strong> convergence is <strong>to</strong>o slow,<br />
you can try increasing <strong>the</strong> <strong>to</strong>lerance thresholds. Note that <strong>the</strong>se variables do not only<br />
apply <strong>to</strong> <strong>the</strong> calculation of unoccupied states; <strong>the</strong>y also apply <strong>to</strong> <strong>the</strong> eigenproblem<br />
at each one of <strong>the</strong> SCF step during <strong>the</strong> calculation of <strong>the</strong> ground state].<br />
Note also that you can perform a first run setting a poor convergence criterion, and<br />
afterwards re-start <strong>the</strong> run with a more stringent criterion, making sure that you<br />
re-read <strong>the</strong> previously badly converged wave functions by setting:<br />
FromScratch = no<br />
This will restart <strong>the</strong> unoccupied states calculation from <strong>the</strong> point where <strong>the</strong> previous<br />
calculation ended. [This also holds for any o<strong>the</strong>r run mode; <strong>the</strong> FromScratch<br />
variable instructs <strong>the</strong> <strong>code</strong> <strong>to</strong> try and restart a previous calculation, or not.] This is<br />
important as using <strong>the</strong> default value of EigenSolverMaxIter, it is very likely that<br />
your unoccupied states will not converge (<strong>the</strong> program will tell, in <strong>the</strong> standard<br />
output, whe<strong>the</strong>r or not <strong>the</strong> eigenstates are converged or not). You may increase <strong>the</strong><br />
value of EigenSolverMaxIter and restart.<br />
The distribution of KS eigenvalues (especially <strong>the</strong> differences between occupied and<br />
unoccupied ones) provides us with a first impression about <strong>the</strong> possible excitations<br />
of <strong>the</strong> system. However, it is only a very crude approximation; in <strong>the</strong> following we<br />
will learn how <strong>to</strong> improve on it.<br />
Q6. How do <strong>the</strong> eigenvalue differences differ from <strong>the</strong> experimental excitation energies<br />
provided, e.g., by an absorption spectrum<br />
4. Determine <strong>the</strong> optimal time-step for <strong>the</strong> propagation of <strong>the</strong> TDKS equations<br />
While <strong>the</strong> time-independent Kohn-Sham equations constitute a boundary value<br />
problem, <strong>the</strong> solution of <strong>the</strong> time-dependent Kohn-Sham equations is an initial<br />
value problem. At t = t 0 <strong>the</strong> system is in some initial state described by <strong>the</strong> Kohn-<br />
Sham orbitals ϕ i (⃗r, t 0 ). In most cases <strong>the</strong> initial state will be <strong>the</strong> ground state of<br />
<strong>the</strong> system (i.e., ϕ i (⃗r, t 0 ) will be <strong>the</strong> solution of <strong>the</strong> ground-state Kohn-Sham equations).<br />
To solve <strong>the</strong> TDKS equations amounts <strong>to</strong> propagate this initial state until<br />
some final time, t f .<br />
The time-dependent Kohn-Sham equations can be rewritten in <strong>the</strong> integral form<br />
where <strong>the</strong> time-evolution opera<strong>to</strong>r, Û, is defined by<br />
[<br />
ϕ i (⃗r, t f ) = Û(t f, t 0 )ϕ i (⃗r, t 0 ) , (8)<br />
Û(t ′ , t) = ˆT exp<br />
−i<br />
∫ t ′<br />
t<br />
dτ ĤKS(τ)<br />
]<br />
. (9)