Density functional theory and oxygen spin

I would like to perform single-point/geometry-optimization/NEB calculations on systems involving both molecular oxygens and adsorbed oxygens. Reductions by hydrogens are also involved.

I am still struggling to find an approach to deal with the spin. Molecular oxygen is a triplet, but this is not the case after/during a reaction/adsorption.

The DFT calculation should be able to find a triplet electronic state for molecular oxygens (gas phase) without me enforcing it.

I am using Quantum ESPRESSO currently and I am still unsure about spin calculations in general.

I am pretty sure about using nspin=2 (spin-polarized calculation) and not setting any tot_magnetization. For a simple isolated molecular oxygen molecule the final magnetization is around 0.7 per atom, so should I put this value as "starting_magnetization" for the oxygen element?

1 Answer

I don't have much experience with QE, but in VASP, which I imagine is pretty similar, oftentimes not setting an initial magnetization on each ion results in zero magnetic moments on those ions. This is probably because, numerically, it finds a local minima that results in zero spin despite doing a spin polarized calculation. I would highly suggest initializing the spin of the unit cell or, better yet, of individual ions to roughly what you think they should be. In the case of O2, that would be 1.0 per oxygen (ie 1 spin up electron per O).

Side note: The VASP wiki also states that it's sometimes a good idea to set the initial magnetic moments 1.2-1.5 times what you think it ought to be, though I'll defer to someone more experienced with QE to tell you whether that's a good idea or not.