zerothi / sisl

Electronic structure Python package for post analysis and large scale tight-binding DFT/NEGF calculations
https://zerothi.github.io/sisl
Mozilla Public License 2.0
182 stars 58 forks source link

Löwdin population analysis from `DensityMatrix` #506

Open tfrederiksen opened 1 year ago

tfrederiksen commented 1 year ago

Describe the feature Similar to the Mulliken population analysis already available for sisl.physics.DensityMatrix.mulliken and sisl.physics.EnergyDensityMatrix.mulliken it could be handy (and should be easy) to add also the related Löwdin population analysis (as performed by default in ORCA #500) to sisl.

From the Löwdin-transformed (orthogonalized) density matrix, i.e.,

$$ \rho^L{\mu\nu} = [{\bf S}^{1/2} \rho {\bf S}^{1/2}]{\mu\nu} $$

the Löwdin orbital- and atom-resolved populations are defined as $$L{\mu} = \rho^L{\mu\mu},$$ $$LA = \sum{\mu \in A} L_\mu.$$

zerothi commented 1 year ago

This is not so easy for periodic systems since you would need to do a k-averaged quantity. Or would $S^(1/2)$ be the same in the supercell picture?

This was why it was never added, since I agree the Lowdin is quite easy, perhaps it should just be added to sisl.physics.electron.