`MeanFi`

#

## What is `MeanFi`

?#

`MeanFi`

is a Python package that performs self-consistent Hartree-Fock calculations on tight-binding models.
It aims to find the groundstate of a Hamiltonian with density-density interactions

and computes the mean-field correction \(\hat{V}^{\text{MF}}\) which approximates the interaction term:

For more details, refer to the theory overview and algorithm description.

## How to use `MeanFi`

?#

The calculation of a mean-field Hamiltonian is a simple 3-step process:

**Define**To specify the interacting problem, use a

`Model`

object which collects:Non-interacting Hamiltonian as a tight-binding dictionary.

Interaction Hamiltonian as a tight-binding dictionary.

Particle filling number in the unit cell.

**Guess**Construct a starting guess for the mean-field correction.

**Solve**Solve for the mean-field correction using the

`solver`

function and add it to the non-interacting part to obtain the total mean-field Hamiltonian.

```
import meanfi
#Define
h_0 = {(0,) : onsite, (1,) : hopping, (-1,) : hopping.T.conj()}
h_int = {(0,) : onsite_interaction}
model = meanfi.Model(h_0, h_int, filling=2)
#Guess
guess = meanfi.guess_tb(guess_hopping_keys, ndof)
#Solve
mf_correction = meanfi.solver(model, guess)
h_mf = meanfi.add_tb(h_0, mf_correction)
```

For more details and examples on how to use the package, we refer to the tutorials.

## Why `MeanFi`

?#

Here is why you should use `MeanFi`

:

Simple

The workflow is straightforward. Interface with

`Kwant`

allows easy creation of complicated tight-binding systems and interactions.Extensible

`MeanFi`

’s code is structured to be easy to understand, modify and extend.Optimized numerical workflow

Introduces minimal overhead to the calculation of the mean-field Hamiltonian.

## What `MeanFi`

doesn’t do (yet)#

Here are some features that are not yet implemented but are planned for future releases:

**Superconducting order parameters**. Mean-field Hamiltonians do not include pairing terms.**General interactions**. We allow only density-density interactions (e.g. Coulomb) which can be described by a rank two tensor.**Temperature effects**. Density matrix calculations are done at zero temperature.

## Installation#

```
pip install meanfi
```

## Citing `MeanFi`

#

If you have used `MeanFi`

for work that has led to a scientific publication, please cite us as:

```
@misc{meanfi,
author = {Vilkelis, Kostas and Zijderveld, R. Johanna and Akhmerov, Anton R. and Manesco, Antonio L.R.},
doi = {10.5281/zenodo.11149850},
month = {5},
title = {MeanFi},
year = {2024}
}
```