![]() |
Return symbolic representation of a Bose-Hubbard Hamiltonian.
openfermion.hamiltonians.bose_hubbard(
x_dimension, y_dimension, tunneling, interaction, chemical_potential=0.0,
dipole=0.0, periodic=True
)
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
.. math::
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 :math:`\langle i, j \rangle` run over pairs
:math:`i` and :math:`j` of nodes that are connected to each other
in the grid
- :math:`t` is the tunneling amplitude
- :math:`U` is the on-site interaction potential
- :math:`\mu` is the chemical potential
- :math:`V` is the dipole or nearest-neighbour interaction potential
Args | |
---|---|
x_dimension (int): The width of the grid.
y_dimension (int): The height of the grid.
tunneling (float): The tunneling amplitude :math:t .
interaction (float): The attractive local interaction
strength :math:U .
chemical_potential (float, optional): The chemical potential
:math:\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 :math:V .
|
Returns | |
---|---|
bose_hubbard_model
|
An instance of the BosonOperator class. |