01.02.2015 Views

Introduction to the octopus code - TDDFT.org

Introduction to the octopus code - TDDFT.org

Introduction to the octopus code - TDDFT.org

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

section 2. First session 7<br />

valence electrons (due <strong>to</strong> spin degeneracy). You could have added some extra wave<br />

functions <strong>to</strong> <strong>the</strong> static ground-state calculation by including, e.g.,<br />

ExtraStates = 3<br />

in <strong>the</strong> input file. This would instruct oc<strong>to</strong>pus <strong>to</strong> use three additional wave functions<br />

in <strong>the</strong> SCF cycle. Of course <strong>the</strong>se wave functions would correspond <strong>to</strong> unoccupied<br />

states in <strong>the</strong> cases we are studying, but could be important if you had some degeneracy<br />

or quasi-degeneracy at <strong>the</strong> HOMO level. In that case you could also fix <strong>the</strong><br />

occupation numbers and distribute <strong>the</strong> <strong>to</strong>p-lying electrons among <strong>the</strong> degenerate<br />

orbitals. For example, <strong>to</strong> compute <strong>the</strong> ground-state of <strong>the</strong> carbon a<strong>to</strong>m you could<br />

resort <strong>to</strong>:<br />

ExtraStates = 2<br />

%Occupations<br />

2 | 2/3 | 2/3 | 2/3<br />

%<br />

These extra wave functions and eigenvalues would of course be updated during <strong>the</strong><br />

SCF cycle and would contribute <strong>to</strong> <strong>the</strong> ground-state density. These “extra” states<br />

are not really unoccupied, but partially occupied.<br />

If <strong>the</strong> states that you want are really <strong>the</strong> empty states above <strong>the</strong> Fermi level (zero<br />

occupation) you can also, given some previously calculated ground-state density,<br />

determine those unoccupied states without including <strong>the</strong>m in <strong>the</strong> SCF cycle. These<br />

states are calculated in a single run using a fixed density. This method of obtaining<br />

<strong>the</strong> unoccupied states is more adequate than using <strong>the</strong> previous one and setting<br />

some zeros in <strong>the</strong> %Occupations block.<br />

With <strong>the</strong>se calculations one can get a first approximation <strong>to</strong> <strong>the</strong> excitation energies<br />

of <strong>the</strong> system by simply taking <strong>the</strong> differences between <strong>the</strong> eigenvalues. Although<br />

not justifiable, this approach does give a rough idea of <strong>the</strong> excitation spectrum.<br />

Now, you will calculate some unoccupied states of <strong>the</strong> system. This is done by<br />

replacing<br />

CalculationMode = gs<br />

with<br />

CalculationMode = unocc<br />

in <strong>the</strong> input file. The number of unoccupied Kohn-Sham states that is going <strong>to</strong> be<br />

calculated is decided with <strong>the</strong> variable NumberUnoccStates, e.g.:<br />

NumberUnoccStates = 10<br />

Upon running <strong>the</strong> <strong>code</strong> with this input you will find <strong>the</strong> list of eigenvalues in<br />

static/eigenvalues. Please note that convergence can be very slow. There are<br />

some input variables that control <strong>the</strong> convergence of <strong>the</strong> process; note especially:

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!