Regarding the issue of spin-polarization and spin-orbit coupling in BSE or TDDFT, it is important to clarify some points: The calculation of the density response function $\chi_0$ (which is the basic quantity which serves to calculate the screening in BSE or the interacting $\chi$ in TDDFT through the Dyson equation) in exciting is not spin resolved, that is, we do not have an object like $\chi_{0\sigma\sigma'}$, but represents always the functional derivative of the TOTAL density with respect to the KS potential. However, this does not mean that spin is not accounted in the calculation of $\chi_0$. On the contrary, the momentum matrix elements used for the calculation of $\chi_0$ for q=0 calculations are correctly treated in the second-variational approach with the second variational orbitals obtained from the ground state part. Morover, in a collinear case the summations over occ and unocc states involved in the calculation of $\chi_0$ have the correct occupation numbers for the different spin chanels (which, by the way, internally in the code are not explicit, so if you dig in the code you will not normally find a spin index).

Now let's say that you want to calculate the MOKE effect with TDDFT, for which you need the full conductivity tensor, which in turn must take into account spin polarization (not be spin resolved) and spin-orbit coupling in order to give the correct Kerr rotation. Is that possible in the TDDFT part? the answer is: not yet in Beryllium. But the reason is not due to a lack of account of spin-polarization (and spin-orbit coupling) effects in exciting (or, in particular, in the TDDFT part), but due to the lack of the anomalous Hall conductivity (AHC) term in TDDFT. This is a tricky issue that was made clear very recently in PRB **86**, 125139 (2012). We have a preliminary implementation of this extra term in the TDDFT part of exciting which is giving the correct MOKE spectrum (we tested this preliminary implementation for Ni with good results). This addition is expected to be included in a next release of the code.

With respect to the spin-orbit coupling (SOC) account in TDDFT, some comments should also be made too: Its effect on the momentum operator $\Pi_{nm}$ comes from two sources: (*i*) through the effect of SOC on the KS orbitals and (*ii*) through the spin-orbit term in $\Pi_{nm}$ [see Eq. (4) of PRB **45**, 10924 (1992)]. The source (*i*) is correctly accounted for in exciting, but the source (*ii*) is not accounted at present. However, the contribution of this additional term is known to be much smaller then the canonical momentum part and is usually neglected in the calculations of MOKE [see e.g. PRB **45**, 10924 (1992)]. Our preliminary calculations of the MOKE spectrum for Ni neglecting the term (*ii*) give reasonable results.

In sum the answer to the question "are spin-polarization and spin-orbit coupling BSE or TDDFT calculations possible?" depends on what you want to obtain. If it is the usual magneto-orbital effects the answer is yes (although you can still not obtain it but for a different reason as explained above). If what you want is to obtain spin-resolved response functions, the answer is not, but will be most probably implemented in a future version.

The particular calculation of the MOKE spectrum is currently possible through the properties/moke element. This triggers a calculation of optical properties using the usual independent particle Kubo formulation for the current-current response function (which naturally includes the AHC term absent at present in the TDDFT part). An example input file to obtain the MOKE spectrum for Ni is shown below. The resulting spectrum can be found in KERR.OUT.

Best regards

S. Rigamonti

exciting team

input.xml file to make a MOKE calculation:

```
<input>
<title>FM fcc Ni</title>
<structure speciespath="Your exciting path/exciting/species">
<crystal scale="6.652">
<basevect> 0.5 0.5 0.0 </basevect>
<basevect> 0.5 0.0 0.5 </basevect>
<basevect> 0.0 0.5 0.5 </basevect>
</crystal>
<species speciesfile="Ni.xml" rmt="2.3">
<atom coord="0.0 0.0 0.0"/>
</species>
</structure>
<groundstate
do="fromscratch"
xctype="LDA_PW"
rgkmax="8.0"
ngridk="12 12 12"
stype="Methfessel-Paxton 1"
swidth="0.001"
nempty="40"
>
<spin
bfieldc="0.0 0.0 -1.0"
reducebf="0.5"
spinorb="true">
</spin>
</groundstate>
<properties>
<moke
intraband="true"
swidth="0.01"
wmax="0.3"
wgrid="400"
tevout="true"
>
</moke>
</properties>
</input>
```