![]() |
Return symbolic representation of a Fermi-Hubbard Hamiltonian.
openfermion.hamiltonians.fermi_hubbard(
x_dimension, y_dimension, tunneling, coulomb, chemical_potential=0.0,
magnetic_field=0.0, periodic=True, spinless=False, particle_hole_symmetry=False
)
Used in the notebooks
Used in the tutorials |
---|
The idea of this model is that some fermions move around on a grid and the
energy of the model depends on where the fermions are.
The Hamiltonians of this model live on a grid of dimensions
x_dimension
x y_dimension
.
The grid can have periodic boundary conditions or not.
In the standard Fermi-Hubbard model (which we call the "spinful" model),
there is room for an "up" fermion and a "down" fermion at each site on the
grid. In this model, there are a total of 2N
spin-orbitals,
where N = x_dimension * y_dimension
is the number of sites.
In the spinless model, there is only one spin-orbital per site
for a total of N
.
The Hamiltonian for the spinful model has the form
.. math::
\begin{align}
H = &- t \sum_{\langle i,j \rangle} \sum_{\sigma}
(a^\dagger_{i, \sigma} a_{j, \sigma} +
a^\dagger_{j, \sigma} a_{i, \sigma})
+ U \sum_{i} a^\dagger_{i, \uparrow} a_{i, \uparrow}
a^\dagger_{i, \downarrow} a_{i, \downarrow}
\\
&- \mu \sum_i \sum_{\sigma} a^\dagger_{i, \sigma} a_{i, \sigma}
- h \sum_i (a^\dagger_{i, \uparrow} a_{i, \uparrow} -
a^\dagger_{i, \downarrow} a_{i, \downarrow})
\end{align}
where
- The indices :math:`\langle i, j \rangle` run over pairs
:math:`i` and :math:`j` of sites that are connected to each other
in the grid
- :math:`\sigma \in \{\uparrow, \downarrow\}` is the spin
- :math:`t` is the tunneling amplitude
- :math:`U` is the Coulomb potential
- :math:`\mu` is the chemical potential
- :math:`h` is the magnetic field
One can also construct the Hamiltonian for the spinless model, which has the form
.. math::
H = - t \sum_{\langle i, j \rangle} (a^\dagger_i a_j + a^\dagger_j a_i)
+ U \sum_{\langle i, j \rangle} a^\dagger_i a_i a^\dagger_j a_j
- \mu \sum_i a_i^\dagger a_i.
Args | |
---|---|
x_dimension (int): The width of the grid.
y_dimension (int): The height of the grid.
tunneling (float): The tunneling amplitude :math:t .
coulomb (float): The attractive local interaction strength :math:U .
chemical_potential (float, optional): The chemical potential
:math:\mu at each site. Default value is 0.
magnetic_field (float, optional): The magnetic field :math:h
at each site. Default value is 0. Ignored for the spinless case.
periodic (bool, optional): If True, add periodic boundary conditions.
Default is True.
spinless (bool, optional): If True, return a spinless Fermi-Hubbard
model. Default is False.
particle_hole_symmetry (bool, optional): If False, the repulsion
term corresponds to:
.. math:: U \sum_{k=1}^{N-1} a_k^\dagger ak a{k+1}^\dagger a_{k+1} If True, the repulsion term is replaced by: .. math:: U \sum_{k=1}^{N-1} (a_k^\dagger ak - \frac12) (a{k+1}^\dagger a_{k+1} - \frac12) which is unchanged under a particle-hole transformation. Default is False |
Returns | |
---|---|
hubbard_model
|
An instance of the FermionOperator class. |