triqs_dft_tools.util.compute_DC_from_density

triqs_dft_tools.util.compute_DC_from_density(N_tot, U, J, N_spin=None, n_orbitals=5, method='sFLL')[source]

Computes the double counting correction using various methods. For FLL and AMF DC the notations and equations from doi.org/10.1038/s41598-018-27731-4 are used, whereas for the Held DC the definitions from doi.org/10.1080/00018730701619647 are used.

Parameters:
N_totfloat

Total density of the impurity

N_spinfloat , default = None

Spin density, defaults to N_tot*0.5 if not specified

Ufloat

U value

Jfloat

J value

n_orbitalsint, default = 5

Total number of orbitals

methodstring, default = ‘cFLL’

possibilities: - cFLL: DC potential from Ryee for spin unpolarized DFT: (DOI: 10.1038/s41598-018-27731-4) - sFLL: same as above for spin polarized DFT - cAMF: around mean field - sAMF: spin polarized around mean field - cHeld: unpolarized Held’s formula as reported in (DOI: 10.1103/PhysRevResearch.2.033088) - sHeld: NOT IMPLEMENTED

Returns:
List of floats:
  • DC_val: double counting potential

  • E_val: double counting energy

todo:
  • See whether to move this to TRIQS directly instead of dft_tools

  • allow as input full density matrix to allow orbital dependent DC