openfermion.hamiltonians.bose_hubbard

Return symbolic representation of a Bose-Hubbard Hamiltonian.

Used in the notebooks

Used in the tutorials

In this model, bosons move around on a lattice, and the energy of the model depends on where the bosons are.

The lattice is described by a 2D grid, with dimensions x_dimension x y_dimension. It is also possible to specify if the grid has periodic boundary conditions or not.

The Hamiltonian for the Bose-Hubbard model has the form

$$ H = - t \sum_{\langle i, j \rangle} (b_i^\dagger b_j + b_j^\dagger b_i)

 + V \sum_{\langle i, j \rangle} b_i^\dagger b_i b_j^\dagger b_j
 + \frac{U}{2} \sum_i b_i^\dagger b_i (b_i^\dagger b_i - 1)
 - \mu \sum_i b_i^\dagger b_i.

$$

where

- The indices \\(\langle i, j \rangle\\) run over pairs
  \\(i\\) and \\(j\\) of nodes that are connected to each other
  in the grid
- \\(t\\) is the tunneling amplitude
- \\(U\\) is the on-site interaction potential
- \\(\mu\\) is the chemical potential
- \\(V\\) is the dipole or nearest-neighbour interaction potential

x_dimension int

The width of the grid.

y_dimension int

The height of the grid.

tunneling float

The tunneling amplitude \(t\).

interaction float

The attractive local interaction strength \(U\).

chemical_potential float, optional

The chemical potential \(\mu\) at each site. Default value is 0.

periodic bool, optional

If True, add periodic boundary conditions. Default is True.

dipole float

The attractive dipole interaction strength \(V\).

bose_hubbard_model An instance of the BosonOperator class.